Назад | Перейти на главную страницу

Запустите openvpn внутри докера и используйте его в качестве шлюза для Интернета для других сетевых устройств.

Я пытаюсь запустить туннель для всего моего сетевого трафика в моей локальной сети через клиент OpenVPN, работающий внутри контейнера докеров.

Мой маршрутизатор и шлюз по умолчанию работают на 10.10.10.1

У меня OpenVPN работает в контейнере докеров с собственным IP-адресом, и все порты открыты 10.10.10.25.

OpenVPN подключается к моему провайдеру VPN - и если запустить traceroute из работающего контейнера докеров, трафик правильно маршрутизируется через мою VPN - curl также работает, правильно маршрутизируя трафик.

Однако, если я установлю шлюз по умолчанию на любых устройствах LAN на 10.10.10.25, я не смогу подключиться к Интернету.

Маршруты в Docker-контейнере OpenVPN:

0.0.0.0/1 via 10.8.8.1 dev tun0
default via 10.10.10.1 dev eth0
10.8.8.0/24 dev tun0  proto kernel  scope link  src 10.8.8.46
10.10.10.0/24 dev eth0  proto kernel  scope link  src 10.10.10.25
128.0.0.0/1 via 10.8.8.1 dev tun0
172.83.40.68 via 10.10.10.1 dev eth0

Запуск ifconfig в контейнере OpenVPN дает:

eth0      Link encap:Ethernet  HWaddr 02:42:0A:0A:0A:19
          inet addr:10.10.10.25  Bcast:10.10.10.255  Mask:255.255.255.0
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:2377 errors:0 dropped:0 overruns:0 frame:0
          TX packets:1984 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:370083 (361.4 KiB)  TX bytes:523356 (511.0 KiB)

lo        Link encap:Local Loopback
          inet addr:127.0.0.1  Mask:255.0.0.0
          UP LOOPBACK RUNNING  MTU:65536  Metric:1
          RX packets:74 errors:0 dropped:0 overruns:0 frame:0
          TX packets:74 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:5769 (5.6 KiB)  TX bytes:5769 (5.6 KiB)

tun0      Link encap:UNSPEC  HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00
          inet addr:10.8.8.46  P-t-P:10.8.8.46  Mask:255.255.255.0
          UP POINTOPOINT RUNNING NOARP MULTICAST  MTU:1500  Metric:1
          RX packets:27 errors:0 dropped:0 overruns:0 frame:0
          TX packets:1606 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:100
          RX bytes:2274 (2.2 KiB)  TX bytes:241166 (235.5 KiB)

Пересылка ipv4 включена, и все политики брандмауэра по умолчанию ПРИНЯТ

Я также пробовал использовать NAT для контейнера докеров с помощью команды:

iptables -t nat -A POSTROUTING -o tun0 -j MASQUERADE

Но я все еще не могу получить связь

Некоторые примечания: