Как подключиться по динамическому ip
Перейти к содержимому

Как подключиться по динамическому ip

  • автор:

Удаленный доступ при динамическом IP или Настраиваем DynDNS в Linux

Оговорки:
— писалось как пособие для начинающих.
— способ не подходит для «серых» IP.

Удаленно управлять рабочим столом можно с помощью TeamViewer. Однако, например, для управления домашним ПК с Linux на борту, если необходима только правка конфигов или работа с файлами, а не с X-приложениями, проще всего использовать ssh. Но как быть, если IP удаленной машины постоянно меняется? В таком случае поможет сервис DynDNS. Принцип его действия прост: сервис создает для вас определенный домен, а ваш компьютер с помощью этого сервиса присваивает домену текущий IP-адрес.

Регистрация аккаунта и домена

DynDNS предусматривает несколько тарифных планов, однако, мы рассмотрим бесплатный вариант его использования. Для создания доменного имени достаточно зарегистрироваться на сервисе и заполнить небольшую форму на сайте Dyn.com. Итак, переходим по ссылке регистрации и заполняем форму:

image

Нажимаем Create Account для создания аккаунта. Проверяем почту, переходим по ссылке в письме, вводим свой пароль и завершаем регистрацию, кликнув на Confirm Account:

image

Аккаунт создан, теперь нам предлагают выбрать тариф из предложенных. По всей странице красочно расписаны платные тарифы, но мы хотим пользоваться сервисом бесплатно, для этого выбираем ссылку «free Dynamic DNS» в самом низу страницы:

image

Переходим к созданию доменного имени. Заполняем форму, выбрав имя своего поддомена, домен, в котором он будет расположен (я выбрал dyndns.org), а также заполняем текущий IP нашего компьютера, который хотим подключить к сервису:

image

Нажимаем Add To Cart, подтверждаем свой выбор, нажимая Proceed to checkout:

image

Домен создан, активируем его работу кнопкой Activate Services:

image

Домен готов к работе:

image

Теперь мы можем приступить к настройке самого компьютера.

Настройка сервиса

Для того, чтобы сервис знал наш текущий IP, необходимо предоставлять ему такие данные. Настроим на компьютере клиент. Переходим в консоль и устанавливаем ddclient (команда приводится для Ubuntu, для не deb-based дистрибутивов можно скачать ddclient и установить вручную):

sudo apt-get install ddclient

Теперь необходимо настроить клиент:

sudo gedit /etc/ddclient.conf

В конфигурационном файле уже присутствует множество параметров настроек, однако, раскомментируем и настроим только самое необходимое:

daemon=300
syslog=yes
mail=root
mail-failure=root
pid=/var/run/ddclient.pid
ssl=yes

server=members.dyndns.org, \
protocol=dyndns2 \
linux-easy.dyndns.org

Очевидно, что вместо астериксов (звездочек) необходимо указать пароль от своего DynDNS-аккаунта. Сохраняем файл конфигурации и перезапускаем ddclient:

sudo /etc/init.d/ddclient restart

После этого компьютер будет сам посылать текущий IP сервису DynDNS, который будет применять его к нашему домену linux-easy.dyndns.org. Теперь мы можем подключиться к нему по ssh или даже по ftp (предварительно настроив ftp-сервер).

Соединение компьютер-компьютер через интернет с динамическими IP

Очень часто мы слышим о том, что установить соединение компьютер-компьютер через интернет с динамическими IP – нереально без внешнего сервера.
А также думал, до определенного времени. Потом у меня закрались подозрения… А после мне стало известно очень многое и тайное.

Однако скайп, аська для передачи файлов, торренты, в конце концов, используют каким-то образом прямое подключение.
Как? Об этом я и хочу рассказать.

Все совпадения случайны, цифры изначально выдуманы.

На самом деле, без внешнего сервера это действительно нереально. Но есть «хаки» и «моды», которые нам помогут.
Я буду сильно разжевывать. Некоторые мои объяснения могут не сойтись с реальностью, но это делается для того, чтобы было понятно как и что работает, поскольку на практике данных знаний хватит.

