Адреса IPv4 уже в обозримом будущем закончатся, поэтому мне весьма закономерно захотелось посмотреть на новую версию протокола, IPv6. К сожалению, сейчас почти никто из провайдеров не предоставляет его напрямую, однако способ его получить все таки есть. Ряд провайдеров предоставлют доступ поверх существующего IPv4-соединения через туннель.
В качестве такого провайдера мной был выбран Hurricane Electric (he.net). Для получения доступа достаточно зарегистрироваться на их сайте tunnelbroket.net. В комплект кроме туннеля входят также маршрутизируемая подсеть (/64 или /48) и возможность указать сервера имен для обратных зон.
При создании туннеля можно посмотреть примеры конфигураций для многих систем (Linux, Windows, Cisco IOS, JunOS и еще нескольких), но вот для Vyatta там ничего не было.
Настраиваем Vyatta для работы с Hurricane Electric
Тем не менее, ничего сложного настройка собой не представляет. Для инкапсуляции IPv6 в IPv4 у них применяется протокол SIT (Simple Internet Transition), который Vyatta поддерживает. Набор команд будет примерно таким:
configure # Входим в режим конфигурации edit interfaces tunnel tun0 # Создаем новый интерфейс туннеля set encapsulation sit # Указываем протокол инкапсуляции SIT set local-ip <IPv4-адрес> # Адрес интерфейса, который смотрит в интернет set remote-ip <IPv4-адрес> # Адрес сервера доступа set address <IPv6-адрес>/64 # Адрес интерфейса туннеля set description "IPv6 tunnel" # Описание, не является обязательным exit # Теперь укажем маршрут по умолчанию. ::/0 это аналог 0.0.0.0/0 в IPv4 set protocols static interface-route6 ::/0 next-hop-interface tun0 commit # Применяем изменения
Адрес сервера доступа и адрес нашей подсети скажут при регистрации. Возможно, непривычная запись «::» требует пояснений. Таким способом в IPv6 можно обозначить две или более группы нулей. Например, 2001:0470:aaaa:0bbb:0000:0000:0000:0001 может быть сокращен до 2001:470:aaaa:bbb::1. Как видно, незначащие нули тоже можно не писать. Посмотрим на получившуюся конфигурацию:
dmbaturin@rekki# show interfaces tunnel tun0 address 2001:470:xxxx:xxx::2/64 description "Hurricane Electric IPv6 tunnel" encapsulation sit local-ip x.x.x.x remote-ip y.y.y.y dmbaturin@rekki# show protocols static interface-route6 ::/0 { next-hop-interface tun0 { } }
Теперь осталось проверить, работает ли наше соединение. Для диагностики можно использовать аналоги привычных ping и traceroute для IPv6. Они называются ping6 и traceroute6 соответственно. Для проверки доступности с другой стороны можно воспользоваться looking glass провайдера, или любым другим аналогичным общедоступным сервером.
dmbaturin@rekki# ping6 he.net PING he.net(he.net) 56 data bytes 64 bytes from he.net: icmp_seq=1 ttl=56 time=281 ms 64 bytes from he.net: icmp_seq=2 ttl=56 time=283 ms dmbaturin@rekki# traceroute6 he.net traceroute to he.net (2001:470:0:76::2), 30 hops max, 40 byte packets 1 xxxxxx-1.tunnel.tserv6.fra1.ipv6.he.net (2001:470:xxxx:xxx::1) 144.294 ms 147.316 ms 151.028 ms 2 gige-g2-4.core1.fra1.he.net (2001:470:0:69::1) 151.060 ms 151.086 ms 151.107 ms 3 10gigabitethernet1-4.core1.ams1.he.net (2001:470:0:47::1) 159.030 ms 159.062 ms 159.107 ms 4 10gigabitethernet1-4.core1.lon1.he.net (2001:470:0:3f::1) 167.319 ms 167.350 ms 167.357 ms 5 2001:470:0:128::1 (2001:470:0:128::1) 238.403 ms 10gigabitethernet2-3.core1.nyc4.he.net (2001:470:0:3e::1) 238.100 ms 238.132 ms
Как видно, соединение проходит. Не желаете тоже прикоснуться к будущему Интернета?
Послесловие
После моего письма Hurricane Electric включили этот пример в свой генератор конфигураций и в тему на форуме. Как побочный эффект, может быть теперь больше людей узнают о Vyatta.
Комментариев нет:
Отправить комментарий