Radvd не будет принимать не /64 подсети

Я пытаюсь настроить radvd в конфигурации 6RD (в Linux), где у меня есть подсеть /64, и я пытаюсь использовать ее в двух разных физических сетях, поэтому я пытаюсь дать каждой из них подсеть /80. Тем не менее, когда я начинаю radvd на этих интерфейсах это говорит это:

radvd[3987]: prefix length should be 64 for int

(int будучи именем одного из интерфейсов.)

Я знаю, что автоматическая конфигурация без сохранения состояния не работает в подсетях, размер которых превышает /64, например, в подсети /48, но AFAIK предполагается, что она будет работать для всего, что меньше /64, поэтому /80 не должно быть проблемой. Окончательный эффект теперь в том, что radvd просто объявляет неправильный префикс подсети, эффективно "удаляя" первые 16 бит.

Что это? Неужели я не прав? radvd глючит, или есть какой-то параметр конфигурации, который мне не хватает?

2 ответа

Решение

radvd не глючит, подсети IPv6 должны действительно быть /64, чтобы автоконфигурация без сохранения состояния работала. Если вы используете что-то еще, вам придется вручную настроить каждое устройство в сети. Устройства, которые не предлагают возможность ручной настройки, вообще не будут работать.

Если вы действительно не знаете, что делаете (например, используете /127 для двухточечных соединений между маршрутизаторами), вы всегда должны использовать /64 для локальных сетей.

Обратите внимание, что автоматически сгенерированный адрес IPv6 похож на 2001:db8:1234:1234:xxxx:xxff:feyy:yyyy, где xxxxxx и yyyyyy - это MAC (с обратным битом). Вот почему radvd 9 или любой другой инструмент конфигурации без сохранения состояния) не может использовать вместо этого любую другую длину префикса.

Для других длин вы все еще можете использовать инструмент с отслеживанием состояния - DHCPv6.

Другие вопросы по тегам