Теория

NAT – то, что дает каждому из нас иметь возможность подключаться к интернету, кто сидит с IPv4. Если раздать каждому компьютеру IPv4 адрес, то их не хватит.
NAT позволяет нам скрывать определенные сервисы только для сети… И именно из-за него мы не можем, в большинстве, достучаться до компьютера из интернета.

Представьте, что вы подключаетесь к серверу FTP в пассивном режиме.
Ваш внешний адрес: 43.12.102.14
Ваш внутренний адрес: 192.168.0.2
Адрес вашего NAT: 192.168.0.1

Вы создаете TCP соединение с вашего IP 192.168.0.2, создаете запрос на адрес с 21 портом.

Далее запрос попадает на ваш NAT, который создает в своей небольшой таблице соответствие: TCP-соединение внутренний IP 192.168.0.2, порт 21.
Внешне он создает также порт, например, 54321 со своим адресом.
И переадресует ваш запрос на FTP сервер на 21 порт.
Сервер FTP, получая запрос, видит, что запрос установлен с IP 43.12.102.14 и порта 54321.
Теперь, на время соединения, этот порт является переадресатором на ваш компьютер на порт 21 для TCP соединения.
Как только вы закроете соединение, порт провесит от 3-10 секунд и удалится из таблицы NAT.

Большинство UDP соединений и TCP соединений в программах создаются через данные хаки, постоянно поддерживая подключение.

Практика

Давайте я объясню как создается соединение между компьютерами, когда вы сидите, например, в аське.

Вы создаете изначально соединение с сервером ICQ, который открывает вам порт на компьютере, например, 5191. На другом компьютере открывается также порт с номером 5191.
IP и порты этих пользователей в NAT будут выглядеть, например, так:
1 пользователь: 43.12.102.14:56742
2 пользователь: 43.12.102.15:61782

После этого сервер ICQ сообщает каждому клиенту их внешний IP-адрес и внешний порт.
Пользователь 1 делает соединение на этот внешний IP:Port (43.12.102.15:61782) и попадает на внутренний порт 5191.
Пользователь 2 соглашается на соединение с IP:Port пользователя 1 (43.12.102.15:61782), который переадресуется с NAT на пользователя 1 с портом 5191. Далее происходит пересылка файлов и соединение закрывается. Через некоторое время NAT, видя, что внешние и внутренние порты уже не используются и соединение закрыто, удаляет этот порт для того, чтобы использовать для других соединений.

На картинке это будет выглядеть так:

Как реализовать?

Конечно, не каждый из нас на начале своей карьеры имел внешний сервер, который будет говорить каждому пользователю его внешний IP-адрес и порт.

Но для данных решений существуют свои реализации, например, STUN сервера, которые есть по всему миру, даже публичные.
В большинстве, они созданы для UDP протокола, который используется в тех же торрентах. Однако существуют и STUNT сервера для реализации TCP протокола.

Создавайте, творите, все в ваших руках.

P.S.: Не все NAT способны обеспечить такое соединение, однако, большинство закрытых NAT, следящих за IP соединений, не используются в предоставлении услуг провайдеров.

UDP: в данном контексте, динамическими IP, называются IP адреса, которые не являются внешними, а выдаются вышестоящим NAT.

Как подключится по SSH к серверу с динамическим IP?

Подскажите, пожалуйста, как можно это осуществить?

Не знаю, важно ли это, но вот доп данные:
ОС ноута — Ubuntu Server
Роутер — Keenetic 4g
Провадер — МТС (Беларусь)

P.S. Я не нашел, как решить эту проблему адекватно, поэтому написал костыль: своего бота в telegram, который-таки дает доступ к командной строке, но приятных вещей типа автодополнения по табу и передачи файлов нет.

UPD:
Я хочу сделать все бесплатно: без белого IP, без платных сервисов и тд 🙂

  • Вопрос задан более двух лет назад
  • 3535 просмотров

