IPv6 в каждый дом: Cвой собственный IPv6 сервер брокер (6in4)

  • Tutorial


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

Что важно — трафик мы будем пускать через свой собственный арендованный сервер, а не через непонятно какого брокера.

Для начала вам потребуется сервер который обладает IPv6 подключением, я буду использовать сервер от DigitalOcean за 5$ c OS Ubuntu последней версии.


Настраиваем сервер


Обратите внимание! часть ПО можно не устанавливать, оно отмечено как опциональное, его стоит установить, только если у вас динамический IP и вы хотите автоматически настраивать доступ при обновлении IP

После получения сервера вам надо обновить доступные пакеты на нем:

sudo apt-get update -y
sudo apt-get upgrade -y

Установить git, sipcalc, apache и php (2 последних — опционально)

sudo apt-get -y git sipcalc

Если вы не планируете авто-настройку при смене IP адреса, данную команду можно пропустить.

sudo apt-get -y apache2 php libapache2-mod-php php-mcrypt

Теперь настала время скачать скрипт который поможет настроить туннель github.com/sskaje/6in4

git clone https://github.com/sskaje/6in4.git

cd 6in4

Копируем скрипт в /bin для привычного нам вызова

sudo cp ./bin/6to4 /bin/6to4

Выдаём права за на запуск

sudo chmod +x /bin/6to4

Копируем файл настроек

sudo cp ./etc/config.ini /etc/config.ini

Редактируем файл с настройками

ifconfig | grep 'inet6 addr:'

$ ifconfig | grep 'inet6 addr:'
          inet6 addr: fe80::000:000:000:000/64 Scope:Link
          inet6 addr: 2a03:000:0:000::00:0000/64 Scope:Global

Нам нужен тот который с препиской Global:

inet6 addr: 2a03:000:0:000::00:0000/64 Scope:Global

Открываем файл с настройками для редактирования:

sudo nano /etc/config.ini

Убираем ";" у строчек:
IPV6_NETWORK=
IPV6_CIDR=
и указываем:


IPV6_NETWORK=2a03:000:0:000::
IPV6_CIDR=48

Нажимаем CNTRL+x, сохраняемся и переходим к добавлению сети:

sudo 6to4 add 1 8.8.8.8

где 8.8.8.8 — ваш внешний IP, узнать его можно, например тут.
В ответ вы получите примерно это:

Please set up tunnel on your machine with following parameters:
    Server IPv4 Address:        99.99.9.9
    Server IPv6 Address:        2a03:000:0:000::1/64
    Client IPv4 Address:        88.8.88.8
    Client IPv6 Address:        2a03:000:0:000::2/64
    Routed /64:                 2a03:g0e0:00g0:3402::/64

Теперь осталось прописать данные настройки в вашем роутере

Пример ниже — настройка Apple Airport:



Другие роутеры настраиваются аналогично.

Настройка маршрутизации на сервере


Теперь вернемся к серверу и настроим маршрутизацию из виртуального интерфейса IPv6 — в основной:

sudo ip6tables -t nat -A POSTROUTING -s 22a03:g0e0:00g0:3402::/64 -o eth0 -j MASQUERADE

2a03:g0e0:00g0:3402::/64 — это ваш Routed /64 или же любой IP который придет на любое ваше устройство с роутера после сохранения настроек

Разрешаем форвар трафика:

sudo sysctl -w net.ipv6.conf.all.forwarding=1


Можно проверять


После этого, сохраните настройки на роутере, перезагрузите роутер. У вас должен был заработать IPv6. На подключенные устройства придут IPv6 адреса.

Проверить работу IPv6 можно тут — ipv6.google.com или ipv6-test.com

Обратите внимание — при смене IP адреса (внешнего), IPv6 у вас пропадет, обновления доступа после смены адреса будет рассмотрено в следующей статье (или же вы можете использовть инструкцию из репозитория github.com/sskaje/6in4)

После настройки IPv6 надо быть бдительным — все ваши устройства внутри вашей домашней сети получат публичный IPv6 адрес! если вы не уверены в защищенности устройств — включите блокировку входящих ipv6 подключений на вашем роутере.



PS Telegram/Youtube/Google сервера работают через IPv6 как и многие другие. Проверить это вы можете выполнив ping6 google.com
Ads
AdBlock has stolen the banner, but banners are not teeth — they will be back

More

Comments 47

    0
    настроим мершрутизацию

    Маршрутизация НЕ есть NAT с маскарадингом!


    MASQUERADE в IPv6? RLY?


    OMG...

      0
      А как еще? нужно завернуть трафик из локальной IPv6 сети в глобальную, если у вас есть рабочая идея лучше — давайте обсудим, я долго искал метод как сделать своего IPv6 брокера, что бы не отдавать свой трафик не пойми кому. Такой метод — рабочий
        –2
        Я не говорил, что ваш метод не рабочий. Я говорил, что он идеологически не правильный. IPv6 был придуман для того, чтоб отказаться от NAT. А вы его сюда приплели.
          0
          Я понимаю, но другого метода перегонять трафик из тоннельного интерфейса в обычный ipv6 я не нашел, пробовал ставить gateway от хостера — не помогло.
          +2

          Насколько я помню спеку, /64 это минимальная маршрутизируемая сеть и меньше ее нарезать нельзя?

            +1
            Да, весь /64 должен быть отдан на оконечное устройство.
            /48 можно порезать на /64 и раздавать.
            0
            IPv6 был придуман, чтобы отказаться от NAT, а в итоге приходится городить NAT64 для выхода в IPv4 сети :(
              0
              В мире где у всех сайтов есть dualstack а у клиентов только ipv6 все хорошо может работать…
                0
                Так в том мире IPv4 уже не нужен
            0
            Для этого нужна своя маршрутизируемая подсеть, а не как у DO небольшой диапазон меньше чем /64.
            Тогда уж лучше настраивать на hetzner, пусть дают одну /64 но она маршрутизируемая, поднимаем сеть дома, на сервере прописываем маршрут через link-local адрес в туннеле и радуемся.
            Либо не выпендриваемся и получаем у Hurricane Electric одну /64 и одну /48 и обмазываемся адресами
              0
              Что вы подразумиваете под «маршрутизируемая подсеть»?
                0
                Маршрутизируемая это когда у вашего хостера/провайдера прописан маршрут в вашу сеть через вашу машину.
                На DigitalOcean у вас все выделенные адреса должны быть в одном L2 сегменте т.к. выделяют даже не подсеть а просто диапазон из неё, они не маршрутизируемые и их не получится прокинуть туннелями куда надо.
                  0
                  гм, ну тогда это не про туннели уже будет, кейс немного другой.
          0

          А что за брокерьі существуют?


          И есть ли у них теже нат проблемьі?

            0
            HE/netassist есть, как у них внутри устроено — никто не знает и они не рассказывают, собственно это и была приятна данного поста.
            0
            А с mikrotik'ом пробовали?
              0
              Нет, но работать должно с любым роутером или *nix OS.
              +2
              arubacloud.com дает vps за 1 евро/мес. в эту стоимость входит IPv4 и IPv6 (формально дают /64, а использовать можно только 16 адресов из блока).
                0
                А где sipcalc?
                  0
                    0
                    sipcalc с порога требует скрипт автора статьи. При чём тут сторонние калькуляторы IP?
                      0
                      Не понял вас тогда, пакет требуется? Можно скриншот — обновлю пост.
                        0
                        Так вы не автор?
                        Загляните в скрипт, он в первую очередь требует sipcalc и если его нет, ругается и завершает работу.
                        Да, требуется пакет
                          0
                          я не автор, репозиторий не мой, я его нашел и проверил на себе, результатами собствено и делюсь. а можно узнать какой именно пакет?
                0
                Вот серьезно а чем tunnelbroker.net не угодили? Не вижу ничего негативного в использовании их как точки выхода IPv6.
                А по поводу IPv6-to-IPv6 Network Prefix Translation то сам юзал, да костыль но рабочий.
                Кейс: 2 WAN'a от разных ISP настроенных на failover, сделать BGP не могу потому что IPv6 не мои, а tunnelbroker.net, да и даже если бы они были моими это дорого и нецелесообразно в моем случае. Тут NPt пришелся как раз кстати.
                  0
                  Тем же, чем и использование покупного VPN по сравнению со своим сервером
                    0
                    все равно ваш покупной сервер подключен будет к IPv6 с 70% вероятностью через HE.net >_< или гонять 90% трафика IPv6 через HE.net. Но теперь кроме HE.net вас будут отслеживать при желании еще й ISP вашего дата центра =), так что это все бессмысленно. Мало того у меня например есть статистика того как работает HE.net, и они предоставляют стабильные услуги (скорость и латенси пропускной полосы, и отсутствие downtim'ов), удобные функции для тех кто юзает их услуги: решение проблем тех клиентов у кого динамический IP, клиент сам может настраивать реверс лукап записи (PTR) в админ панели или через API. Есть интеграция с их DNS серверами. Таким ДЦ с VPC за 1$ не похвастается, а HE.net дают это все уже настроенное, проверенное и бесплатно, да й еще й нормально дают выбор к какому серверу вести туннель, расстояние к которому можно проверить перед тем как выбирать в качестве своего туннеля банальным ping запросом, и еще й имею свой iperf3 сервер для тестирования полосы.
                      0
                      с чего вы взяли? берем пример digitalocean — у него нативный настоящий ipv6, даже у некоторый хостеров в РФ есть магистраль и настоящий ipv6

                      Я не хочу говорить, что HE это плохо, но любой бесплатный сервис у меня вызывает подозрение, что товар это — я.
                        0

                        Вы думаете если вы будете кому то платить то они меньше будут собирать данные? Поверьте мне, как и с качеством услуг: цена это не показатель качества. Вы от Lets Encrypt тоже отказываетесь? — Они же на халяву сертификаты подписывают. А HE.net даёт на халяву потому что как и LE у них куча спонсоров которые заплатили за тебя.
                        P.S. — больше что Вова за вами никто следить не будет, а вы вон какие налоги платите каждый месяц

                          0
                          У хостеров есть TOS как минимум, и сравнивать платный/бесплатный сервис как минимум — глупо, в добавок, HE не даст вам сделать туннель если у вас нет внешнего IP, тут — пожалуйста
                            0
                            Я уже написал по поводу бесплатного и платного, пример: Let's Encrypt, не все в мире однозначно. А по поводу внешнего IPv4 ~ за 2$ вы себе сможете взять нормальную статику у большинства провайдеров. =) И у вас и IPv4 будет как у человека, и IPv6 /64 or /48, ладненько, каждому свое
                              0
                              Let’s encrypt — мне понятен, и почему ему донатят деньги мне тоже понятно, да и он не может ничего анализировать. В случае с vpn/туннелями — все менее однозначно.
                          0
                          Могу разочаровать: даже покупая товар в магазине (особенно в крупной сети), ты оказываешься товаром объектом, про который собирается статистика. За свои деньги, если что. А карта постоянного клиента — вообще отличный ID, чтобы собрать профиль юзера и что-то там лишнее высчитать. Но если нет карты клиента — тебя отследят еще многими способами, и с этим трудно что-то поделать.

                          Так что, при прочих равных. я бы лучше юзал бесплатный сервис, его хотя бы грамотно годами обслуживают. Более того, если у тебя есть AS и толика желания, с HE можно и BGP поднять (бесплатно), а это куда как приятнее: найди еще одного брокера, который такое умеет, и вот ты совсем от всех независим по адреса (ipv6), тренируйся, качай скил!
                    0
                    Простой способ узнать свой внешний IP
                    curl ifconfig.co
                      +1
                      Для примеров есть специальная сеть IPv4: 192.0.2.0-192.0.2.255 (RFC). Аналогично для IPv6: 2001:DB8::/32 (RFC).

                      Использовать свои или чужие реальные IP (как в Вашем примере с 8.8.8.8) плохо потому, что при размножении инструкции будет масса копировщиков 1:1, даже если у них не будет от этого работать (у меня был злобный реальный случай такого).

                      Так что если у вас нет сурового желания напакостить Гуглу, прошу исправить.
                        +2
                        Что очень характерно: если у провайдера и есть IPv6, то клиенту трудно его использовать, потому что, банально, в интернетах навалом (старых) инструкций «как сделать себе ipv6 через туннель», но совершенно нет внятных руководств «как, имея правильный нормальный IPv6 от своего провайдера, использовать его в жизни.» Грубо говоря, как на роутере на базе Debian, Centos, Mikrotik, D-Link настроить получение подсети IPv6 от своего оператора по pppoe, dhcp, еще каким-то более-менее простым схемам — и то не с первого раза поймешь, а как по сети раздать, чтобы клиенты сети поняли — это еще один квест.

                        Даже по этому посту (по комментам его) заметно — люди обсуждают, какие подсети можно и нельзя раздавать и пр., такое, что в мире ipv4 знают почти все. Есть еще тонкий момент приоритета протоколов внутри ОС: если в адресной строке ввести, скажем, vk.com или google.com, то через что будет делаться запрос, через ipv4 или ipv6? Разные версии разных ОС на это смотрят по-разному, это вопрос настройки — но эту инфу найти не всегда легко. Оператору связи, со своей стороны, внедрять ipv6 нет ни резона (только больше звонков в ТП будет), но желания (так бы сеть обслужить).

                        Замкнуты круг, в общем.
                          0
                          Гм, современный метод подключения у провайдеров — IPOE — без туннеля, IPv6 при наличии придёт сам, (и при наличии роутера не за 500₽ с рынка) современные OS: win 10, iOS, OS X — по умолчанию используют v6 а при не доступности — v4
                            0
                            Ок, но это вы в каком городе? У провайдеров где что сделано, про настройку раздачи подсети с роутера ни слова (а кто сегодня без роутера дома живёт?). А ОС, смею вас уверить, не только 10-ка и макось у людей, а кроме них, целый сонм ios и андроид-девайсов разных же версий.
                            Не все так просто, я вот к чему.
                            На микротике не за 500 руб с рынка приведение пример?
                              0
                              Мне казалось, что аудитория микротиков совершенно точно в состоянии сама настроить себе все что угодно, обычные пользователи покупают SOHO сегмент железа и более простые по настройке роутер.
                                0
                                А вы оригинальный коммент посмотрите мой: я писал о том, что все (обычно довольно старые и перепевающие друг друга) мануалы «как мне настроить дома IPv6» рассказывают о туннелях, и вменяемых руководств «как настроить IPv6, если провайдер дает его, и как его раздать по сети» — кот наплакал. Это, с одной стороны, показывает проникновение IPv6, с другой — дает низкую грамотность вообще населения в вопросе проникновения нового протокола (ему уж немало лет-то).

                                Аудитория микротиков, конечно, пограмотнее, чем аудитория доманишних *-линков, но не всегда знакома с IPv6 (точнее, мало знакома). И в этой ОС хватает подводных камней, и хватает возможностей, которые и ТП провайдера приведут к словам «мы сами не знаем, как вам лучше настроить». А уж про поддержку IPv6 в других технологиях можно плакать книги писать (поднимите IPIP туннель между IPv6 точками, да еще сверху добавьте IPSec, к примеру — дело-то детское).

                                Свой брокер иметь (спасибо автору поста) — это хорошо, но опыта использования у людей мало, так что (даже подняв туннель) нужно учиться и учиться.

                        Only users with full accounts can post comments. Log in, please.