Я хочу захватить весь трафик на моем сервере Iperf, который я прослушиваю беспорядочно, даже если я не являюсь предполагаемым IP.
Я знаю, что вы можете сделать это с помощью многоадресных адресов, но я не хочу идти по этому пути: многоадресная рассылка по Wi-Fi приводит к потере пропускной способности
У меня текущая настройка: 3 хоста, каждый со своим Wi-Fi NIC в беспорядочном режиме. Я хочу знать, сколько пакетов UDP можно получить, просто беспорядочно слушая.
Например:
На хосте 1 работает клиент iperf: iperf -c 192.168.4.197 -B 192.168.4.142 -b 100M -u
На хосте 2 работает сервер iperf: iperf -s -u -B 192.168.4.197
На хосте 3 также работает сервер iperf: iperf -s -u -B 0.0.0.0
Адреса привязки - это локальные адреса интерфейса wlan0.
Я понимаю, почему iperf на хосте 3 не считывает случайно прослушанные пакеты как свои пакеты: IP в пакете не является адресом локального интерфейса wlan0.
Однако существует ли способ iperf на хосте 3 получать эти пакеты? Либо с помощью iptables / ebtables, либо может быть переписан tcpdump?
Если iptables может перенаправить случайно прослушанные пакеты на любой локальный IP-адрес, я могу перехватить их с помощью iperf.
Я знаю, что могу получать пакеты на хосте 3 - если я сделаю tcpdump, я могу увидеть пакеты между хостом 1 и хостом 2.
Я знаю, что пакеты видны только в открытой (незашифрованной) сети Wi-Fi. Я так настроил. Эта сеть предназначена только для тестирования, поэтому безопасность пока не имеет значения.
Любые идеи? Пожалуйста, дайте мне знать, если вам понадобится дополнительная информация.
РЕДАКТИРОВАТЬ: изменил адрес привязки хоста 3 на 0.0.0.0. Однако это не решило мою проблему.
Вы связываете свой iperf
на Host3 на IP 192.168.4.121
, поэтому он будет получать только пакеты, отправленные на этот IP. Вы можете попробовать привязать его по IP 0.0.0.0
, переключите сетевой интерфейс в неразборчивый режим и проверьте.