lxc / lxd中的networking命名空间在哪里?

我想了解 lxd / lxc上下文中的命名空间 。

我有两个容器,分别将eth0桥接到主机上的br1br2 。 这是通过虚拟以太网接口完成的

 root@srv:~# ip link (...) 5: br1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP mode DEFAULT group default link/ether fe:f0:ca:e8:c4:ae brd ff:ff:ff:ff:ff:ff 6: br2: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP mode DEFAULT group default link/ether fe:45:66:a8:37:a7 brd ff:ff:ff:ff:ff:ff 11: vethHRMPOM@if10: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast master br1 state UP mode DEFAULT group default qlen 1000 link/ether fe:f0:ca:e8:c4:ae brd ff:ff:ff:ff:ff:ff link-netnsid 1 27: vethNTG58H@if26: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast master br2 state UP mode DEFAULT group default qlen 1000 link/ether fe:45:66:a8:37:a7 brd ff:ff:ff:ff:ff:ff link-netnsid 0 

我想知道vethHRMPOM@if10的另一面呢?

ip netns list是空的。

/var/run/netns不存在(这是一个Ubuntu 15.10)

ip netns list-id显示

 nsid 0 nsid 1 

这似乎对应于上面的ip list的最后一个元素。 我怎么能得到更多关于这些nsid 01因为所有的命令通过名称(而不是ID)引用命名空间?

我想知道vethHRMPOM@if10的另一面呢?

虽然我不知道如何直接将主机veth设备映射到LXC veth设备,但我知道如何做相反的事情:

 root@server:~# lxc-ls bugzilla4 root@server:~# lxc-info -n bugzilla4 -p PID: 7072 root@server:~# mkdir -p /var/run/netns/ root@server:~# ln -sf /proc/7072/ns/net /var/run/netns/bugzilla4 root@server:~# ip netns list bugzilla4 root@server:~# ip netns exec bugzilla4 ethtool -S eth0 NIC statistics: peer_ifindex: 41 root@server:~# ip link show | grep '^41:' 41: vXsomething: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast master br1 state UP mode DEFAULT group default qlen 1000 

如果ethtool没有在客户端上,我想你可以得到客户ifindex并增加一个获得主机ifindex (40 – > 41):

 root@server:~# ip netns exec bugzilla4 ip link show eth0 40: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP mode DEFAULT group default qlen 1000 link/ether aa:bb:cc:dd:ee:ff brd ff:ff:ff:ff:ff:ff 

为了回答你原来的问题:你可以编写一个脚本来检查每个LXC,得到主机veth设备,如果你感兴趣的是vethHRMPOM@if10

我认为更好的解决办法是正确命名你的veth设备。 例:

 lxc.network.veth.pair = vXbugzilla4 

veth设备在主机上称为vXbugzilla4

 root@server:~# ip link show vXbugzilla4 41: vXbugzilla4: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast master br1 state UP mode DEFAULT group default qlen 1000 link/ether aa:bb:cc:dd:ee:ff brd ff:ff:ff:ff:ff:ff