3 комментария

Средний 3 комментария

Saboteur @saboteur_kiev Куратор тега Linux
Так без белого IP или с динамическим IP — это разные вещи ?

traly_valy

Александр Дедунович @traly_valy Автор вопроса

Saboteur, понимаю. В комментах предложили выделить у провайдера себе белый IP. В UPD я указал, какие варианты решения не подходят

Saboteur @saboteur_kiev Куратор тега Linux

Нет, вы не понимаете.
«Как подключится по SSH к серверу с динамическим IP?
«без белого IP»

Динамический и белый IP это вообще несвязанные вещи. Вы уточните у вас динамический белый или нединамический белый, или динамический серый или нединамический серый. А потом уже задавайте вопрос.

Решения вопроса 0
Ответы на вопрос 8

Sanes

Ответ написан более двух лет назад
Комментировать
Нравится 4 Комментировать

Динамический DNS
домашнее через бесплатный hldns.ru имя получают

кстати МТС c Беларусью в свое время сильно топили за продвижение ipv6. проверь работоспособность ipv6

Ответ написан более двух лет назад
Комментировать
Нравится 2 Комментировать

Есть разные формы отсутствия белого ip

К примеру — динамический ip адрес, это когда ip адрес выдается но на какой то промежуток времени (часы-сутки-сессию) а затем меняется — в этом случае достаточно настроить dyndns провайдера (их огромное количество, от бесплатных до опций у платных dns/хостинг провайдеров), вы локально настраиваете какое то приложение (роутеры тоже умеют работать с некоторыми dyndns провайдерами) которое определяет ваш текущий ip адрес и отправляет провадеру, а тот настраивает вам доменное имя на текущий ip адрес тогда обычными настройками роутера открываете порты вашего локального сервера и подключаетесь по dyndns доменному имени.

Если вы за NAT, т.е. даже ваш роутер получает для выхода в интернет адрес из локальной сети (видел такое у мобильных провайдеров) то да, это приговор. Тут варианты только vpn или к примеру reverse ssh port forwarding:

На вашем ноутбуке настраивается автоматическое циклическое подключение ssh к удаленному серверу с белым ip, с настройкой перенаправлений порта вашего уже лкального ssh сервера на тот удаленный. В этом случае для подключения вам достаточно подключиться к удаленному серверу и подключение будет перенаправлено. Развитие вариантов — можно не делать порт удаленный доступным из интернета, и для подключения по ssh нужно будет подключаться сначала к ssh того сервера, так же с настроенным перенаправлением портов, и уже тогда подключиться к своему серверу.

Ответ написан более двух лет назад
Комментировать
Нравится 1 Комментировать

vesper-bot

Любитель файрволлов

Просите у провайдера белый IP-адрес, пробрасывайте на роутере, где вайфай, 22 порт на ноут и вперед. При этом будьте готовы к тому, что не только вы будете пытаться ломиться на него, и озаботьтесь защитой (fail2ban например).

А бесплатно — в самом деле VPN на бесплатную ВМ где-то в облаках и там настраивать проксирование или двойной вход.

Как настроить удаленный доступ к компьютеру с динамическим IP-адресом

Многие жилые сети имеют динамические IP-адреса. Интернет-провайдеру легче управлять динамическими IP-адресами, и большинству людей не нужно подключаться к своей сети извне. Но если вы хотите получить доступ к домашней сети извне, вам понадобится надежная точка подключения. Вот где может помочь динамический DNS, связав ваш динамический IP-адрес с определенным URL.

Что такое динамический IP-адрес?

Как вы, вероятно, знаете, IP-адреса используются для предоставления цифрового «адреса» устройства, подключенного к Интернету. Статические IP-адреса означают, что компьютер или веб-сайт всегда можно получить по этому конкретному адресу. Он неизменный, неизменный и надежный. Динамический IP-адрес означает, что ваш компьютер не имеет фиксированного цифрового адреса. Это затрудняет постоянный доступ к динамическому IP-адресу. Это как если бы номер мобильного телефона вашего друга менялся каждый раз, когда вы хотели ему позвонить. Как узнать новый номер?

