The three bits that are set are IFF_MULTICAST, IFF_BROADCAST and IFF_UP. This looks like an interface that is UP
E isso corresponde perfeitamente à saída flags :
3: docker0: <NO-CARRIER,BROADCAST,MULTICAST,UP> ↑ ↑ ↑
Why does ip link report state DOWN?
Esse é um tipo diferente de estado.
-
O sinalizador IFF_UP (mostrado acima como "< UP >") descreve o estado administrativo , que é o botão manual que você pode definir via
ip link set eth0 up
. -
Por outro lado, o texto "estado […]" descreve o estado operacional , que indica se a interface é capaz de funcionar.
O estado operacional é aproximadamente o mesmo que a presença de "portadora" - por exemplo, Link Ethernet totalmente estabelecido ou ponto de acesso Wi-Fi associado a. Uma ponte é relatada como estando ativa (se tiver uma portadora) se pelo menos uma de suas portas membro estiver ativa. Por esse motivo, talvez você queira adicionar uma interface dummy0
como membro de ponte.
O estado operacional corresponde aproximadamente aos sinalizadores IFF_LOWER_UP
(mostrados como "< LOWER_UP >" na área de sinalizadores) e IFF_RUNNING
(sua ausência mostrada como pseudo-sinalizador "< NO-CARRIER >" no seu exemplo ). ( código-fonte )
No entanto, as ferramentas iproute obtêm informações de interface via Netlink, e a seção state …
é impressa com base no atributo netlink IFLA_OPERSTATE . ( código-fonte )
Este atributo também está disponível via sysfs em …/operstate
. A documentação do Linux tem uma explicação mais detalhada desses sinalizadores e atributos em operstates.txt .