У моего роутера есть ip 192.168.0.1.
Как я могу регистрировать весь трафик, который он получает через http и https(порт 443)?
Я думаю, что использование tcpdump должно сработать, но я не уверен, как его запустить
1 ответ
Во-первых, вам нужно получить аппаратный адрес Ethernet маршрутизатора (поскольку трафик, передаваемый через него, можно распознать, отправив на этот адрес канального уровня):
$ arp -n 192.168.0.1
? (192.168.0.1) at 0:12:34:56:78:9a on en0 ifscope [ethernet]
Затем используйте этот адрес, чтобы сообщить tcpdump, что искать:
sudo tcpdump 'ether host 0:12:34:56:78:9a and not host 192.168.0.1 and (port http or https)'
Обратите внимание, что кавычки нужны для того, чтобы оболочка не сработала в скобках. Кроме того, если вы пропустите часть, and not host 192.168.0.1
, она будет включать в себя трафик к маршрутизатору (т. Е. Он покажет, что вы открываете веб-интерфейс конфигурации маршрутизатора), а также через него. Наконец, если у вас есть имя DNS или /etc /hosts, определенное для 192.168.0.1, вы можете использовать примитив шлюза tcpdump (sudo tcpdump 'gateway somename and (port http or https)'
), но это не работает с IP-адреса.
Изменить: это будет сообщать только о трафике, проходящем через компьютер, на котором он запущен - обычно только трафик на / с этого одного компьютера. Если вы хотите видеть трафик через маршрутизатор со всех хостов локальной сети, вам нужно настроить какой-то механизм, чтобы все эти пакеты отправлялись на ваш компьютер захвата. Документация WireShark содержит хорошее обсуждение вариантов для этого.