I'm trying to enable IPv6 on my Debian nodes (OpenVZ) using venet; my host is under Proxmox 2.2 (kernel 2.6.32-16-pve), and it seems the routing fails.
My host correctly pings all my nodes; all my nodes ping my host, but none of the nodes can ping another node or the outside world. When I run a traceroute to my node from my computer, it stops before reaching my host (a traceroute to my node works well).
Here's my network configuration:
- Netmask provided by my ISP: 2001:41d0:2:52ae::/56
- Host Netmask: 2001:41d0:2:52ae::/64
- Host IPv6: 2001:41d0:2:52ae::1
- Node
X
netmask: 2001:41d0:2:520X
::/64 - Node
X
IPv6: 2001:41d0:2:520X
::1
On my host, the vmbr0
config is (from /etc/network/interfaces
):
iface vmbr0 inet6 static
address 2001:41d0:2:52ae::1
netmask 64
gateway 2001:41d0:2:52ff:ff:ff:ff:ff
post-up ip -6 route add 2001:41d0:2:52ff:ff:ff:ff:ff/128 dev vmbr0 #gateway
post-up ip -6 route add default via 2001:41d0:2:52ff:ff:ff:ff:ff #gateway
post-up ip -6 route add 2001:41d0:2:520X::/64 dev vmbr1 # node X
post-up ip -6 neigh add proxy 2001:41d0:2:52ff:ff:ff:ff:ff dev vmbr1
post-up ip -6 neigh add proxy 2001:41d0:2:520X::1 dev vmbr0 # node X
On each node (from /etc/network/interfaces
, automatically generated by proxmox):
iface venet0 inet6 manual
up ifconfig venet0 add 2001:41d0:2:520X::1/128
down ifconfig venet0 del 2001:41d0:2:520X::1/128
up route -A inet6 add default dev venet0
down route -A inet6 del default dev venet0
Am I missing something, or it is simply not possible via venet ?
Edit: here's the output of ip -6 route show
on my host:
2001:41d0:2:520X::1 dev venet0 metric 1024 mtu 1500 advmss 1440 hoplimit 4294967295
2001:41d0:2:52ae::/64 dev vmbr0 proto kernel metric 256 mtu 1500 advmss 1440 hoplimit 4294967295
2001:41d0:2:5200::/56 dev vmbr0 proto kernel metric 256 expires 0sec mtu 1500 advmss 1440 hoplimit 4294967295
fe80::1 dev venet0 proto kernel metric 256 mtu 1500 advmss 1440 hoplimit 4294967295
fe80::/64 dev dummy0 proto kernel metric 256 mtu 1500 advmss 1440 hoplimit 4294967295
fe80::/64 dev vmbr1 proto kernel metric 256 mtu 1500 advmss 1440 hoplimit 4294967295
fe80::/64 dev vmbr0 proto kernel metric 256 mtu 1500 advmss 1440 hoplimit 4294967295
fe80::/64 dev eth0 proto kernel metric 256 mtu 1500 advmss 1440 hoplimit 4294967295
fe80::/64 dev venet0 proto kernel metric 256 mtu 1500 advmss 1440 hoplimit 4294967295
default via fe80::5:73ff:fea0:0 dev vmbr0 proto kernel metric 1024 expires 0sec mtu 1500 advmss 1440 hoplimit 64
And on my node:
2001:41d0:2:520X::1 dev venet0 proto kernel metric 256 mtu 1500 advmss 1440 hoplimit 0
fe80::/64 dev venet0 proto kernel metric 256 mtu 1500 advmss 1440 hoplimit 0
default dev venet0 metric 1 mtu 1500 advmss 1440 hoplimit 0
Edit2: I switched from venet to veth, and it works without a glitch. Yet, I'm still interested in finding a way to make it work via venet...
Using ip -6 route show
with veth shows a gateway route, it was not present with venet. Maybe this could be the reason...