Каждый хост имеет уникальный локальный IPv6-адрес (link-local), основанный на его MAC-адресе. Таким образом, все хосты в одном сегменте сети имеют возможность обмениваться пакетами без каких-либо дополнительных настроек

Вместо сервера DHCP информацию о маршрутизации должны предоставлять сами шлюзы,периодически рассылая в подсеть пакеты Router Advertisement (RA)

Более того, хост может разослать запрос ближайшим маршрутизаторам Router Solicitation (RS)


В сети на IPv6 нет необходимости в сервере DHCP (тем не менее, может быть использован DHCPv6, позволяющий назначать узлу конкретный адрес)

Адреса серверов DNS по IPv6 хост также должен извлечь из сообщения RA (опция RDNSS)


Организовать роутер IPv6 на FreeBSD можно при помощи сервиса radvd

bsd$ whereis -s radvd

radvd: /usr/ports/net/radvd

bsd$ sudo make -C /usr/ports/net/radvd -D BATCH config install clean

bsd$ rehash

В файле конфигурации /usr/local/etc/radvd.conf для каждого интерфейса настройки производятся отдельно

bsd$ egrep "^[^ #]" /usr/local/etc/radvd.conf

interface em0

{

AdvSendAdvert on;

....

prefix 2001:5c0:1101:1700::/64

{

AdvOnLink on;

AdvAutonomous on;

AdvRouterAddr on;

};

....

RDNSS 2001:4860:4860::8888

{

};

};

interface wlan0

{

AdvSendAdvert on;

....

prefix 2001:5c0:1101:1800::/64

{

AdvOnLink on;

AdvAutonomous on;

AdvRouterAddr on;

};

....

RDNSS 2001:4860:4860::8888

{

};

};

Автоматический запуск сервиса при старте системы

bsd$ echo 'radvd_enable="YES"' | sudo tee -a /etc/rc.conf

bsd$ sudo /usr/local/etc/rc.d/radvd rcvar

...

radvd_enable="YES"

bsd$ sudo /usr/local/etc/rc.d/radvd start


Windows не имеет встроенной поддержки получения адреса DNS-серверов из пакетов RA. Для этого приходится дополнительно ставить утилиту rdnssd-win32


bsd$ man radvd

FreeBSD 10.2-RELEASE: Sun Nov 29 21:19:07 YEKT 2015