Устанавливаются три бита: IFF_MULTICAST, IFF_BROADCAST и IFF_UP. Это похоже на интерфейс, который UP
И это прекрасно соответствует фактическому выводу флагов :
3: docker0: <НЕТ НОСИТЕЛЬ, ВЕЩАТЕЛЬ, МУЛЬТИКАСТ, ВВЕРХ > ↑ ↑ ↑
Почему IP-ссылка сообщает о состоянии ВНИЗ?
Это другой тип государства.
Флаг IFF_UP (показанный выше как «<UP>») описывает административное состояние, которое представляет собой ручную ручку, которую можно установить с помощью
ip link set eth0 up
.С другой стороны, текст «состояние […]» описывает рабочее состояние, которое указывает, способен ли интерфейс работать.
Рабочее состояние примерно совпадает с присутствием «оператора» - например, канал Ethernet полностью установлен или точка доступа Wi-Fi связана с. Сообщается, что мост работает (имеет оператора связи), если хотя бы один из его портов-участников работает. По этой причине вы можете добавить dummy0
интерфейс в качестве члена моста.
Рабочее состояние приблизительно соответствует флагам IFF_LOWER_UP
(показанным как «<LOWER_UP>» в области флагов) и IFF_RUNNING
(его отсутствие показано как псевдофлажок «<NO-CARRIER>» в вашем примере). ( исходный код )
Однако инструменты iproute получают информацию об интерфейсе через Netlink, и этот state …
раздел печатается на основе атрибута netlink IFLA_OPERSTATE . ( исходный код )
Этот атрибут также доступен через sysfs …/operstate
. Документация Linux содержит более подробное объяснение этих флагов и атрибутов в operstates.txt .