Как узнать айпи сайта онлайн, проверить ping и настройки DNS

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

Наиболее простым и очевидным вариантом является использование командной строки в Windows или Unix-системе. Причем используемые вами команды могут быть разными, и результаты их ввода также отличаются. Кроме того, можно использовать whois-сервис, позволяющий получить онлайн любую информацию о сайте и его владельце. Давайте же рассмотрим эти способы по порядку.

Как узнать айпи сайта через командную строку?

Определить айпи адрес при помощи командной строки можно с использованием трех команд — ping, tracert и nslookup.

Для открытия командной строки в любой Windows-системе нужно:

  1. Нажать «Пуск».
  2. Выбрать пункт «Выполнить».
  3. Набрать в поле ввода cmd.

После этого откроется командная строка. Альтернативным вариантом ее вызова является сочетание клавиш Win+R и ввод cmd.

Для вызова аналогичной по своим функциям консоли в Unix-системе необходимо:

  1. Нажать «Приложения».
  2. Выбрать пункт «Стандартные».
  3. Нажать «Терминал».

После этого открывается строка терминала. Альтернативным способом является нажатие Alt+F2.

В открытой командной строке или консоли нужно ввести одну из перечисленных выше команд в формате: [команда] [адрес сайта], где [команда] — нужная вам команда, а [адрес сайта] — доменное имя нужного сайта.

От того, при помощи какой команды вы решите проверить ping сайта, зависит результат:

  • ping

Эта команда инициирует обмен пакетами с выбранным узлом, и с ее помощью можно не только проверить ping, но и определить айпи-адрес, который будет указан в квадратных скобках после доменного имени сайта.

  • tracert

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

  • nslookup

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

Как проверить DNS сайта и получить его айпи? Используем whois-сервис

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

  • Информацию о владельце доменного имени

Это поле отображает информацию о том, кто владеет интересующим вас доменным именем — контактные данные, номер телефона, адрес электронной почты и прочее.

  • Срок действия доменного имени

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

  • Информацию о хостинге интересующего сайта

Именно это поле содержит IP-адрес интересующего вас сайта и информацию о компании-хостере, которая обслуживает указанный вами веб-ресурс. Также вы можете проверить DNS сайта, так как эти данные здесь тоже есть.

Использовать такой сервис очень просто: достаточно ввести адрес интересующего вас сайта в строку поиска, и спустя пару минут вы получите всю информацию. Так что если вы не знаете, как проверить настройки DNS, воспользуйтесь сервисом от RigWEB с интуитивно понятным интерфейсом и быстрым отображением необходимых вам данных.

Также наш whois-сервис покажет, свободен ли указанный вами домен, чтобы в случае его незанятости вы смогли сразу же его зарегистрировать на свое имя. А после его регистрации вы легко сможете арендовать у нас хостинг в нужном объеме, чтобы создать свой сайт и пользоваться полным спектром услуг надежного и стабильного хостинг-провайдера.

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

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

Создавайте и развивайте свои сайты с уверенностью в качестве услуг выбранного вами хостера!

Проверка IP-адреса сервера и домена в спам-базах

Инструкции

2 сервиса, которые помогут найти домен в блэклистах

Каждый раз, когда вы отправляете email-письмо, сервер получателя проверяет вашу репутацию. Суть проверки — узнать, добросовестный вы отправитель или нет, можно ли вам доверять. Если с репутацией все ОК, email-письма попадают во «Входящие», если есть сомнения — сообщения уходят в «Спам» или блокируются.

Каждый почтовый провайдер (Gmail, Mail. ru и другие) считают репутацию по-разному. Никто не знает, как работает алгоритм, но на репутацию точно влияют:

  • Контент, дизайн и верстка email-письма.
  • Статистика рассылок: как люди открывают email-письма и переходят по ссылкам, как часто жалуются на спам и отписываются.
  • Качество базы и наличие в ней спам-ловушек.

Также алгоритмы проверяют наличие вашего домена и IP в спам-базах (блэклистах). Попасть в эти списки можно, если в базе есть спам-ловушки или подписчики часто жалуются на спам в email-письмах.

Разбираемся, как проверить IP на спам и при необходимости выбраться из блэклиста.

Как работают черные списки

Популярные блэклисты

Как узнать, находится ли IP-адрес и домен в черных списках

Что делать, чтобы не попасть в блэклист

Как работают черные списки

