Перенаправление всего трафика через мой Raspberry PI [закрыто]

У меня есть Raspberry PI 4B, который выполняет DNS (PiHole+Bind9), DHCP, Wireguard, ... RPi находится на 192.168.1.2, и он раздает 192.168.1.1 (маршрутизатор) в качестве шлюза по умолчанию для интернет-трафика.

Мой Chromecast (и, возможно, другие устройства) используют жестко закодированные DNS-серверы, поэтому я хочу перенаправить этот трафик обратно на мой собственный DNS. Мой маршрутизатор не способен перехватывать DNS-трафик, поэтому единственный вариант - направить весь трафик на Raspberry Pi и использовать iptables для перехвата DNS-запросов. Я хочу указать 192.168.1.2 в качестве шлюза по умолчанию с DHCP-сервера и использовать iptables для перенаправления всего трафика (кроме DNS) на маршрутизатор. Я знаю, что это не на 100% безопасно, потому что пользователи могут вручную установить шлюз на 192.168.1.1, чтобы предотвратить это. Я не думаю, что устройства будут достаточно умны, чтобы сделать это.

У меня есть несколько вопросов:

  1. Является ли Raspberry Pi 4B достаточно быстрым для работы с восходящим каналом 1 Гбит/с? У меня есть оптоволоконное соединение 1 Гбит/с, и я могу достичь 950 Мбит/с при моей текущей настройке.
  2. Как настроить мой RPI на пересылку всего входящего трафика (не предназначенного для 192.168.1.2) на 192.168.1.1?
  3. Как я могу перехватывать DNS запросы (порт 53 на TCP/UDP и направлять их на мой DNS на 192.168.1.2).
-1
задан 16 January 2021 в 20:59
1 ответ
  1. Он должен быть работоспособным; обычно домашние маршрутизаторы, которые также являются программными маршрутизаторами с небольшим HW-ускорением, построены на ва-а-амного менее мощных процессорах, чем RasPi 4B. Но это также зависит от многих деталей конфигурации. Просто попробуйте и проверьте это.

  2. Просто проложите маршрут по умолчанию и включите пересылку IPv4 (sysctl.conf, net.ipv4.ip_forward = 1) на RPi, вот и все. Затем вы сможете указать его в качестве шлюза по умолчанию на других системах, и он будет работать. Но я не знаю конфигурации сети по умолчанию на RPi, возможно, вам также потребуется отключить перенаправления (в sysctl.conf, где вы включили перенаправление, установите net.ipv4.conf.all.send_redirects = 0 и net.ipv4.conf.default.send_redirects = 0). Это может понадобиться для того, чтобы RPi не выдавал хостам уведомления: "Я переслал этот пакет для вас, но вы можете сделать это сами, используйте .1.1 напрямую".

  3. Ответ на этот вопрос был дан на другом сайте: https://askubuntu.com/questions/592042/iptables-redirect-dns-queries. Это вполне применимо к вашему случаю.

1
ответ дан 7 May 2021 в 21:05

Теги

Похожие вопросы