我想了解 lxd / lxc上下文中的命名空间 。
我有两个容器,分别将eth0桥接到主机上的br1和br2 。 这是通过虚拟以太网接口完成的
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 0和1因为所有的命令通过名称(而不是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