Вы находитесь здесь: version6.ru » IPv6: The Hard Way
Различия
Здесь показаны различия между выбранной ревизией и текущей версией данной страницы.
ipv6-the-hard-way [2012-08-31 14:11 UTC] rm |
ipv6-the-hard-way [2017-02-09 12:52 UTC] (текущий) rm |
||
---|---|---|---|
Строка 18: | Строка 18: | ||
==== Получаем IPv6 ==== | ==== Получаем IPv6 ==== | ||
=== Нативный от удалённого провайдера === | === Нативный от удалённого провайдера === | ||
- | Покупаем VPS или выделенный сервер, с которыми "в комплекте" идёт смаршрутизированный блок IPv6: | + | Покупаем [[/vps|Xen или KVM VPS, либо выделенный сервер, с которыми "в комплекте" идёт смаршрутизированный блок IPv6]]. Недостатком этого варианта будет являться то, что весь ваш v6-трафик будет проходить через датацентр хостера, соответственно если вы будете качать по IPv6 нелицензионные торренты, в теории это может привести к закрытию вашего (платного) эккаунта за нарушение ToS/AUP, без возврата денег. |
- | * [[http://www.evorack.com/unmanaged-xen-vps.php|Evorack]]: \\ Xen VPS в UK от 2.5 GBP; 250 гигабайт трафика; одна IPv6-подсеть /64 бесплатно по запросу в техподдержку; | + | |
- | * [[http://iperweb.com/site/budget-vps.php|IperWeb]]:\\ KVM VPS в Италии от 15 евро за полгода; 1 ТБ трафика; /112 в комплекте, по запросу чего-то побольше -- бесплатно выдали /48; также предлагают OpenVZ, но он для наших целей не подходит; | + | |
- | * [[http://www.kimsufi.com/fr/|Kimsufi 2G]]: \\ выделенный сервер во Франции за 15 евро; подсеть /64 в комплекте; внимание: по неподтверждённой информации, UDP-трафик лимитируется (20 мегабитами или меньше); | + | |
- | + | ||
- | Недостатком этого варианта будет являться то, что весь ваш v6-трафик будет проходить через датацентр хостера, соотв-но если вы будете качать по IPv6 нелицензионные торренты, в теории это может привести к закрытию вашего (платного) эккаунта за нарушение ToS/AUP, без возврата денег. | + | |
=== Транзит до tunnelbroker.net === | === Транзит до tunnelbroker.net === | ||
- | Можно также воспользоваться практически любым VPS-хостером (Xen или KVM) из числа не предоставляющих нативного IPv6, либо дающих не подсеть, а какое-то небольшое кол-во адресов (часто можно увидеть предложения с 5-10-15 //штуками// одиночных IPv6-адресов в комплекте). | + | Можно также воспользоваться практически любым VPS-хостером (Xen или KVM) из числа не предоставляющих нативного IPv6, либо дающих не подсеть, а какое-то небольшое количество адресов (часто можно увидеть предложения с 5-10-15 //штуками// одиночных IPv6-адресов в комплекте). |
В таком случае VPS или сервер от этого хостера можно использовать в качестве "перевалочного пункта" на пути от вас до ближайшего к нему туннельного сервера tunnelbroker.net. Таким образом "IPv4 endpoint" для туннеля будет ваша VPS, а уже она будет маршрутизировать приходящую от he.net сеть непосредственно вам. | В таком случае VPS или сервер от этого хостера можно использовать в качестве "перевалочного пункта" на пути от вас до ближайшего к нему туннельного сервера tunnelbroker.net. Таким образом "IPv4 endpoint" для туннеля будет ваша VPS, а уже она будет маршрутизировать приходящую от he.net сеть непосредственно вам. | ||
- | Для этого варианта интересным лично мне видится: | + | Для этого варианта интересными лично мне видятся: |
+ | * [[https://clients.inceptionhosting.com/cart.php?gid=10|InceptionHosting]]: \\ Xen VPS в Нидерландах (близко к Амстердамскому серверу he.net) от 7 EUR/квартал; 300 ГБ исходящего трафика, входящий нелимитирован; | ||
* [[http://nqhost.com/cheap-vps.html|NQhost]]: \\ Xen VPS в Москве за $7/месяц; безлимитные 100 мегабит. | * [[http://nqhost.com/cheap-vps.html|NQhost]]: \\ Xen VPS в Москве за $7/месяц; безлимитные 100 мегабит. | ||
Строка 53: | Строка 49: | ||
==== Раздаём IPv6 ==== | ==== Раздаём IPv6 ==== | ||
Роутинг нужно настроить в двух местах: | Роутинг нужно настроить в двух местах: | ||
- | * На удалённом VPS или сервере, нужно настроить маршрутизацию назначенной вам IPv6-подсети в виртуальный интерфейс Tinc (всё делается в его файле tinc-up, это обычный шелл-скрипт, можно просто вручную прописать там команды на добавление адресов и маршрутов); | + | * На удалённом VPS или сервере, там нужно настроить маршрутизацию назначенной вам IPv6-подсети в виртуальный интерфейс Tinc (всё делается в его файле tinc-up, это обычный шелл-скрипт, можно просто вручную прописать там команды на добавление адресов и маршрутов); |
- | * На вашем домашнем роутере, там всё более привычно: есть внешний интерфейс (созданный Tinc), туда приходит смаршрутизированная сеть, нужно раздать её в LAN, radvd в помощь. | + | * На вашем домашнем роутере, здесь всё более привычно: есть внешний интерфейс (созданный Tinc), туда приходит смаршрутизированная сеть, нужно раздать её в LAN, radvd в помощь. |
Внутри Tinc VPN я рекомендую использовать ULA-адресацию, маршруты же на реальные адреса добавлять через эти внутренние. | Внутри Tinc VPN я рекомендую использовать ULA-адресацию, маршруты же на реальные адреса добавлять через эти внутренние. | ||
- | Для пущей безопасности, ip6tables можно настроить на обоих из этих роутеров, в результате нежелательные попытки соединений и прочий мусорный трафик будут отсекаться ещё на вашем роутере где-то в Европах, и до вас (если вы к примеру в глубинке, на 3G-модеме) даже и близко не долетят. :) | + | Для пущей безопасности, ip6tables можно настроить на обоих роутерах, в результате нежелательные попытки соединений и прочий мусорный трафик будут отсекаться ещё на вашем маршрутизаторе где-то в Европах, и до вас (что может быть важно, если вы, к примеру, сидите в российской глубинке на 3G-модеме) даже и близко не долетят. :) |
Строка 64: | Строка 60: | ||
Итак, зачем же всё это было нужно? Настроив IPv6-туннель по схеме, сходной с указанной выше, мы получаем: | Итак, зачем же всё это было нужно? Настроив IPv6-туннель по схеме, сходной с указанной выше, мы получаем: | ||
- | ==== Редкий диапазон адресов ==== | + | ==== 1. Редкий диапазон адресов ==== |
При использовании первого варианта (удалённого хостера с нативным IPv6), вы получаете адреса из малоизвестного блока, это может быть выгодно по ряду причин, от практических (случались эпизоды попадания всей 2001:470::/32 в K-Line на некоторых IRC-сетях) до эстетических (некоторые считают 2001:470::/32 и особенно 2002::/16 адресами "второго класса" :). | При использовании первого варианта (удалённого хостера с нативным IPv6), вы получаете адреса из малоизвестного блока, это может быть выгодно по ряду причин, от практических (случались эпизоды попадания всей 2001:470::/32 в K-Line на некоторых IRC-сетях) до эстетических (некоторые считают 2001:470::/32 и особенно 2002::/16 адресами "второго класса" :). | ||
- | ==== IPv4-независимость ==== | + | ==== 2. IPv4-независимость ==== |
Без разницы, каким провайдером вы пользуетесь -- к примеру ваш основной провайдер внезапно "упал", и вы переключились на резерв в виде 3G-модема -- Tinc при смене вашего IPv4 очень быстро восстановит связь с удалёнными нодами своей VPN, и вы сможете продолжать пользоваться вашим IPv6-диапазоном как ни в чём не бывало. | Без разницы, каким провайдером вы пользуетесь -- к примеру ваш основной провайдер внезапно "упал", и вы переключились на резерв в виде 3G-модема -- Tinc при смене вашего IPv4 очень быстро восстановит связь с удалёнными нодами своей VPN, и вы сможете продолжать пользоваться вашим IPv6-диапазоном как ни в чём не бывало. | ||
Также пропадает необходимость при динамическом IPv4 постоянно обновлять IPv4 endpoint на удалённом конце туннеля. Tinc автоматически переподнимает VPN при потере связи (к примеру, от переподключения v4-коннекта и смены v4-адреса). | Также пропадает необходимость при динамическом IPv4 постоянно обновлять IPv4 endpoint на удалённом конце туннеля. Tinc автоматически переподнимает VPN при потере связи (к примеру, от переподключения v4-коннекта и смены v4-адреса). | ||
- | ==== "Многоточечность" ==== | + | ==== 3. Распределённость ==== |
Tinc позволяет создать распределённую VPN-сеть, где каждая из нод напрямую общается со всеми другими нодами. На практике, в контексте данной статьи это означает то, что можно подключить в созданную VPN ещё и третьего-четвёртого-десятого клиента, настроив на вашем VPS или сервере маршрутизацию отдельных v6-блоков на локальные адреса для каждого из них. Без разницы, в какой IPv4-сети находится ваш ноутбук, при включении он установит связь с вашей Tinc-сетью, после чего получит возможность использовать свой всегда один и тот же, глобально-статичный IPv6-адрес. Получаем этакий самодельный Mobile IPv6. | Tinc позволяет создать распределённую VPN-сеть, где каждая из нод напрямую общается со всеми другими нодами. На практике, в контексте данной статьи это означает то, что можно подключить в созданную VPN ещё и третьего-четвёртого-десятого клиента, настроив на вашем VPS или сервере маршрутизацию отдельных v6-блоков на локальные адреса для каждого из них. Без разницы, в какой IPv4-сети находится ваш ноутбук, при включении он установит связь с вашей Tinc-сетью, после чего получит возможность использовать свой всегда один и тот же, глобально-статичный IPv6-адрес. Получаем этакий самодельный Mobile IPv6. | ||
- | ==== Шифрование ==== | + | ==== 4. Шифрование ==== |
- | Благодаря Tinc, весь трафик между вашим домашним роутером и удалённым роутером будет передаваться в //зашифрованном// виде. Ваш непосредственный провайдер больше не сможет узнавать, куда вы ходите по вашему v6-туннелю. | + | Благодаря Tinc, весь трафик между вашим домашним роутером и удалённым роутером будет передаваться в //зашифрованном// виде. Злоумышленники больше не смогут перехватить трафик вашего туннеля; однако по-прежнему остаётся вопрос о доверии владельцу другого его конца, и всему что "за" ним. Впрочем для ресурсов требующих безопасности передаваемых данных, в любом случае следует использовать HTTPS. |
- | ==== Сжатие ==== | + | ==== 5. Сжатие ==== |
Благодаря Tinc, весь трафик между вашим домашним роутером и удалённым роутером будет передаваться в //сжатом// виде. Сбылась давняя мечта об "ускорителе интернета", хорошо сжимаемые страницы (а также всякие тестовые файлы, состоящие из одних нулей) имеют шанс передаваться быстрее физической скорости используемого вами интернет-соединения. | Благодаря Tinc, весь трафик между вашим домашним роутером и удалённым роутером будет передаваться в //сжатом// виде. Сбылась давняя мечта об "ускорителе интернета", хорошо сжимаемые страницы (а также всякие тестовые файлы, состоящие из одних нулей) имеют шанс передаваться быстрее физической скорости используемого вами интернет-соединения. | ||
- | ==== Совместимость с NAT ==== | + | ==== 6. Совместимость с NAT ==== |
- | Tinc передаёт все данные поверх UDP (также используя TCP-соединение для т.н. "control connection"). В отличие от используемого в случаях с tunnelbroker.net и 6to4 "протокола 41", для Tinc VPN не требуется внешний IPv4-адрес он отлично работает из-за провайдерских NAT. | + | Tinc передаёт все данные поверх UDP (также используя TCP-соединение для т.н. "control connection"). В отличие от используемого в случаях с tunnelbroker.net и 6to4 "протокола 41", для Tinc VPN не требуется внешний IPv4-адрес -- он отлично работает и позади провайдерских NAT. |
+ | |||
+ | ===== Вопросы? ===== | ||
+ | Обсудить эту статью и задать вопросы об описанной схеме можно в [[irc|наших IRC-каналах об IPv6]]. | ||
+ | |||
+ | ===== Ссылки ===== | ||
+ | * Статья на похожую тему: [[http://habrahabr.ru/post/199040/|Сами себе туннельный брокер IPv6 с помощью OpenVPN и 6to4]] | ||
+ | * Ещё одна: [[http://wiki.nyr.bz/ipv6_tunnel_broker_openvpn_openvz|IPv6 tunnel broker with OpenVPN on OpenVZ]] |
ipv6-the-hard-way.1346422309.txt.gz · Последние изменения: 2012-08-31 14:11 UTC От rm