Разбор числовых флагов ifconfig - PullRequest
2 голосов
/ 25 августа 2009

Команда ifconfig выводит свои flags в текстовом и числовом формате. Хотя я могу найти ссылку здесь или там на числовые флаги, я не могу найти никаких указаний о том, как интерпретировать (маскировать) число.

qfe2: flags=1100843<UP,BROADCAST,RUNNING,MULTICAST,ROUTER,IPv4> mtu
  1500 index 4
  usesrc vni0
  inet 1.2.3.4 netmask ffffff00 broadcast 1.2.3.255
  ether 0:3:ba:17:4b:e1
vni0: flags=20011100c1<UP,RUNNING,NOARP,NOXMIT,ROUTER,IPv4,VIRTUAL>
  mtu 0 index 5
  srcof qfe2
  inet 3.4.5.6 netmask ffffffff

В приведенном выше выводе обратите внимание на следующее:

flags=1100843<UP,BROADCAST,RUNNING,MULTICAST,ROUTER,IPv4>

Числовое значение "1100843" отображается на флаги "UP,BROADCAST,RUNNING,MULTICAST,ROUTER,IPv4".

Есть ли где-то ссылка, которую я просто не вижу, которая описывает, как маскировать каждый флаг (UP,BROADCAST, и т. Д.) Из закодированного значения "flags=NNNNNNNN"?

РЕДАКТИРОВАТЬ : уточнение, какой именно флаг меня замаскирует.

1 Ответ

3 голосов
/ 25 августа 2009

Значения флага определены в заголовочном файле /usr/include/net/if.h (в Solaris). Показанное значение является побитовым ИЛИ флагов, которые установлены для этого интерфейса.

...