Если вы хотите подключиться к сети с динамическим IP-адресом, вы можете использовать службу, называемую динамическим DNS. Это позволяет связывать динамические IP-адреса с записями DNS, которые присоединяют фиксированное имя хоста, например myserver.ddns.net, к изменяющемуся IP-адресу. Для доступа к серверу вместо набора номера через постоянно меняющийся IP-адрес вы должны использовать URL-адрес имени хоста.

Использование динамического DNS

Существует множество различных веб-сайтов, предлагающих услуги динамического DNS. Вы можете выбрать свой любимый, но в наших примерах мы будем использовать no-ip.com. Это бесплатно для частного использования, и его легко настроить. Это не обязательно лучше, чем другие услуги, но это то, к чему мы обратимся в первую очередь.

Сначала мы создадим нашу учетную запись no-ip.com и укажем нужный нам URL. Уровень бесплатного пользования предлагает на выбор лишь несколько доменов. Пока он запоминающийся, не имеет значения, какой из них вы выберете.

динамический IP-адрес-настройка-ddns-url

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

После создания учетной записи загрузите клиент обновления динамического DNS. Это обновит запись DNS с использованием внешнего IP-адреса вашей сети. Клиент доступен как для Windows, MacOS, так и для Linux.

Установите это приложение на свой компьютер, затем откройте приложение и щелкните вводные подсказки.

динамический IP-адрес-установка-воздуховод-установка

После того, как вы ознакомитесь с введением, выберите запись DNS, которую хотите обновить. Затем клиент будет проверять внешний IP-адрес вашей сети каждые пять минут и обновлять запись DNS с учетом любых обнаруженных им изменений.

динамический IP-адрес-установка-дук-установка

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

Открытие и пересылка портов

Помимо фиксированного URL для вашего динамического IP-адреса, вам также необходимо убедиться, что в вашей сети открыты нужные порты. Требуемые порты зависят от службы, которую вы хотите использовать. Вы можете использовать инструмент проверки портов No-IP, чтобы узнать статус любого из портов вашей текущей сети.

динамический IP-адрес-проверка-статус порта

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

Заключение

С помощью службы динамического DNS вы можете легко получить доступ к своей домашней сети из внешних сетей, не используя трудно запоминающийся или постоянно меняющийся IP-адрес.

5 комментариев

Как это влияет на безопасность / анонимность в сети? В конце концов, вы привязываете себя к одному URL-адресу.

Конечно, открытие вашей сети для любого взаимодействия всегда представляет некоторую степень риска для безопасности. Эти URL-адреса, как правило, довольно неясны, а пары URL / IP не публикуются нигде, о которых мне известно. На самом деле это не сильно отличается от оплаты статического IP-адреса. На мой взгляд, это все равно, что иметь номер телефона, но не записывать его в телефонную книгу.

«На мой взгляд, это все равно, что иметь номер телефона, но не записывать его в телефонную книгу».
Имея номер телефона, не внесенный в список, я могу с уверенностью сказать, что с современными технологиями платить за него — пустая трата денег. Кажется, это никому не мешает позвонить вам по номеру.

Я бы посмотрел http://staticip.io. У них отличный сервис

Популярные посты

10 флагов Chrome, которые вы должны включить, чтобы увеличить скорость просмотра

8 лучших провайдеров динамического DNS, которых можно использовать бесплатно

Поддержка Flash закончилась. Сможете ли вы использовать его в 2021 году?

6 лучших альтернатив Amazon

10 лучших ботов Discord для улучшения вашего сервера Discord

Как узнать, когда была опубликована веб-страница

7 лучших сайтов для игр в настольные онлайн-игры с друзьями

Как найти и заменить текст в Chrome и Firefox

26 Firefox Quantum Описание: хитрости с настройкой, которые необходимо изучить

Как скопировать текст с заблокированного сайта в Chrome

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *