Так случилось, что мой провайдер Ростелеком не хочет или пока еще не может предоставить мне IPv6. А попробовать-то сильно хочется. Сразу оговорюсь: для нормальной работы требуется статический IPv4.

Пользователи роутеров ZyXEL Keenetic знают, что его можно настроить через туннельного брокера. А кто уже пробовал и настраивал, так и остались недовольными скоростью работы и пингом, которые зависят от сети брокера и не очень радуют находящихся в России пользователей.

Итак, опробовав всевозможных бесплатных брокеров, я бросил эту затею, но не бросил изучение вопроса. Так я наткнулся на 6to4. Там всё конечно интересно, но настраивать на каждом устройстве в доме слегка ленивое дело. Ну а раз вопрос я изучил, к чему пришел? IPv6 6to4 — это тот же самый IPv6 6in4, что предоставляют нам брокеры. Осталось дело за малым — попытаться все это скормить ЗуХЕЛю.

Не забываем проверить раздел «Системные требования» вышеуказанного сайта. Там написано: Проверьте, есть ли у вас доступ к IPv4-адресу 192.88.99.1 (например с помощью ping). Если этот адрес не пингуется, вероятнее всего у вашего интернет-провайдера что-то всерьёз «не так» настроено, и в этом случае 6to4 с автоматическим выбором шлюза работать не будет.

Чтобы не сидеть с калькулятором и блокнотом, воспользуемся сайтом 6to4.ru и узнаем IPv6 адрес для своего статического IPv4. Написан он в правом верхнем углу после слов: Your 6to4 prefix is.



И вот почему статического: если будем все это настраивать для динамического адреса, то после каждой смены IP нам надо будет возвращаться в настройки роутера и менять там адрес.

Адрес мы узнали, теперь переходим к роутеру.

На странице настройки IPv6 в поле Адрес сервера вводим адрес 192.88.99.1. В поле Адрес IPv6 указываем адрес, «посчитанный» на сайте без префикса, но с добавлением 1 в конце. Т.к. это будет адрес нашего маршрутизатора. В поле Адрес маршрутизации IPv6 указываем адрес вместе с префиксом.



Все вроде бы настроено, но не тут-то было. Остается проблема с DNS-серверами.
Т.к. сервер имен неизвестен, сайты у нас открываться не будут.
Воспользуемся DNS серверами любимого Google: 2001:4860:4860::8888 и 2001:4860:4860::8844.
Указывать на каждой машине вручную? Тоже не интересно.

Веб-морда не дает нам указать эти адреса, ругается на синтаксис.

Порывшись на сайте ZyXEL, выясняем, что DNS сервер можно задать командой через терминал. Но я пошел по пути наименьшего сопротивления и все через ту же веб скачал конфигурационный файл startup-config, отредактировал и загрузил его обратно.

Почти в самом конце файла, после строки: ipv6 local-prefix default, добавил строки:

ipv6 name-server 2001:4860:4860::8888
ipv6 name-server 2001:4860:4860::8844


После загрузки конфигурационного файла перезагружаем роутер и получаем на всех машинах, включая смартфоны, работающий IPv6.

Теперь мы имеем быстро работающий интернет по IPv6 и маленький ping без зависимости от тунyельных брокеров.

