Как стать автором
Обновить

Если оба компьютера за натом

Время на прочтение2 мин
Количество просмотров19K
На написание данной заметки натолкнули некоторые комментарии к недавней статье “Не слишком щепетильный способ продажи ПО” о программе TeamViewer. Попытаюсь вкратце описать один не слишком сложный и в то же время достаточно универсальный способ “зайти” с одного компьютера на другой, если они оба за натом.

Собственно, к делу. Для того, чтобы установить соединение, на каждом компьютере создадим IPv6-туннель при помощи какого-либо сервиса туннелирования IPv6. Оба компьютера при этом получат полноценный IPv6 адрес и между ними можно будет установить соединение по ssh, vnc или другой технологии. Конечно, если у обоих компьютеров уже есть IPv6 адрес, предоставленный провайдером, никаких телодвижений по поднятию туннелей производить не нужно. К сожалению, подавляющее большинство провайдеров к IPv6 еще не готовы и наличие у пользователя прямого доступа в интернет по IPv6 – большая редкость.

Самым известным сервисом туннелирования IPv6, пожалуй, является вот этот от Hurricane Electric. Для поднятия туннеля нужно пройти регистрацию, получить сеть IPv6 и скопипастить команды для Вашей системы из браузера в консоль.

Есть и более простой способ поднятия туннеля, используя сервис туннелей Freenet6. Сервис предоставляет анонимный доступ (можно не регистрироваться). Для поднятия IPv6-туннеля следует загрузить и запустить программку с их сайта. Для моей kubuntu она уже была в репозитории:

sudo apt-get install gogoc

gogoc при запуске соединяется с сервером и конфигурирует IPv6-туннель. Вот как он выглядит у меня:

$ sudo ifconfig
...
tun       Link encap:UNSPEC  HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00  
          inet6 addr: 2001:5c0:1400:a::45f/128 Scope:Global
          UP POINTOPOINT RUNNING NOARP MULTICAST  MTU:1280  Metric:1
          RX packets:7824 errors:0 dropped:0 overruns:0 frame:0
          TX packets:5269 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:500 
          RX bytes:5057840 (5.0 MB)  TX bytes:771574 (771.5 KB)
...
$ sudo ip -6 route show
2001:5c0:1400:a::6a1 dev tun  proto kernel  metric 256  mtu 1280
2000::/3 dev tun  metric 1 
fe80::/64 dev tun  proto kernel  metric 256 
default dev tun  metric 1 
...


2001:5c0:1400:a::45f – IPv6 адрес, выданный мне Freenet6.

После проделывания аналогичной процедуры на второй машине, можно «зайти» с одной на другую.

$ ssh user@2001:5c0:1400:a::45f

или так
krdc vnc ipv6
Теги:
Хабы:
Всего голосов 58: ↑48 и ↓10+38
Комментарии31

Публикации

Истории

Работа

Ближайшие события

19 августа – 20 октября
RuCode.Финал. Чемпионат по алгоритмическому программированию и ИИ
МоскваНижний НовгородЕкатеринбургСтавропольНовосибрискКалининградПермьВладивостокЧитаКраснорскТомскИжевскПетрозаводскКазаньКурскТюменьВолгоградУфаМурманскБишкекСочиУльяновскСаратовИркутскДолгопрудныйОнлайн
3 – 18 октября
Kokoc Hackathon 2024
Онлайн
24 – 25 октября
One Day Offer для AQA Engineer и Developers
Онлайн
25 октября
Конференция по росту продуктов EGC’24
МоскваОнлайн
7 – 8 ноября
Конференция byteoilgas_conf 2024
МоскваОнлайн
7 – 8 ноября
Конференция «Матемаркетинг»
МоскваОнлайн
15 – 16 ноября
IT-конференция Merge Skolkovo
Москва
25 – 26 апреля
IT-конференция Merge Tatarstan 2025
Казань