Я устанавливаю сервер 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
$

Я прошел много тем об этом без рабочего решения. Таким образом, любой может помочь мне, любое предложение приветствуется!

1 ответ1

-1

В каталоге ccd на сервере файл рабочей станции должен содержать iroute. Попробуйте, пожалуйста, я пытаюсь сделать то же самое без использования сервера доступа и использования клиента Linux в качестве шлюза, как показано здесь https://www.youtube.com/ смотреть?v = b7qr0laM8kA

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .