У меня проблема с некоторым трафиком OpenVPN, не проходящим через VPN-туннель. Моя установка выглядит следующим образом:
Я использую адресное пространство 10.7.7.0/24 в моей домашней сети. На моем Edgerouter (10.7.7.1) я включил закрепление NAT, так что я также могу получить доступ к mydomain.com из локальной сети. У меня есть сервер OpenVPN (10.7.7.50), который работает довольно хорошо. Мой ноутбук получает IP (пространство 10.8.1.0/24), и трафик проходит через туннель. Я также вижу DNS-запросы на моем pihole, как и ожидалось. Теперь у меня есть только одна проблема: когда я пытаюсь получить доступ к mydomain.com извне (но подключен к VPN), трафик не проходит через туннель. Я знаю это, потому что не вижу DNS-запроса, а mydomain.com доступен только из локальной сети, поэтому страница не загружается. Я также сравнил traceroute google.com
и traceroute mydomain.com
, и с google.com я вижу, что трафик проходит через 10.8.1.1, а затем на мой маршрутизатор 10.7.7.1, в то время как для mydomain.com он проходит через 10.0.0.1, что ворота внешнего wlan, с которым я связан.
Когда я пытаюсь получить доступ к mydomain.com с моего телефона (подключенного к VPN), проблем не возникает. Сайт загружается и этот трафик проходит через VPN. Я ожидаю, что маршрутизация на моем ноутбуке как-то не так, но я не знаю много о сети, чтобы это исправить ... Некоторая информация:
Вывод ip route
на ноутбук (не работает правильно):
default via 10.8.1.5 dev tun0 proto static metric 50
default via 10.0.0.1 dev wlo1 proto static metric 600
ip route
на телефоне Android (работает правильно):
10.0.0.0/24 dev wlan0 proto kernel scope link src 10.0.0.35
10.8.1.8/30 dev tun0 proto kernel scope link src 10.8.1.10
Конфигурация сервера OpenVPN:
port 1194
proto tcp
dev tun
....
push "dhcp-option DNS 10.7.7.4" <- pihole
push "dhcp-option DNS 10.7.7.1"
push "redirect-gateway def1 bypass-dhcp"
...