【发布时间】:2021-07-17 08:40:14
【问题描述】:
我在主机上运行 docker,我想将 docker 内的特定接口(TUN 接口)连接到主机的外部网络。
在 docker 内运行 ifconfig 时,我看到 3 个接口:eth0、lo 和 my_tun(tun 接口)。
在主机上,我看到lo、docker0 和enp7s0(外网)。
我寻求的结果是,在my_tun 接口上发送的数据包将被发送到enp7s0。
如果 TUN 接口不在 docker 中,我会执行以下操作:
sysctl -w net.ipv4.ip_forward=1
sudo iptables -t nat -A POSTROUTING -o enp7s0 -j MASQUERADE
所以我的问题是如何使用属于 docker 容器(最好在 Ubuntu 上)的 TUN 接口来做到这一点。
提前致谢!
【问题讨论】:
标签: linux docker docker-networking tun masquerade