Комментарии (33)


  1. Reeze
    13.05.2015 18:26
    +2

    Автор закончил статью на самом интересном месте. Настроил IPV6, а дальше что...?)


    1. solalex
      13.05.2015 18:53
      +3

      Как что? отмечать по полной программе!


    1. SinnerLike Автор
      13.05.2015 18:53

      А дальше время от времени в торрент клиенте появляются сиды с IPv6 и, я сделал шаг в будущее; готов к работе в «новых» сетях :-)


    1. Gendalph
      13.05.2015 22:42
      +1

      А дальше Keenetic умеет DHCPv6 без дополнительных настроек.
      Проверено на Windows 7, Linux (Manjaro w/NetworkManager, Raspbian minimal), Android.


    1. karabanov
      14.05.2015 11:20
      +2

      А дальше он понял, что фаирвол на зюкселе не настроить и стал грустить.


  1. Meklon
    13.05.2015 20:32
    +1

    Я не понял, почему без зависимости от брокеров. Кто диапазон выдаёт?


    1. Rel1cto
      13.05.2015 20:45
      +1

      Автоматически.
      Твой IPv6 адрес = 2002:xxxx:xxxx::/48, где xxxxxxxx — IPv4 адрес шлюза на границе сети.
      Получив пакет, адресованный в сеть 2002:yyyy:yyyy::/48, шлюз понимает, что трафик надо инкапсулировать в туннель и отправить по ipv4-адресу yy.yy.yy.yy


      1. Meklon
        13.05.2015 20:47

        то есть брокер только выдал адреса и все? а трафик идет напрямую?
        Аогрузился в мануалы. Не понял кому адресное пространство принадлежит.


        1. Rel1cto
          13.05.2015 21:52
          +1

          Которое?
          Всё 2002::/16 выделено под такие туннели, оно не выдаётся, его берёшь сам согласно своему публичному ipv4-адресу.
          То есть брокера по сути нет, ни у кого спрашивать разрешения не нужно.
          А сеть 192.88.99.0/24 согласно RFC3068 выделена под anycast-адреса релеев. То есть у роутера из сетапа выше есть по умолчанию возможность достучаться во все 2002::/16 (сам определяет destination туннеля согласно ipv6-адресу), но нет выхода в остальной ipv6-интернет. Для этого и применяется ближайший (благодаря anycast) релейный роутер, это дефолтный маршрут, туда льётся весь Ipv6-трафик к сетям, отличным от 2002::16.


          1. Meklon
            14.05.2015 09:17

            Все, понял. Здесь просто соглашение в стандарте.


  1. Meklon
    13.05.2015 20:54

    Пошел искать мануалы для своего MikroTik. Не знаю нахрена мне ipv6, но не будем отставать от лучших домов Лондона и Парижа))
    UPD Вот, нашел на хабре статью


    1. Meklon
      13.05.2015 20:58

      Не, не то. Это брокеры…


      1. stigory
        14.05.2015 06:26

        Ну, это, вобщем, не сложно. Информации из этой статьи хватило, чтобы на скорую руку поднять 6to4 туннель на микротике. По крайней мере пинги от микротика до днсов гугла летают.


        1. Meklon
          14.05.2015 09:20

          Меня больше безопасность смущает. Я пока не очень понимаю работу ipv6. Опасаюсь накосячить с firewall. Слишком много висит всего внутри, включая пачки виртуальных машин и сервер.


          1. stigory
            14.05.2015 09:38

            Уважаемый Meklon, нахожусь в точно такой же ситуации как и вы. Но не вижу повода для страхов. Как минимум все, что не имеет адресации ipv6, не способно к передаче пакетов ipv6 (хотя, должен признать, по умолчанию этот протокол включен много где, и можно просто проглядеть). Если не прописаны маршруты для ipv6 (а они по-умолчанию не прописаны), то даже те хосты, у которых всё включено, не будут знать куда слать пакеты. Что касается файерволла, тоже не вижу особых причин для испуга. TCP, UDP, ICMP остались прежние и правила для них вобщем не изменились. Я пока настроил туннель и прикрыл на время всё тремя правилами.

            До этого момента разбираться в брокерах, честно говоря, было лень. А потребность в ipv6 была минимальной. Но эта статья дала новый толчок именно безброкерным решением.


            1. Meklon
              14.05.2015 10:35

              Спасибо. Буду изучать… Не люблю пользоваться инструментами, которые полностью не понимаю.


  1. lexa0
    13.05.2015 21:11

    А попробуйте проверить что Google думает про ваш IPv6 ipv6test.google.com.

    2002::/16 с точки зрения Гугла неполноценны, соответвенно у вас не будет работать гуглосервисы по IPv6, а они генерируют значительную долю домашнего трафика.


    1. Reeze
      13.05.2015 21:28

      По вашей ссылке www.google.com/intl/en/ipv6 замечательная цитата:

      Clearly the Internet needs more IP addresses. How many more, exactly?
      Well, how about 340 trillion trillion trillion (or, 340,000,000,000,000,000,000,000,000,000,000,000,000)?

      На дворе уже почти 2016, а провайдеры почти повсеместно плевали: ведь проще ничего не менять и продавать выделенные IP дороже.


    1. fshp
      13.05.2015 22:15

      Проблем не выявлено. Вы еще не используете протокол IPv6

      При этом ipv6.google.com отлично работает.


      1. lexa0
        13.05.2015 22:29

        Вот так Гугл дискриминирует 6to4 пользователей.

        А вообще Гугл это делает для того чтобы потенциальные тормоза 6to4 не вызвали проблем у пользователя.


        1. WGH
          28.05.2015 01:13

          Это не гугл, просто операционные системы в случае использования 6to4 предпочитают IPv4.


    1. Gendalph
      13.05.2015 22:49

      У меня адрес из другого диапазона (2a01:d0:ffff:3e04::/48 от NetAssist), поэтому у меня всё ок.


    1. SinnerLike Автор
      17.05.2015 12:10

      Вот что думает Google:

      Встречайте будущее Интернета!
      Проблем не выявлено.
      Вы еще не используете протокол IPv6, но проблем при подключении к сайтам, поддерживающим его, возникнуть не должно.

      Приоритет ipv6 ниже ipv4, но при необходимости он работает.


    1. ValdikSS
      19.05.2015 16:17

      Они вполне полноценны, только приоритет 6to4-адресов ниже, чем у IPv4, из-за чего подключение идет по IPv4. И это, в целом, хорошо, т.к. 6to4-шлюзы не блещут стабильностью и скоростью.


  1. dj_raphael
    14.05.2015 01:10

    Тоже настроил себе туннель ipv6 в роутере. Красота — черепашка плавает. И тут все стали спрашивать: Почему перестало работать приложение вконтакта для андроида? Отключил — работает. Пришлось отключить.


  1. aunoor
    14.05.2015 14:06

    Зато использование брокера дает неочевидный плюс: обход блокировок. Выходная нода находиться за границей, со всеми вытекающими. Достаточно даже Teredo что бы дойти до многих сайтов. Если у сайта нет ipv6, то тоже не страшно, гейт v6->v4 от SIXXS даст возможность достучаться и до него.


    1. Meklon
      14.05.2015 15:27

      С брокером весь трафик идёт через него? Какая там ширина канала получается?


      1. aunoor
        14.05.2015 15:58

        Если честно, то не замерял. У меня брокер используется в качестве бесплатной альтернативы выделенному IP, исключительно для домашних нужд, поэтому большой ширины канала мне не требуется, а для обычного лазания по инету хватает.
        Ping до ipv6.google.com составляет в среднем 80ms.


  1. usachev
    14.05.2015 16:42

    Писатели прошивок для ZyXEL прониклись вашей идеей, функционал добавлен в бета-версию.
    В актуальной бете (2.05.B5) можно уже ни на какой сайт не ходить, startup-config руками не править, достаточно создать интерфейс нужного типа:

    (config)> interface TunnelSixToFour0
    ipv6 force-default
    up
    Network::Interface::Repository: Created interface TunnelSixToFour0.
    interface is forced to be the default IPv6 gateway
    Network::Interface::Base: «TunnelSixToFour0»: interface is up.

    (config-if)> show ipv6 addresses

    addresses:
    address:
    address: 2002:c100:aef1::c100:aef1
    interface: TunnelSixToFour0
    valid-lifetime: infinite

    address:
    address: 2002:c100:aef1::ee43:f6ff:fe00:c5b4
    interface: Home
    valid-lifetime: infinite

    (config)> tools ping6 ya.ru
    sending ICMPv6 ECHO request to ya.ru…
    PING ya.ru (2a02:6b8::3) 56 (104) bytes of data.
    64 bytes from ya.ru (2a02:6b8::3): icmp_req=1, ttl=57, time=3.23 ms.
    64 bytes from ya.ru (2a02:6b8::3): icmp_req=2, ttl=57, time=3.40 ms.

    (config)>


    1. SinnerLike Автор
      15.05.2015 05:43
      +1

      Я писал им в службу поддержки, писал все подробно как настраивал, обещали передать разработчикам.

      Видать с разработчиками надо общаться через хабр :-D


  1. Meklon
    17.05.2015 23:03

    На Kubuntu 15.04 не взлетело. Недоступны ipv6 адреса. Та же машина на Windows 7 получает, телефон на Android тоже. Куда копать?


    1. SinnerLike Автор
      18.05.2015 13:35

      Ubuntu 14.04.02 нормально работает.
      Linux системы недавно изучаю, с этим не подскажу.


    1. Gendalph
      19.05.2015 21:17

      Нужно в nm-applet посмотреть чтобы IPv6 получался по DHCP, если роутер умеет DHCPv6. Если не умеет — прописать руками.
      И внимательно курить journalctl -xem