Включение IPv6 в OpenVZ с помощью Proxmox 2.2

Я пытаюсь включить IPv6 на моих узлах Debian (OpenVZ) с помощью venet; мой хост находится под Proxmox 2.2 (ядро 2.6.32-16-pve), и кажется, что маршрутизация не работает.

Мой хост правильно пингует все мои узлы; все мои узлы пингуют мой хост, но ни один из узлов не может пинговать другой узел или внешний мир. Когда я запускаю трассировку к моему узлу со своего компьютера, она останавливается, не дойдя до моего хоста (трассировка до моего узла работает хорошо).

Вот моя конфигурация сети:

  • Сетевая маска, предоставленная моим интернет-провайдером: 2001: 41d0: 2: 52ae :: / 56
  • Сетевая маска хоста: 2001: 41d0: 2: 52ae :: / 64
  • Хост IPv6 : 2001: 41d0: 2: 52ae :: 1
  • Узел X маска сети: 2001: 41d0: 2: 520 X :: / 64
  • Узел X IPv6: 2001: 41d0: 2: 520 X :: 1

На моем хосте конфигурация vmbr0 (из / 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

На каждом узле (из / etc / network / interfaces , автоматически создается 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

Я что-то упустил или это просто невозможно через venet?

Edit: вот результат ip -6 route show на моем хосте:

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

И на моем узле:

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: Я переключился с venet на veth, и работает без сбоев. Тем не менее, я все еще заинтересован в том, чтобы найти способ заставить его работать через Venet ... Использование ip -6 route show с veth показывает маршрут шлюза, его не было с venet.Может, это могло быть причиной ...

5
задан 27 December 2012 в 19:06
1 ответ

Показанная вами конфигурация / etc / network / interfaces не может работать.

Вы указываете свой шлюз по умолчанию на локальный адрес, который вы настраиваете на хосте. Ваш шлюз по умолчанию (почти наверняка) необходимо указать на какой-то адрес в сети вашего провайдера.

Вы не указали общедоступный IPv6-адрес на своем интерфейсе eth0 для связи с вашим провайдером (скорее всего, это то место, где должен находиться ваш адрес 2001: 41d0: 2: 52ae :: 1/64, и, скорее всего, ваш шлюз по умолчанию должен be 2001: 41d0: 2: 52ff: ff: ff: ff: ff через устройство eth0.

После того, как у вас есть базовая работа с сетью на eth0, вы можете работать над маршрутизацией других / 64 в вашем / 56 на другие ваши ВМ.

-1
ответ дан 13 January 2020 в 21:47

Теги

Похожие вопросы