Черный список (блэклист) — это IP-адреса или домены, которые рассылают спам. Их списки хранятся на серверах, к которым могут обращаться почтовые провайдеры (те же Mail. ru или Gmail). Отправитель, который засветился в одном из блэклистов, получает минус к репутации и с большей вероятностью попадет в спам.

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

Попробуйте сервис рассылки с высокой доставляемостью

Доставляем больше 99% писем. Заботимся о репутации своих серверов. Боремся со спамерами.

Попробовать

Популярные блэклисты

Делюсь 5 блэклистами, которые сильнее всего влияют на доставляемость.

Spamhaus. По нашему мнению, наиболее достоверный блэклист, который всегда заносит IP или домен по делу. Если домен или IP попадут в Spamhaus, email-письма перестанут доставляться на основные почты: Mail.ru, Yandex, Google, Microsoft (Hotmail, AOL, MSN, Live), Yahoo. У Spamhaus хорошая техподдержка, которая быстро реагирует на обращения. Если исправить проблему, IP и домен исключат из блэклиста.

Spamcop. Это не только блэклист, но и сервис, чтобы пользователи могли пожаловаться на рассылку. Если кто-то сделает это, то скоро вам придет уведомление от провайдера с просьбой решить проблему.

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

URIBL. Блэклист только для доменов. Если попасть сюда несколько раз, то выбраться уже практически нереально. На этот блэклист обращают внимание многие почтовики.

Proofpoint. Не столь популярный блэклист, но им пользуются Apple. Если IP попадет в Proofpoint, email-письма перестанут приходить на адреса @icloud.com и @me.com.

Как узнать, находится ли IP-адрес и домен в черных списках

Почти во всех блэклистах можно проверить наличие конкретного IP или домена в списке. Например, можно зайти в Spamhaus Reputation checker и ввести там IP или домен для проверки. На картинке видно, что адрес 87.246.187.125 не содержится в их блэклисте:

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

