如何使用桥接网络模式从 docker 容器连接到 ikev2 vpn?

如何使用桥接网络模式从 docker 容器连接到 ikev2 vpn?

我正在尝试通过 ikev2(Ubuntu 主机)从 docker 容器内部连接到 VPN。

如果我尝试以下操作:

docker run -i -t --privileged --net host --entrypoint /bin/bash ikev

然后它执行 ipsec start 和 ipsec up vpn,连接没有问题。问题是这也会影响主机上的路由,所以我希望从网桥模式运行它,但如果我运行:

docker run -i -t --privileged --entrypoint /bin/bash ikev

我无法再连接到 vpn,基本上甚至无法再连接到 ikev2 vpn 服务器:

initiating IKE_SA vpn[1] to X.X.X.X
generating IKE_SA_INIT request 0 [ SA KE No N(NATD_S_IP) N(NATD_D_IP) N(FRAG_SUP) N(HASH_ALG) N(REDIR_SUP) ]
sending packet: from Y.Y.Y.Y[500] to X.X.X.X[500] (454 bytes)
retransmit 1 of request with message ID 0
sending packet: from Y.Y.Y.Y[500] to X.X.X.X[500] (454 bytes)
retransmit 2 of request with message ID 0
[...]

我尝试使用 nmap 从两个容器中查明是否有东西被过滤了,但从--net host 和 bridge 中得到了相同的结果:

PROTOCOL STATE         SERVICE
50       open|filtered esp
51       open|filtered ah
PORT     STATE         SERVICE
500/udp  open          isakmp
4500/udp open|filtered nat-t-ike

我应该从主机转发或做什么以便容器可以连接到 ikev2 服务器?

相关内容