我想设置一个容器仅使用 VPN 网络接口。
我已经使用pptpsetup
并pon
进行了 pptp 连接工作,并得到了一个ppp0
界面。
现在,我希望 systemd-nspawn 容器中的所有互联网连接都通过ppp0
.
我怎样才能让它发挥作用?
答案1
systemd-nspawn --network-interface=ppp0
ppp0 将从主机命名空间中消失。您不能与容器共享一个 IP 地址而不共享其他 IP 地址。 (除了做NAT)。
不过,看起来这可能需要最新的内核。 http://www.spinics.net/lists/netdev/msg339236.html
或者(机器是在 ppp0 之后创建的):
systemd-nspawn --private-network
ip link set dev ppp0 netns $PID
其中 $PID 是容器中进程的主机命名空间中的 pid,使用以下命令获得
P=$(machinectl $MACHINE_NAME show --property=Leader)
PID=${P#Leader=}
是传递给选项的$MACHINE_NAME
值-M
systemd-nspawn