删除或分离连接到LXC实例的networking物理接口

如果我想将networking接口连接到LXC,我们可以在lxcconfiguration文件中指定它

lxc.network.type=phys lxc.network.link=eth3 lxc.network.name=eth1 

或者我们可以运行下面的命令作为lxc钩子的一部分在lxc-start期间附加它

 # on the host: pid=$(lxc-info -pHn foobar) ip link set dev eth3 netns $pid name eth1 

现在我正在寻找从容器中移除或分离上述连接的物理接口到主机的选项,我该如何实现它? 到目前为止我找不到任何'ip link help'选项。

如果您已经为此类networking名称空间指定了一个链接:

 ip link set dev eth3 netns $pid name eth1 

然后,您可以通过在目标名称空间中运行ip link set ...命令,将该链接重新分配给全局networking名称空间,您可以使用ip netns exec ...命令ip netns exec ...命令, 如果您使用的是“命名为“命名空间”。 如果没有,那么使用nsenter命令可能会更好,如下所示:

 nsenter -t $pid -n ip link set netns 1 eth1 name eth3 

这利用了PID 1几乎保证在全局networking命名空间中运行的事实。