2008-05-18

ipv6 router advertisements

где можно получить подключение к сети ipv6 и блок адресов я уже упоминал.
теперь хочу поведать о настройке маршрутизатора.

первое что приходит в голову - автоматическая настройка хостов и шлюза с помощью icmpv6, а именно c помощью т.н. router advertisement..
для этого установим radvd - демон выполняющий переодическую отправку этих самых сообщений:
emerge radvd

далее - конфиг.
/etc/radvd.conf:
здесь указываются настройки для каждого интерфейса: какая сеть должна быть на интерфейсе, срок действия адресов, приоритеты роутеров, включена ли рассылка адвертайзментов или нет, и т.д.

пример:

# интерфейс на котором включаем radvd
interface eth0
{
#включаем отправку объявлений
AdvSendAdvert on;
MinRtrAdvInterval 3;
MaxRtrAdvInterval 10;

#указываем подсеть адреса из которой будут выдаваться
prefix 2001:db8:0:0::/64
{
AdvOnLink off;
AdvAutonomous on;
AdvRouterAddr on;
# хост должен обновлять информацию об адресе каждые 20 секунд,
#если он этого не сделает в течении 30 - адрес будет считаться недействительным
AdvPreferredLifetime 20;
AdvValidLifetime 30;
};

};


теперь роутер каждые 3 секунды будет управлять объявления с настройками сети.
хост по получении такого объявления может автоматически создать себе адрес на основе так называемого EUI64 - слегка преобразованного мака.

таким образом полученный хостом адрес будет выглядеть так:
1) старшие 64 бита - адрес сети (указанный в radvd префикс)
2) младшие 64 бита - еуи64
пример формирования младших 64 бит:
допустим мак хоста 01:23:45:67:89:ab
инвертируем 7й би первого октета: 03:23:45:67:89:ab
вставляем посередке ff:fe: 03:23:45:ff:fe:67:89:ab
ставим правильно двоеточия (каждые 16 бит): 0323:45ff:fe67:89ab
приписываем префикс подсети: 2001:db8:0:0:0323:45ff:fe67:89ab
вуаля.
далее - тазик сам выберет из всех маршрутизаторов присылающих объявления шлюз, и сможет работать в сети айпив6 :)

Немає коментарів: