I use a RaspberryPi as a DHCP and DNS server for my home network as well as a wireguard server to gain remote access to my network.
My setup is as follows: 192.168.1.4 - ISP Router 192.168.1.1 - Raspi 4 running Raspbian
На Raspberry Pi я запускаю: pi-hole в контейнере Docker Wireguard DNSmasq HostAPd OpenVPN-клиент
Интерфейсы на Raspi следующие: br0 имеет 192.168.1.1 и мосты eth0 и wlan0 для HostAPd, DNSmasq и сервера Wireguard. tun0 создается клиентом OpenVPN.
Я хочу добиться того, чтобы Raspi направлял интернет-трафик из моей домашней сети через клиент OpenVPN, поддерживая при этом работу сервера Wireguard.
Пока мне удалось использовать OpenVPN только со скриптом изздесьдля запуска всего трафика через VPN-туннель. Однако это приводит к тому, что сервер Wireguard больше не отвечает ни на какой трафик. Я предполагаю, что это происходит из-за того, что OpenVPN по умолчанию меняет маршрут по умолчанию для всего интернет-трафика.
Другой моей попыткой было добавить опцию «route-nopull» в конфигурацию OpenVPN и включить маскировку с помощью следующих команд:
iptables -t nat -A POSTROUTING -o tun0 -j MASQUERADE
iptables -A FORWARD -i tun0 -o br0 -m state --state RELATED,ESTABLISHED -j ACCEPT
iptables -A FORWARD -i br0 -o tun0 -j ACCEPT
Однако при такой настройке я не смог получить никакого трафика по соединению.
Итак, в конечном итоге я хочу получить конфигурацию, которая позволяет:
Весь исходящий трафик, включая трафик от RaspberryPi через туннель OpenVPN, при этом входящий трафик разрешается через обычный шлюз.
или
Только трафик из частной сети через OpenVPN, без изменения маршрутов для RaspberryPi.
Спасибо за любую помощь!
Редактировать: добавить вывод
ip route show table main:
default via 172.21.2.1 dev tun0
default via 192.168.1.4 dev br0 src 192.168.1.1 metric 204
10.10.10.0/24 dev wg0 proto kernel scope link src 10.10.10.1
146.255.57.19 via 192.168.1.4 dev br0
169.254.0.0/16 dev vethcf887f2 scope link src 169.254.226.72 metric 210
172.17.0.0/16 dev docker0 proto kernel scope link src 172.17.0.1 linkdown
172.18.0.0/16 dev br-743f216227c9 proto kernel scope link src 172.18.0.1
172.21.2.0/24 dev tun0 proto kernel scope link src 172.21.2.43
192.168.1.0/24 dev br0 proto dhcp scope link src 192.168.1.1 metric 204
Текущее состояние таково, что весь сетевой трафик уходит через VPN-соединение, что нормально. Теперь я просто хочу, чтобы весь входящий трафик шел на RaspberryPi напрямую.