Я устанавливаю сервер OpenVPN (VPN ip = 10.8.0.1) на сервере с публичным ip. И у меня есть рабочая станция (Ubuntu) в моей лаборатории со школьным IP, которая может получить доступ к интранет-ресурсам школы.
Я хочу, чтобы мой Android-телефон и Windows ПК могли получить доступ к этим ресурсам. Так что я:
Конфигурация сервера OpenVPN:
Dev Tun
подсеть топологии
сервер 10.8.0.0 255.255.255.0
клиент-config-dir /etc /openvpn /server /ccd
нажать "маршрут 10.8.0.0 255.255.255.0"
нажать «маршрут-шлюз 10.8.0.3»Подключите мою рабочую станцию к серверу и получите ip 10.8.0.3, его конфигурацию ccd (эквивалентную конфигурации клиента):
ifconfig-push 10.8.0.3 255.255.255.0
В рабочей станции использовали iptables и добавили несколько пунктов:
$ sudo iptables -t filter -S
-P ВВОД ПРИНЯТЬ
-P ВПЕРЕД ПРИНЯТЬ
-P ВЫХОД ПРИНЯТЬ
$ sudo iptables -t nat -S
-P ПРЕДОСТАВЛЕНИЕ ПРИНЯТИЯ
-P ВВОД ПРИНЯТЬ
-P ВЫХОД ПРИНЯТЬ
-P ПОСТРОИТЕЛЬНЫЙ ПРИНЯТ
-A POSTROUTING -s 10.8.0.0/24 -o wlx0810752b55c9 -j MASQUERADEКонфигурация ccd моего компьютера дома:
ifconfig-push 10.8.0.5 255.255.255.0
нажать «маршрут-шлюз 10.8.0.3»
нажмите "redirect-gateway def1 bypass-dhcp"
нажмите "dhcp-option DNS 8.8.8.8"Результат1 ПК не может подключиться к Интернету. Таблица маршрутов этого компьютера:
маршрут печати -4
0.0.0.0 0.0.0.0 192.168.1.254 192.168.1.21 35
0.0.0.0 128.0.0.0 10.8.0.3 10.8.0.5 291
128.0.0.0 128.0.0.0 10.8.0.3 10.8.0.5 291
последние два пункта - это то, что добавлено «redirect-gateway def1», без удаления исходного шлюза по умолчанию. Мне интересно, почему def1 работает для перенаправления трафика? Поскольку оригинальный шлюз по умолчанию все еще существует и имеет лучшую метрику, таким образом, трафик не будет проходить через VPN.
Результат 2 Мой Android-телефон тоже не может.
$ busybox ip route показать таблицу все
по умолчанию через 10.183.93.203 dev ccmni0 таблица 1002
по умолчанию dev tun0 src 10.8.0.4
10.8.0.0/24 dev tun0 table 1015
10.8.0.0/24 dev tun0 src 10.8.0.4 ...
Я убедился, что рабочая станция не получает трафик:
$ sudo tcpdump -i tun0
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on tun0, link-type RAW (Raw IP), capture size 262144 bytes
^C
0 packets captured
0 packets received by filter
0 packets dropped by kernel
$
Я прошел много тем об этом без рабочего решения. Таким образом, любой может помочь мне, любое предложение приветствуется!