我寻找任何方法来将第二个公共或 LAN IP 直接与虚拟 Iface 或别名 IP 绑定到没有桥接接口的 LXC 容器。
有什么想法和配置示例吗?
(Debian)
ip link 添加 eth2 类型虚拟'
LXC 配置
# Network configuration
lxc.net.0.type = phys
lxc.net.0.link = eth2
lxc.net.0.ipv4.address = 192.168.1.23/24
lxc.net.0.ipv4.gateway = 192.168.1.2
lxc.net.0.flags = up
#lxc.net.0.name = eth0
#lxc.net.0.hwaddr = 00:16:3e:85:fb:59
这个配置对我来说不起作用..
答案1
是的,可以使用“IPVLAN”虚拟网络接口驱动程序。它与您可能已经知道的 MACVLAN 驱动程序不同,它对主接口上的所有虚拟接口使用相同的 MAC 地址,就像主接口上直接的多个 IP 地址一样。
在 Debian 上,我这样使用它:
auto ipvl-main
iface ipvl-main inet manual
pre-up ip link add link eth0 name ipvl-main type ipvlan mode l2
post-down ip link delete ipvl-main
在LXC中,相应的配置如下所示:
lxc.net.1.type = phys
lxc.net.1.link = ipvl-main
lxc.net.1.ipv4.address = 192.0.2.4/26
lxc.net.1.ipv4.gateway = 192.0.2.1
lxc.net.1.ipv6.address = 2001:db8:10b:2893::3/128
lxc.net.1.ipv6.gateway = fe80::1
非常简单。如果网络命名空间占用了网络接口(例如由于lxc-start
错误),您只需重新创建它即可。