Итак, у меня есть 3 OpenVPN Серверы доступа, и скачал конфиг для всех 3-х. Затем на моей малине я запустил 3 экземпляра опенвпн
(даже с другой подсетью, настроенной на серверах доступа) с каждым из файлов конфигурации.
Моя цель - иметь возможность направлять входящий трафик на отдельные устройства, например. IP_of_Access_Server_1
приводит к Клиент_1
в моей сети, IP_of_Access_Server_2
приводит к Клиент_2
и т.д. Поэтому у меня есть отдельные экземпляры. В остальном у меня есть 3 записи в моем iptables:
sudo iptables -t nat -A PREROUTING -p tcp -d 172.27.232.0/20 --dport 44000 -j DNAT --назначение 192.168.4.3:44000
sudo iptables -t nat -A PREROUTING -p tcp -d 172.27.248.0/20 --dport 44000 -j DNAT --назначение 192.168.4.4:44000
sudo iptables -t nat -A PREROUTING -p tcp -d 172.27.200.0/20 --dport 44000 -j DNAT --назначение 192.168.4.16:44000
Кажется, что экземпляры запускаются нормально, но действительно активен только 1 экземпляр, поэтому, например. Я могу открыть службу только на Client_1, у остальных истечет время ожидания. И это всегда последний экземпляр, который я запускаю, который работает.
Итак, я предполагаю, что записи маршрута перезаписываются командами LZ0, которые сервер доступа нажимает при запуске, что заставляет другие 2 больше не работать.
Вот вывод маршрута, когда только Устройство_2
над Сервер доступа 2
доступен:
Таблица IP-маршрутизации ядра
Шлюз назначения Флаги Генмаски Метрика Ссылка Использование Iface
0.0.0.0 172.27.248.1 128.0.0.0 UG 0 0 0 tun1
по умолчанию fritz.box 0.0.0.0 UG 202 0 0 eth0
46.101.139.3 fritz.box 255.255.255.255 UGH 0 0 0 eth0
128.0.0.0 172.27.248.1 128.0.0.0 UG 0 0 0 tun1
159.65.121.31 fritz.box 255.255.255.255 UGH 0 0 0 eth0
159.89.109.12 fritz.box 255.255.255.255 UGH 0 0 0 eth0
172.27.200.0 0.0.0.0 255.255.248.0 U 0 0 0 tun2
172.27.232.0 0.0.0.0 255.255.248.0 U 0 0 0 tun0
172.27.248.0 0.0.0.0 255.255.248.0 U 0 0 0 tun1
192.168.1.0 0.0.0.0 255.255.255.0 U 202 0 0 eth0
192.168.4.0 0.0.0.0 255.255.255.0 U 303 0 0 wlan0
Для уточнения (изменено на случайные IP-адреса для анонимности):
46.101.139.3 — Сервер доступа 1
159.65.121.31 — сервер доступа 2
159.89.109.12 — сервер доступа 3
Теперь, когда я после этого запускаю службу для tun0, это выглядит так, и Устройство_1
является единственным доступным (более Сервер доступа 1
), остальные тайм-аут:
Таблица IP-маршрутизации ядра
Шлюз назначения Флаги Генмаски Метрика Ссылка Использование Iface
0.0.0.0 172.27.232.1 128.0.0.0 UG 0 0 0 tun0
по умолчанию fritz.box 0.0.0.0 UG 202 0 0 eth0
46.101.139.3 fritz.box 255.255.255.255 UGH 0 0 0 eth0
128.0.0.0 172.27.232.1 128.0.0.0 UG 0 0 0 tun0
159.65.121.31 fritz.box 255.255.255.255 UGH 0 0 0 eth0
159.89.109.12 fritz.box 255.255.255.255 UGH 0 0 0 eth0
172.27.200.0 0.0.0.0 255.255.248.0 U 0 0 0 tun2
172.27.232.0 0.0.0.0 255.255.248.0 U 0 0 0 tun0
172.27.248.0 0.0.0.0 255.255.248.0 U 0 0 0 tun1
192.168.1.0 0.0.0.0 255.255.255.0 U 202 0 0 eth0
192.168.4.0 0.0.0.0 255.255.255.0 U 303 0 0 wlan0
Для получения дополнительных разъяснений ifconfig
(укороченный) моих интерфейсов tun и wlan (клиенты имеют IP-адреса, видимые в записях iptables):
tun0: flags=4305<UP,POINTOPOINT,RUNNING,NOARP,MULTICAST> mtu 1500
инет 172.27.232.4 сетевая маска 255.255.248.0 пункт назначения 172.27.232.4
tun1: flags=4305<UP,POINTOPOINT,RUNNING,NOARP,MULTICAST> mtu 1500
инет 172.27.248.5 сетевая маска 255.255.248.0 пункт назначения 172.27.248.5
tun2: flags=4305<UP,POINTOPOINT,RUNNING,NOARP,MULTICAST> mtu 1500
инет 172.27.200.3 сетевая маска 255.255.248.0 пункт назначения 172.27.200.3
wlan0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
инет 192.168.4.1 сетевая маска 255.255.255.0 широковещательная рассылка 192.168.4.255
К сожалению, мои сетевые навыки недостаточно хороши, чтобы понять это (я пытался добавить некоторые маршруты вручную, пытался возиться с iptables, но ничего не вышло) - и я был бы очень признателен, если бы кто-нибудь мог помочь мне с этим.