所以我有一台来自 OVH 的专用服务器。这样我就有了一个 /64 范围的 IPv6 地址和 1 个公共 IPv4 地址。我购买了第二个 IPv4 地址作为备用。
主机正在运行 Xen 虚拟机管理程序,并且我已经设置了桥接
bridge name bridge id STP enabled interfaces
br0 8000.0cc47ac4292c no eno3
vif4.0
vif4.0-emu
virbr0 8000.525400a2390a yes virbr0-nic
我能够让 VM 连接 IPv4 和 IPv6 地址(但它只使用 IPv6),然而,作为测试,我将 VM 的 MAC 地址从列出的后备 MAC 地址更改为 192.168.1.1,然后,就不再有 IPv6 连接了,但是一旦我将 MAC 地址重新设置回来,它就可以正常工作了。
主机 IPv6 路由表
2607:5300:61:45b::/64 dev br0 proto kernel metric 256 pref medium
2607:5300:61:400::/56 dev eno3 proto kernel metric 202 mtu 1500 pref medium
fe80::/64 dev eno3 proto kernel metric 256 pref medium
fe80::/64 dev eno4 proto kernel metric 256 pref medium
fe80::/64 dev br0 proto kernel metric 256 pref medium
fe80::/64 dev vif4.0-emu proto kernel metric 256 pref medium
fe80::/64 dev vif4.0 proto kernel metric 256 pref medium
ff00::/8 dev eno3 metric 256 pref medium
ff00::/8 dev eno4 metric 256 pref medium
ff00::/8 dev br0 metric 256 pref medium
ff00::/8 dev vif4.0-emu metric 256 pref medium
ff00::/8 dev vif4.0 metric 256 pref medium
default via fe80::205:73ff:fea0:0 dev br0 metric 1024 pref medium
访客 IPv6 路由表
2607:5300:61:45b::/64 dev eth0 proto kernel metric 256 pref medium
2607:5300:61:400::/56 dev eth0 proto kernel metric 256 expires 2591946sec pref medium
fe80::/64 dev eth0 proto kernel metric 256 pref medium
default via fe80::205:73ff:fea0:0 dev eth0 proto ra metric 1024 expires 1746sec hoplimit 64 pref medium
理想情况下,我希望能够创建具有自己的公共可路由 IPv6 地址的虚拟机,而不必为每个虚拟机提供单独的后备 IPv4 地址。
顺便说一下,主机系统正在运行 Gentoo。
答案1
我创建了自己的解决方案,其中我创建了一个 PFSense 防火墙,它将处理单个 IPv4 地址的 natting 并分配全局可路由的 IPv6 地址。(目前正在处理设置的单独问题,但完整的 IPv6 连接工作正常。)
要进行设置,请在主机 (br1) 外创建一个单独的桥接器,并将 PFSense 分别连接到 br0 和 br1 WAN/LAN。让所有虚拟机桥接至 br1,然后 br1 将从 DHCP 接收私有 IPv4 地址和公共 IPv6 地址。