1

Я пытался увидеть пакеты Wi-Fi (802.11) через Wireshark.

Вот информация о моем беспроводном интерфейсе:

$ ifconfig
wlan1    Link encap:Ethernet HWaddr c0:f8:da:21:ce:68
         # and so on blahblah

$ iwconfig
wlan1    IEEE 802.11abgn  ESSID:"myAccessPoint"
         Mode:Managed  Frequency:2.432 GHz  Access Point: 00:26:66:C4:80:FC
         #and so on blahblah

Когда я выполняю Wireshark и меняю режим wlan1 на "монитор", чтобы использовать «заголовок радиопленки 802.11 плюс», ifconfig и iwconfig показывают разные вещи:

$ ifconfig
wlan1    Link encap:UNSPEC HWaddr C0-F8-DA-21-CE-68-00-00-00-00-00-00-00-00-00-00
         # and so on blahblah

$ iwconfig
wlan1    IEEE 802.11abgn  Mode:Monitor  Frequency:2.432 GHz  Tx-Power=16 dBm
         # and so on blahblah

(То есть, к аппаратному адресу добавлено десять 00 октетов.  И, как ни странно, теперь он отображается заглавными буквами, а не строчными.)  Я ввел несколько нулевых фреймов данных с помощью aireplay-ng и захватил их с помощью Wireshark (EfmNetwo _... является точкой доступа):

Захват экрана Wireshark

Я совершенно уверен, что e0:99:71:57:9b:3a - это MAC-адрес беспроводного интерфейса на моей машине, так как содержимое пакетов, по-видимому, является тем, что я ввел.

Странно то, что я никогда не видел такого MAC-адреса в ifconfig и iwconfig . Я думаю, что генерируется что-то вроде виртуального интерфейса, и этот интерфейс имеет такой MAC-адрес.

Правильно ли то, что я сказал? Если да, есть ли другой способ увидеть этот MAC-адрес за пределами Wireshark?

Если то, что я сказал, неверно, может кто-нибудь объяснить такой странный MAC-адрес?

1 ответ1

0

И, как ни странно, теперь он отображается заглавными буквами, а не строчными.

Это совершенно не имеет значения. В своих приложениях люди могут выбрать отображение шестнадцатеричных цифр с заглавными или строчными буквами, а также использование двоеточия или тире в качестве разделителя между октетами; все зависит от личного вкуса разработчика или от соглашений, установленных для программного обеспечения. (Обратите внимание, что две команды Linux, ifconfig и iwconfig , имеют разные соглашения - ifconfig использует строчные буквы для MAC-адреса интерфейса, тогда как iwconfig использует заглавные буквы для MAC-адреса точки доступа.)

Когда я выполняю Wireshark и меняю режим wlan1 на "монитор", чтобы использовать «заголовок радиопленки 802.11 плюс», ifconfig и iwconfig показывают разные вещи:

Я бы посчитал это либо ошибкой в ядре Linux, либо в ifconfig . Либо ядро не сообщает о MAC-адресе как о 6-октетном MAC-адресе в стиле IEEE просто потому, что интерфейс находится в режиме мониторинга, что является совершенно глупым, либо оно сообщает о чем-то, что имеет смысл, но это вводит в заблуждение, если ifconfig считает, что это не MAC-адрес в стиле IEEE, а просто обрабатывает его как аппаратный адрес максимальной длины неизвестного типа.

Обратите внимание, что первые 6 октетов совпадают с тем, когда вы не находитесь в режиме монитора, и что еще 10 октетов дают в общей сложности 16 октетов, что является степенью 2 (общий выбор для максимальных размеров полей), поэтому ifconfig имеет значение вероятно, каким-то образом (будь то из-за ошибки в ядре Linux или ошибки ifconfig ) убедился, что адрес имеет длину 16 октетов и печатает 10 дополнительных октетов заполнения, удобно обнуленных.

Так что не волнуйтесь, будьте счастливы - в режиме монитора MAC-адрес адаптера по-прежнему составляет c0:f8:da:21:ce:68 или C0-F8-DA-21-CE-68 или другие программы могут представлять Это.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .