Моя цель - иметь возможность перехватывать все пакеты в моей домашней сети. Каждый пакет сгенерирован на локальной машине или получен из Интернета. (Нет, я не пытаюсь шпионить за кем-либо. Это моя домашняя сеть, и я хочу собирать пакеты для моей работы по разработке программного обеспечения для мониторинга сети. Просто пытаюсь "съесть собачью еду", как говорится. И да, я понимаю ограничения производительности при принудительном использовании всего моего трафика в одном порту.)
Но я не могу понять, как / где я могу получить доступ ко всем пакетам. У меня есть 8-портовый коммутатор с зеркалированием портов. Я пробовал это:
CableModem = Switch = WifiRouter = { Machines-On-My-Network }
||
MonitoringMachine
Где Machines-On-My-Network
в основном только для Wi-Fi, но пара подключена напрямую к WifiRouter. Этот конфиг работает отлично. Тем не менее, очевидно, что моя машина мониторинга видит только пакеты, которые идут от машины из моей внутренней сети в Интернет или наоборот (с адресами NAT); Я не получаю только внутренний трафик.
Я также попробовал этот конфиг:
CableModem = WiredRouter = Switch = WifiRouterInAccessPointMode = { Machines-On-My-Network }
||
MonitoringMachine
Это позволяет включить DHCP в "проводном маршрутизаторе" (на самом деле это более старый маршрутизатор Wi-Fi с отключенной радиосвязью) и отключить DHCP в маршрутизаторе Wi-Fi. Я говорю "InAccessPointMode" здесь, но моя конфигурация маршрутизатора не имеет фактического режима точки доступа - я просто отключил DHCP - это отличается? Но в любом случае конфигурация не сработала. Большинство моих внутренних машин могли получать адреса через DHCP, но пара машин с поддержкой Wi-Fi не получала предложения DHCP по причинам, которые я не мог определить (wireshark на машине мониторинга показывал, что предложения DHCP отправлялись между маршрутизаторами, но на конечном компьютере нет DHCP предложение показывалось на его порту Wi-Fi). Кроме того, аренды DHCP на других машинах не продлевались автоматически, как я ожидал, без видимой причины. Все это было ненадежно, и мой SO пожаловался на то, что сеть не работает, поэтому я вернулся.
Но даже если бы это работало более надежно, я думаю, что я все еще не видел бы пакетов между компьютерами с поддержкой Wi-Fi в моей локальной сети или между проводными портами на маршрутизаторе Wi-Fi. Так что я не знаю, действительно ли это улучшение по сравнению с первой конфигурацией. Я бы просто увидел внутренний-внешний трафик плюс DHCP и внутренний широковещательный трафик.
Мне пришло в голову, что можно было бы что-то сделать с OpenWRT или DD-WRT, чтобы зеркалировать все напрямую на проводной порт на маршрутизаторе Wi-Fi, но я все еще не совсем уверен, что смогу получить доступ ко всем пакеты (я не очень знаком с внутренней архитектурой Wi-Fi маршрутизаторов). Также у меня нет опыта работы с OpenWRT/DD-WRT, и я не установил их сейчас, но я бы хотел узнать, что если бы я мог достичь желаемого результата.
Что бы это ни стоило, у меня в настоящее время есть все сетевое оборудование TP-Link со стоковой прошивкой (кабельный модем TC-7610, TL-WDR3600 для "проводного" маршрутизатора, зеркальный коммутатор TL-SG108E и беспроводной маршрутизатор Archer C50).
Я даже был бы готов пойти купить другое оборудование, если это необходимо. Но я не могу найти маршрутизатор Wi-Fi, который утверждает, что поддерживает зеркалирование всего трафика.
Есть ли способ получить доступ ко всему моему локальному трафику?