Какие чипсеты поддерживают "promiscuous mode" по проводу?

koekaker

New member
29.08.2024
3
0
Пишут, что почти все современные сетевые карты поддерживают "promiscuous mode". Попробовал с несколькими. В Wireshark ставлю галку "смешанный режим", и ничего, ловит только свои и широковещательные пакеты. Или это работает только по воздуху?
 
Вы не наблюдаете «волшебного» режима, потому что promiscuous mode — это функция сетевой карты принимать все кадры, но в коммутируемой сети в ваш порт просто не приходит чужой трафик. На проводной инфраструктуре Ethernet доминируют коммутаторы (switches), которые пересылают кадры точечно, исходя из MAC-таблицы, поэтому даже если карта способна читать любой кадр, коммутатор его к вам не отправит. Исключения — широковещательные и мультикаст-кадры, которые вы и видите.

Практически все современные NIC умеют promiscuous mode. В Linux он включается, например, командой ip link set eth0 promisc on. Wireshark делает то же самое, когда ставите галку "смешанный режим", но для успеха нужно две вещи:
1) драйвер и модуль поддерживают этот режим (обычно так);
2) вы подключены к среде, где весь трафик доступен вашему порту. На домашнем роутере или свитче этого нет.

Если вашей задачей является анализ всего трафика сегмента, существуют варианты:
  • Используйте hub или управляемый свитч с функцией port mirroring / SPAN. В последнем случае копируете трафик нужного порта на ваш анализатор. Это типовой способ мониторинга в оборудовании Cisco, Mikrotik, Zyxel.
  • Ethernet tap — прозрачный разветвитель, который вставляется между двумя узлами и пассивно копирует кадры. Он гарантирует захват, не влияя на линию.
  • ARP-спуфинг / MitM — активная атака, когда вы перенаправляете трафик через себя. Инструменты вроде Bettercap или Ettercap могут заставить устройства посылать пакеты через вас, после чего promiscuous mode имеет смысл. Это уже вмешательство, а не пассивный анализ.
  • Используйте виртуальные среды вроде GNS3 или EVE-NG, где вы можете подключить Wireshark к виртуальному hub или мониторному порту.
Что касается чипсетов: у проводных NIC это редко ограничивающий фактор. Даже Realtek RTL8168, Intel I217/I219, Broadcom в ноутбуках принимают promiscuous. Исключения — некоторые USB-адаптеры, где драйвер "режет" кадры или урезает длину пакета. Если планируете профессиональный анализ, рекомендую карты Intel PRO/1000 PT или i350 — они поддерживаются в Linux, умеют аппаратные фильтры, RSS и не теряют трафик при нагрузке.

Подводя итог: проблема не в карте или Linux, а в архитектуре вашей сети. На беспроводных сетях «мониторный режим» действительно позволяет видеть чужие кадры, потому что эфир общий; на проводе требуется либо зеркальный порт, либо активный MITM. Включите promiscuous на интерфейсе, поэкспериментируйте с подключением через unmanaged hub или настройте port mirroring — тогда увидите разницу.
 
Мы в соцсетях:

Взломай свой первый сервер и прокачай скилл — Начни игру на HackerLab