В продолжение серии статей про IPv6 мы рассмотрим простейший случай: маленькую сеть с единственным внешним подключением.
Предположим, что у нас есть сеть с несколькими рабочими станциями на Windows Vista или 7, одним сервером на RHEL5 и одним маршрутизатором на Vyatta 6.1. Задача: организовать раздачу IPv6 адресов и дефолтного маршрута.
Будем считать, что провайдер выдал нам подсеть 2001:db8:dead:beaf::/64 для внутреннего использования и 2001:db8:dead:beed::/64 для соединения между им и нами.
Подсеть 2001:db8::/32 зарезервирована для примеров и документации и не должна маршрутизироваться в Интернете (вроде 192.0.2.0/24 в IPv4).
Настройка маршрутизатора
Начнем с маршрутизатора. Присваиваем IPv6 адреса интерфейсам:
set interfaces ethernet eth0 address 2001:db8:dead:beed::2/64
set interfaces ethernet eth1 address 2001:db8:dead:beaf::1/64
Создаем маршрут по умолчанию через шлюз провайдера:
set protocols static route6 ::/0 next-hop 2001:db8:dead:beed::1
Автонастройка без состояния
Теперь самое интересное: настраиваем анонсирование адресов и маршрута с помощью router advertisment. Как говорилось в прошлой статье, этот механизм является частью нового протокола обнаружения соседей NDP. Настраивается он на интерфейсе, который смотрит во внутреннюю сеть.
edit interfaces ethernet eth1
set ipv6 router-advert send-advert true
set ipv6 router-advert prefix 2001:db8:dead:beaf::/64
DHCPv6
Нужно заметить, что адреса DNS-серверов и прочие параметры нужно раздавать каким-то иным способом. Если в сети одновременно используются IPv4 и IPv6, то эти параметры скорее всего получены по DHCP. Иначе нужно использовать какой-то другой механизм их раздачи, например, через DHCPv6. Настроим его:
edit service dhcpv6-server
set shared-network-name LAN subnet 2001:db8:dead:beaf::/64 address-range prefix 2001:db8:dead:beaf::/64
set shared-network-name LAN subnet 2001:db8:dead:beaf::/64 name-server 2001:db8:dead:aaaa::10
Также можно настроить диапазон адресов для раздачи хостам и статические записи, прочие параметры вроде NTP-серверов. В принципе, возможны и конфигурации, где по DHCPv6 раздаются только параметры, а не адреса.
Если мы хотим использовать DHCPv6, нам потребуются немного другие настройки router advertisment. Нужно установить managed-flag (указывает, что надо получать адреса по DHCPv6) и other-config-flag (указывает, что получать нужно не только адрес). Параметр prefix в этом случае не нужен.
edit interfaces ethernet eth1
set ipv6 router-advert managed-flag true
set ipv6 router-advert other-config-flag true
Если эти флаги не указать, клиенты не будут обращаться к DHCPv6. Дело в том, что он не является полностью самостоятельным механизмом настройки, в отличие от DHCP, и опирается на router advertisment. Клиенты сначала смотрят в ее сообщения, и только при наличии соответствующих флагов идут за параметрами к DHCPv6. Маршрут по умолчанию выдается через router advertisment всегда, в DHCPv6 такой функции просто нет.
Настройка хостов
Windows
В Windows 7 автонастройка включена по умолчанию.
Если зайти в сведения, то можно увидеть что машина получила подсеть и сгенерировала адрес интерфейса:
При использовании DHCPv6 там появятся еще и настройки вроде DNS-серверов.
Linux
В RHEL5 для включения автонастройки нужно прописать в настройки интерфейса (/etc/sysconfig/network-scripts/ifcfg-ethX) следующие опции:
IPV6INIT=yes
IPV6_AUTOCONF=yes
Заключение
Мы кратко рассмотрели настройку взаимодействия клиентов IPv6 с маршрутизатором. В сравнении с IPv4 она может казаться непривычной, но в целом она вполне удобна. Если по ней есть вопросы, я готов на них отвечать.
Мне бы очень хотелось включить настройки для Cisco, но, к сожалению, нет под рукой оборудования. Если смогу завести IOS в эмуляторе, напишу дополнение, а если у кого-то есть свободная железка и желание, то можно скооперироваться и поковырять вместе.
Опубликовано: Vyatta
Железку найти не проблема.
Есть и циска, и АСА и Jun SRX100
А вообще — здорово! IPv6 скоро будет нужен всем 🙂 А инфы мало 🙂
>Есть и циска, и АСА и Jun SRX100
Хороший набор. Надо теперь еще как-то этим совместно воспользоваться.
Дальше у меня в планах как раз протоколы динамической маршрутизации.
статья хорошая. Но вот железо еще к IPv6 не готово. Пепельняк с интервалом в 2 недели матюкается на эту тему.
Ilya: Согласен, есть такое дело. Сам я недавно огреб радости с Foundry BigIron 4000. Вроде бы поддержка IPv6 заявлена, но реализация какая-то странная.
Чем больше будет инфы в инете — тем лучше! Проще выбрать железку, проще настроить, проще избежать граблей. Так что начинание очень нужное!