5.7.1 Service unavailable; client [88.245.185.85] blocked using Cloudmark Sender Intelligence (Visit http://csi.cloudmark.com/reset-request/ if you feel this is in error.)

Это ответ принимающего сервера, который говорит, что сервер использует блэклист Cloudmark Sender Intelligence. Адрес 88.245.185.85 находится в этом черном списке. Перейдя по ссылке http://csi.cloudmark.com/reset-request/ можно подать запрос на удаление IP-адреса из блэклиста.

Чтобы не проверять вручную, в каких IP и DNS блэклистах находятся ваши адреса, можно воспользоваться сервисом MxToolBox. Он проверяет адрес или домен на наличие более чем в 100 блэклистах. Для этого зайдите в раздел Blacklists, введите IP-адрес или домен, и нажмите на кнопку «blacklist check».

На изображении ниже видно, что MxToolBox проверил адрес 87.246.187.125 по 88 блэклистам. Этого IP нет ни в одном из них.

Похожую проверку можно пройти также в сервисе Mail-Tester. Отличие от MxToolBox в том, что Mail-tester даёт ответ не только по блэклистам, но и по контенту email-письма.

Что делать, чтобы не попасть в блэклист

Ответ очень простой: не нужно рассылать спам. А вот понимание, что такое спам, часто отличается у блэклистов и у маркетологов.

Прежде всего, чтобы не попасть в спам-лист, нужно заботиться о гигиене базы. Блэклисты имеют в своем арсенале тысячи спам-ловушек, которые могут подписываться на любые рассылки или просто лежать на разных сайтах. Если email-письмо приходит на адрес спам-ловушки, блэклист имеет все основания считать, что это — спам.

Что считает спамом крупнейший блэклист Spamhaus:

  1. Рассылку без согласия адресатов. Если адресаты не давали согласия на получение писем, то рассылка считается спамом.
  2. Рассылку без двойного подтверждения. Если пользователь не перешел по ссылке в первом письме для подтверждения, то такая рассылка также считается спамом.

Рассылка без двойного подтверждения — боль многих маркетологов. У некоторых компаний просто не настроена эта функция. Это может быть опасно: в рассылку без двойного подтверждения могут попасть спам-ловушки и тогда шансы прописаться в блэклистах возрастут в разы. Рассказываем, как настроить double opt-in.

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

Другие материалы по теме

Поделиться

СВЕЖИЕ СТАТЬИ

Другие материалы из этой рубрики

Не пропускайте новые статьи

Подписывайтесь на соцсети

Делимся новостями и свежими статьями, рассказываем о новинках сервиса

«Честно» — авторская рассылка от редакции Unisender

Искренние письма о работе и жизни. Свежие статьи из блога. Эксклюзивные кейсы и интервью с экспертами диджитала.

Оставляя свой email, я принимаю Политику конфиденциальности

Наш юрист будет ругаться, если вы не примете 🙁

Как запустить email-маркетинг с нуля?

В бесплатном курсе «Rock-email» мы за 15 писем расскажем, как настроить email-маркетинг в компании. В конце каждого письма даем отбитые татуировки об email ⚡️

*Вместе с курсом вы будете получать рассылку блога Unisender

Оставляя свой email, я принимаю Политику конфиденциальности

Наш юрист будет ругаться, если вы не примете 🙁

NAT Punch-through для многопользовательских игр

В игру Spotkin’s Game, Contraption Maker, мы хотели добавить поддержку многопользовательской игры, чтобы люди могли вместе создавать крутые штуковины онлайн. Некоторые инди-игры с поддержкой многопользовательской игры просто просят вас ввести IP-адрес сервера для подключения. Обычно для этого требуется изменить конфигурацию маршрутизатора, чтобы разрешить переадресацию портов, или настроить сервер на общедоступный IP-адрес. Мы хотели, чтобы это был более простой опыт, когда один человек просто создает сервер с таким именем, как «Сервер Кита», а затем другой человек может найти этот сервер в списке своей копии игры и присоединиться. Я нашел в Интернете несколько замечательных ресурсов, описывающих, как это сделать, которые перечислены в конце статьи.

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

Я также должен отметить, что Contraption Maker использует UDP, и что, хотя сквозной доступ через NAT можно выполнить с помощью TCP, у меня нет опыта, как заставить его работать. Все советы в этом посте относятся только к UDP.

Как работает NAT

Если ваш компьютер подключен к Интернету напрямую, вам не нужно беспокоиться о таких вещах, как сквозной NAT. Однако, как только у вас есть маршрутизатор, расположенный между вашим компьютером и Интернетом, ваш компьютер больше не имеет общедоступного IP-адреса. Вместо этого он получает свой IP-адрес от маршрутизатора. Ваш компьютер взаимодействует с остальной частью Интернета, используя так называемый NAT: преобразование сетевых адресов. NAT великолепен — он позволяет нескольким устройствам в вашем доме использовать один общедоступный IP-адрес и защищает эти устройства от сетевых атак с других компьютеров. Недостатком NAT является то, что он немного усложняет подключение вашего компьютера к компьютеру вашего друга, чтобы вы могли играть в игры.

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

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

Как маршрутизатор распознает возвращающиеся пакеты и знает, нужно ли их пропускать? Ответ заключается в том, что помимо IP-адреса у каждого интернет-соединения есть вторая часть — порт, который на самом деле представляет собой просто еще один номер. Когда ваш браузер устанавливает соединение с общедоступным веб-сайтом, поскольку пакеты покидают маршрутизатор с общедоступным IP-адресом, маршрутизатор также прикрепляет к этим пакетам номер порта. Номер порта может быть любым допустимым номером порта (максимум 65535) — не имеет значения, какой именно. Когда веб-сервер отправляет пакеты обратно, они адресуются общедоступному IP-адресу вашего маршрутизатора и порту, который маршрутизатор прикрепил к исходящим пакетам.

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

Как работает NAT Punch-through

Зная, как работает NAT, теперь у нас есть способ заставить два компьютера в Интернете, оба за NAT-маршрутизаторами, общаться друг с другом. Если я знаю, какой порт выберет ваш маршрутизатор, когда ваш маршрутизатор начнет отправлять пакеты мне, и вы знаете, какой порт выберет мой маршрутизатор, когда он начнет отправлять пакеты вам, тогда мы сможем общаться. Хитрость заключается в том, что первый пакет, отправленный каждым маршрутизатором, может быть заблокирован другим маршрутизатором. Но тогда пакеты после этого будут успешными, потому что, как только маршрутизатор отправляет пакеты на IP-адрес/порт, он разрешает пакеты с этого IP-адреса/порта обратно.

Но как ваш компьютер может узнать, какой порт выберет мой маршрутизатор, и как мой компьютер узнает, какой порт выберет ваш маршрутизатор? Вот тут-то и появляется главный сервер. Главный сервер — это сервер, работающий на компьютере с общедоступным IP-адресом. Это не за роутером. Оба наших компьютера, находящиеся за своими соответствующими маршрутизаторами, будут подключаться к главному серверу. Главный сервер будет отслеживать, какие порты выбраны нашими маршрутизаторами, и сообщать другому компьютеру, какой порт использовать.

Теперь конкретный пример. Я создаю сервер Contraption Maker (CM), и мой экземпляр Contraption Maker подключается к главному серверу. Пакет покидает мой компьютер и проходит через мой маршрутизатор. Пакет, покидающий мой маршрутизатор, выбирает случайно выбранный порт моего маршрутизатора. Этот пакет отправляется на главный сервер, и мастер сохраняет IP-адрес и порт, с которого пришел пакет. Теперь главный сервер знает, где живет мой сервер Contraption Maker. Я говорю ему, как называется мой сервер, сколько игроков он поддерживает и т. д.

Теперь ваш компьютер подключается к главному серверу и запрашивает список игровых серверов Contraption Maker. Главный сервер отправляет на ваш компьютер список, содержащий IP-адрес моего CM-сервера и порт, выбранный моим маршрутизатором. На этом этапе вы можете выбрать мой сервер и запросить соединение. Но подождите секунду — если бы ваш компьютер отправил пакет на IP:Port, предоставленный ему мастер-сервером, он был бы отклонен моим маршрутизатором! Почему? Потому что мой маршрутизатор до сих пор не знает, кто вы. Моему маршрутизатору необходимо отправить пакет на ВАШ маршрутизатор, прежде чем он пропустит пакеты с вашего маршрутизатора.

Итак, нам снова нужен главный сервер. Ваша игра Contraption Maker отправляет на главный сервер еще один пакет со словами: «Эй, скажи этому игровому серверу, что я хочу поговорить с ним». Главный сервер отправляет пакет моей игре CM (который проходит через маршрутизатор, потому что я инициировал соединение с главным сервером). Этот пакет содержит IP-адрес и порт на общедоступной стороне ВАШЕГО маршрутизатора. Теперь мой сервер CM отправляет пакет вашему маршрутизатору, и теперь следующий пакет, который ваш компьютер пытается отправить моему, пройдет. Мы связаны!

Запутанно? Это. Вот несколько диаграмм, которые иллюстрируют шаги.

Шаг 1: Компьютеры Кита и Джона подключены к соответствующим маршрутизаторам и запускают Contraption Maker.

Шаг 2: Кейт запускает сервер Contraption Maker, который регистрирует его на главном сервере Contraption Maker.

Шаг 3: Клиент Jon’s Contraption Maker запрашивает список игровых серверов с главного сервера Contraption Maker. Затем он отправляет пакет на главный сервер, сообщая, что хочет подключиться к CM-серверу Кейта. Главный сервер отправляет пакет на CM-сервер Кейта, сообщая ему, что компьютер Джона хочет подключиться к нему. Затем сервер и клиент CM пытаются соединиться друг с другом, что запускает маршрутизаторы с обеих сторон, чтобы пропустить пакеты.

Подводные камни

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

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

3. Бен Гарни, рецензируя этот пост, упомянул, что мастер-серверу рекомендуется выдавать ключ (или одноразовый номер) игровому серверу и клиентам, который можно использовать для проверки того, что клиент подключается к игровой сервер, к которому, по его мнению, он подключается. Эта идея обсуждается далее на http://www.brynosaurus.com/pub/net/p2pnat/.

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

Наконец, для более подробного изучения сквозного доступа NAT я настоятельно рекомендую этот документ: http://www.brynosaurus.com/pub/net/p2pnat/. Если бы я нашел эту статью, в которой есть несколько действительно отличных диаграмм, до написания этого поста в блоге, я бы, возможно, вообще не удосужился написать ее!

Ресурсы:

http://www. brynosaurus.com/pub/net/p2pnat/
http://www.mindcontrol.org/~hplus/nat-punch.html
http://www.raknet. net/raknet/manual/natpunchthrough.html

Нравится:

Нравится Загрузка…

P2P NAT Traversal— Как пробить дыру | Бранимир Малесевич

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

Источник: https://realtechexperts.com/how-does-the-internet-work/

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

И когда сервер получает мой запрос, он может определить мое устройство по моему IP и сказать «Эй, это полутень! Суп, приятель?»… Хотя?

Когда вопрос достаточно ясен, ответ всегда лежит где-то посередине. Технически диапазон адресов IPv4 (который на момент написания статьи был наиболее часто используемым) ограничен 2³² (4 294 967 296) уникальных адресов, что явно слишком мало для современных нужд. Чтобы преодолеть это критическое ограничение, некоторые (http://www.sigcomm.org/sites/default/files/ccr/papers/2015/April/2766330-2766340.pdf) умные головы собрались вокруг и предложили решение под названием — NAT.

Объяснение NAT

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

NAT работает на вашем маршрутизаторе и преобразует частные адреса подключенных к нему устройств (ПК, мобильных устройств, IoT) во внутренней сети в общедоступные IP-адреса для использования в Интернете.

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

NAT можно разделить на типы, зависящие от конечной точки, и независимые от конечной точки.

A. Независимое сопоставление конечной точки (EIM): этот тип NAT позволяет устройству во внутренней сети инициировать подключение к любому IP-адресу в Интернете с использованием того же сопоставления. Он также известен как полноконусный NAT. Любой сервер, к которому пытается подключиться ваше локальное устройство, увидит одно и то же сопоставление IP:PORT.

Сопоставление, не зависящее от конечной точки

B. Сопоставление, зависящее от конечной точки (EDM): Этот тип NAT сопоставляет локальный IP-адрес общедоступному IP-адресу на основе IP-адреса назначения. Он также известен как NAT с ограниченным конусом или адресно-зависимый NAT. Как только соединение с сервером будет установлено, он увидит IP:PORT1. Если устройство подключается к другому серверу, оно увидит другое сопоставление IP:PORT2.

Сопоставление, зависящее от конечной точки

Обход NAT

Обход NAT — это набор методов, используемых для установления соединения между двумя устройствами, которые находятся за разными NAT или брандмауэрами. NAT Traversal часто используется в приложениях P2P, таких как обмен мгновенными сообщениями, обмен файлами и VoIP, для обеспечения прямой связи между устройствами в разных сетях.

Существует несколько методов обхода NAT, обеспечивающих прямую связь между двумя одноранговыми узлами. Некоторые из них:

  1. Пробивка отверстий : Этот метод использует сторонний сервер для координации соединения между двумя устройствами. Устройства отправляют запрос на подключение к серверу, который затем отправляет сообщение на каждое устройство, содержащее IP-адрес и порт другого устройства. Затем устройства могут установить прямое соединение.
  2. UPnP : этот метод использует протокол Universal Plug and Play для автоматической настройки NAT или брандмауэра для переадресации входящих подключений на определенное устройство в частной сети.
  3. STUN & TURN : Эти методы используют сервер STUN для определения общедоступного IP-адреса и порта устройства в частной сети. Затем сервер STUN отправляет эту информацию на другое устройство, которое затем может установить прямое соединение. Серверы TURN используются для ретрансляции трафика между устройствами, если прямое соединение невозможно.
  4. ICE : Этот метод означает установление интерактивного подключения, это комбинация STUN и TURN, он использует оба из них для установления соединения, он использует STUN для поиска общедоступного IP-адреса и порта устройства, и если прямое подключение невозможно, для ретрансляции трафика используется TURN.

Мы постараемся сосредоточиться на пробивании отверстий, так как это самый простой способ понять, как реализовать обход NAT.

Пробивка отверстий

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

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

Внимательные читатели заметят одну вещь: если NAT имеют тип EDM, сервер рандеву и одноранговый узел A не увидят одно и то же сопоставление с одноранговым узлом B, потому что оно меняется в зависимости от пункта назначения. В этом случае необходимо прибегнуть к более разумным решениям, таким как угадывание порта.

Пробивка отверстий UDP считается более простой в реализации, поскольку не требует от устройств установки полного TCP-соединения перед отправкой данных. TCP — это протокол, ориентированный на соединение, для которого требуется трехстороннее рукопожатие перед отправкой данных. Этот процесс может быть более сложным и длительным по сравнению с простой отправкой UDP-пакета. Кроме того, NAT или брандмауэр не всегда позволяют установить TCP-соединение, что может затруднить реализацию пробивания отверстий с помощью TCP. С другой стороны, пробивание отверстий UDP имеет недостаток, который заключается в отсутствии надежности, поскольку UDP является протоколом без установления соединения, не гарантируется, что пакеты достигнут пункта назначения, поэтому не гарантируется, что устройства могут успешно установить прямое соединение. .

Но почему это называется пробивкой отверстий? Если мы разобрались с IP-адресом и портом, это просто отправка запроса на устройство, верно? Оказывается, это не так просто.

NAT блокирует любой входящий трафик, который не был запрошен из локальной сети. Другими словами, если устройство на IP:PORT отправляет пакет на ваш общедоступный интерфейс, NAT заблокирует пакет, если локальное устройство ранее не отправило пакет на IP:PORT. Таким образом, локальная машина фактически пробивает дыру в конфигурации NAT, чтобы пропускать пакеты с IP:PORT.