Для начинающих:Проброс портов
Проброс портов это технология, позволяющая получать доступ к устройствам в локальной сети из-вне. Это происходит за счет правила, которое работает по условию: если пришел запрос на порт Х (входящий порт), то надо перенаправить трафик на порт Y (исходящий порт) устройства с IP-адресом Z. При этом входящий порт (X) и исходящий порт (Y) могут, как быть одинаковыми, так и различаться.
Для чего нужно?
Проброс портов используется, если надо получить доступ из-вне к терминальному или веб-серверу внутри организации, если используются пиринговые сети. Многопользовательские игры то же иногда используют эту технологию.
Настройка
Для примера мы пробросим 80 порт, он обычно нужен если вы решили разместить у себя в локальной сети веб-сервер с вашим веб-проектом.
В нашем примере: внешний порт маршрутизатора (ether5-WAN1) с адресом 10.1.100.1, внутренний адрес компьютера на котором веб-сервер 192.168.15.15.
Через графический интерфейс
Для того, чтобы пробросить порты надо в меню выбрать IP => Firewall и далее вкладку «NAT». Нажать значок + для добавления нового правила. Далее необходимо выполнить следующие настройки:
- Вкладка General:
- Chain: dstnat
- Protocol: указать протокол 6 (tcp)
- Dst. Port: указать порт входящего соединения.
- In. Interface: выбрать интерфейс входящего соединения
Важно указывать входящий интерфейс, так как в противном случае маршрутизатор может перенаправить трафик с другого интерфейса по создаваемому нами правилу и это может привести к проблемам. Если в приведенном нами примере не указать входящий интерфейс, то в случае попытки из локальной сети открыть сайт по http:// маршрутизатор перенаправит поток на внутренний сервер с адресом 192.168.15.15.
Так же обратите внимание что для других задач, нужно будет указывать другой протокол (к примеру udp) — поэтому вы должны выяснить какие порты и с какими протоколами требуют проброса для вашей задачи (приложения).
- Вкладка Action:
- Action: dst-nat
- To Addresses: указать адрес на который надо выполнить проброс
- To Ports: указать порт на который надо выполнить проброс
Через консоль
Если в качестве входящего порта надо использовать порт, отличный от оригинального. Например, из-вне надо получить доступ по порту 8080, а веб-сервер при этом работает по 80-му порту, то надо соответствующим образом изменить параметр «Destination Port». Dst. Port: в графическом интерфейсе или dst-port в консоли.
Проверка
Воспользуйтесь многочисленными веб сервисами проверки, например этим. Программа, которая должна отвечать по запрашиваемому порту должна быть активна, чтобы при проверке порт виделся как «открытый». Например, порт для веб-сервера на самом деле открыт, но если веб-сервер не запущен, статус порта при проверке будет «закрыт».
зачем делать проброс портов
Быстрый проброс портов на роутере: рабочие инструкции для чайников
Иногда у пользователей персональных компьютеров возникает необходимость удаленного использования сторонних устройств, находящихся в пределах одной локальной сети. Эту возможность обеспечивает сервис сетевого шлюза под названием проброс портов.
Для чего нужен проброс портов? Эта функция создана для обмена информацией между устройствами, трансляции изображения с видеокамер, создания серверов для онлайн-игр и подобных действий.
Как работает технология?
Что такое порты, зачем они нужны и как их перенаправлять, узнаете в следующем видео:
Сетевые технологии используют систему пакетов. Пакеты – блоки данных, которые передают информацию в сети. Пакеты имеют адрес получателя и значение порта. Когда сетевой шлюз получает пакет, он передаёт его дальше на определённый IP-адрес.
Функция перенаправления портов позволяет выбрать адрес получателя пакета по своему усмотрению. Тогда пакеты, поступившие на роутер, будут перенаправляться на соответствующий порт компьютера, подключенного к локальной сети.
Прежде чем перейти к включению и настройке проброса портов, разберёмся с понятием IP-адреса. IP-адрес – это адрес компьютера в сети. Бывают следующие виды IP-адресов: статический и динамический. Подключение к локальной сети происходит через статический IP-адрес.
Присвоить статический IP можно в Центре управления сетями и общим доступом. Для этого выбираем «Интернет» и получаем доступ в такое окно:
В «Свойствах» нажимаем 4 версию протокола:
Выбираем «Свойства» и отмечаем пункт «Использовать следующий адрес», куда пишем статический адрес:
Динамические адреса также дают такую возможность, но после их изменения подключение не работает.
Настройка проброса портов
Как пробросить порт на роутере? Включить проброс портов можно как автоматически, так и вручную. Автоматический способ возможен, если устройство имеет UPup. Эта функция даёт возможность перенаправить порт. По данной теме есть конкретные инструкции для отдельных моделей:
При обмене файлами через приложение торрент или создании локальной сети для игры, нужно удостовериться, что функция UPup включена. На модемах TP-Link это делается следующим образом:
Для модемов фирмы Asus:
Как сделать проброс портов вручную?
Ручная настройка проброса портов требует больше усилий, но этот способ более надёжен. Автоматическая переадресация портов не гарантирует безопасности сети. Ваш роутер может открыть доступ стороннему устройству. Ручная настройка позволяет контролировать процесс передачи данных.
Если вам уже известно, какой порт необходимо задействовать, и вы выполняете проброс для определенной программы, то настройки выполняются следующим образом:
Для дальнейшей настройки понадобиться MAC-адрес компьютера. Его нужно найти при помощи таких действий:
Дальше настраиваем проброс портов на роутере. Для этого нужно изменить установку IP-адреса на статический. На модемах TP-LINK это делается так:
Когда IP и MAC-адреса связаны, нужно настроить параметры переадресации. Найдите раздел «Переадресация», в нём пункт «Виртуальные серверы», нажмите на «Добавить новую…».
В первых двух строках введите номер из параметров торрента и впишите IP-адрес, а из выпадающих окон выберите пункт «Все» и состояние «Включено».
Настройка для роутеров D-Link
В следующем видео – инструкция по пробросу портов на роутере D-Link DIR-300:
Заходим в браузер, вводим свой IP-адрес и авторизуемся. Затем нажимаем на «Межсетевой экран» и заходим в «Мастер настройки виртуального сервера».
Далее заполняем поля:
Альтернативный способ
Заходим в Web-интерфейс, затем в «Расширенные настройки». Здесь выбираем «Межсетевой экран», затем «Виртуальные серверы». Нажимаем «Добавить». После этого нужно заполнить следующие поля:
Внутренний IP – выбираем из списка одно из устройств локальной сети. Удаленный IP – Вводим адрес устройства, для которого необходимо открыть доступ из внешней сети. Либо оставляем поле пустым – это позволит подключаться любому устройству.
Возможные трудности
Как только проброс портов будет настроен, удаленный доступ должен заработать. Но иногда возникают неполадки. Их причиной может быть антивирус или Брандмауэр основного компьютера. Эти программы могут счесть новые подключения опасными.
Чтобы решить эту проблему, нужно зайти в Брандмауэр и разрешить подключение к заданному порту. Брандмауэр можно найти в меню «Пуск» и зайти в окно настроек. Нажимаем на пункт «Дополнительные параметры».
Затем – «Правила для входящих подключений».
Затем – «Создать правило». Выбираем тип правила «Для порта» и жмем далее.
Указываем нужный протокол и порт, на который настроен проброс. Затем жмём на «Разрешить подключение».
Отмечаем профили и вписываем свое имя.
После того, как нужные поля будут заполнены, жмите «Готово». Созданное таким образом новое правило можно изменять, отключать и удалить.
Как альтернативу можно использовать отключение Брандмауэра. Однако делать это не рекомендуется, чтобы не оставить свою ОС без защитника.
Пара слов о безопасности
При включении локальной сети нужно помнить о безопасности компьютера. Используйте сложные пароли и шифруйте личную информацию. Удаленным доступом к вашему компьютеру могут завладеть злоумышленники. Они смогут устанавливать на ваш ПК вредоносное программное оборудование или следить за данными, которые передаются через устройства локальной сети.
Как пробросить порт на роутере?
Некоторые программы, такие как uTorrent самостоятельно открывают для себя порты, при наличии на маршрутизаторе включенного uPnP (протокол для автоматизации настройки). Они обращаются к шлюзу и требуют перенаправить на себя требуемый порт, для корректной работы. Но далеко не все программы умеют это делать, и поэтому приходится настраивать все вручную. Постараемся кратко и без лишних подробностей донести суть вопроса.
Что такое IP? И каких типов он бывает?
IP адрес – это индивидуальный сетевой номер. Для правильной работы, он не должен повторяться с другими устройствами в одном сегменте сети.
Существуют две категории адресов:
Как правило, операторы связи предоставляют серые IP, что позволяет значительно сэкономить и обслуживать большее количество абонентов. Это никак не сказывается на скорости или качестве, а даже наоборот, оберегает пользователей от внешнего воздействия и вирусных угроз.
Сетевой адрес – это временный идентификатор, он выдается всегда на определенный срок, как бы в аренду. Оператор предоставляет его из своего пула (диапазона), и его количество ограничено. Интернет-провайдеру владение белыми IP стоит денег.
Белые IP можно распределить на 2 категории:
Проброс портов настраивается только на белых IP. Только они доступны отовсюду из интернета и ведут на ваш компьютер или шлюз.
А при чем здесь роутер вообще?
Многие задаются вопросом, белый ip имеется, но компьютер не доступен с интернета. А происходит следующее: компьютерам, которые подключены к маршрутизатору, присвоены серые адреса из внутренней сети. А они, как мы уже знаем, не имеют прямого доступа снаружи, из интернета.
В основе работы роутера, лежит сложный механизм трансляции адресов (NAT), который позволяет использовать одно интернет-соединение на нескольких компьютеров одновременно. Своеобразный «разветвитель» интернета…
Работает он следующим образом: внутренние устройства, обращаются к шлюзу при выходе в интернет. Шлюз запоминает эти обращения и открывает для них «сессии». Ответы на запросы вернутся на компьютер, с которого они были отправлены. Одновременно таких сессий может существовать большое количество, таким образом, все устройства имеют выход в интернет и данные приходят на правильные внутренние узлы. Вот именно в этом механизме и работает необходимый нам проброс портов. Создав определенное правило, мы сможем построить прямую связь между открытым портом и конкретным компьютером. Без такого правила наш роутер просто «не догадается», куда требуется направить соединение, и оно останется без ответа.
А что такое порт?
Это определенный номер, на котором «висит» сетевая служба. Например, если вы откроете web-страницу, то сервер отправит вам данные по 80 или 443 порту. На одном порту может быть только один сервис. Для распространенных сервисов определены стандартные номера, (в таблице ниже). К примеру, для удаленного рабочего стола, этот номер 3389, а для FTP – 21
Как открыть порт?
Во-первых, вам необходим фиксированный белый IP, обратитесь к своему интернет провайдеру для подключения данной услуги. Если вы уже имеете статический адрес, приступайте к следующему шагу.
Прежде всего определитесь с задачей, чтобы понять, какой конкретно номер требуется пробросить. Если это игровой сервер, то для его настройки имеется документация, в которой вы найдете нужные номера портов. Если это IP-камера, в её документации также имеется все необходимое.
Номер | Назначение |
---|---|
80, 443 | Веб-сервер |
20, 21, 30000-35000 | FTP сервер |
3389 | Удаленный рабочий стол |
22 | SSH |
23 | Telnet |
3306 | MySQL |
Перейдите в настройки вашего маршрутизатора. О том, как попасть туда подробно изложено в инструкции пользователя. Как правило, это делается через адресную строку браузера. В поле адреса введите ip шлюза (http://192.168.0.1), а затем авторизуйтесь при помощи логина и пароля.
Проброс портов и настройка роутера для внешнего доступа
Содержание
Содержание
Домашний роутер обычно не дает возможности добраться из внешнего Интернета до компьютеров во внутренней сети. Это правильно — хакерские атаки рассчитаны на известные уязвимости компьютера, так что роутер является дополнительным препятствием. Однако бывают случаи, когда доступ к роутеру и его локальным ресурсам из «внешнего мира» становится необходим. О том, в каких случаях бывает нужен доступ извне, и как его безопасно настроить — эта статья.
Зачем открывать доступ извне?
Доступ «снаружи» нужен не только в экзотических случаях вроде открытия игрового сервера или запуска сайта на домашнем компьютере. Гораздо чаще приходится «открывать порт» для многопользовательской игры, а это — как раз предоставление внешнему пользователю (серверу игры) доступа к внутренней сети (порт компьютера). Если необходимо удаленно подключиться и настроить компьютер или роутер, скачать файл-другой из домашней сети, находясь в командировке, или посмотреть видео с подключенных к домашней сети IP-камер — нужно настроить доступ.
Цвета и формы IP-адресов
Прежде чем разбираться, как открыть доступ к своим ресурсам, следует понять, как вообще происходит соединение в сети Интернет. В качестве простой аналогии можно сравнить IP-адрес с почтовым адресом. Вы можете послать письмо на определенный адрес, задать в нем какой-то вопрос и вам придет ответ на обратный адрес. Так работает браузер, так вы посещаете те или иные сайты.
Но люди общаются словами, а компьютеры привыкли к цифрам. Поэтому любой запрос к сайту сначала обрабатывается DNS-сервером, который выдает настоящий IP-адрес.
Допустим теперь, что кто-то хочет написать письмо вам. Причем не в ответ, а самостоятельно. Не проблема, если у вас статический белый адрес — при подключении сегодня, завтра, через месяц и год он не поменяется. Кто угодно, откуда угодно, зная этот адрес, может написать вам письмо и получите его именно вы. Это как почтовый адрес родового поместья или фамильного дома, откуда вы не уедете. Получить такой адрес у провайдера можно только за отдельную и регулярную плату. Но и с удаленным доступом проблем меньше — достаточно запомнить выданный IP.
Обычно провайдер выдает белый динамический адрес — какой-нибудь из незанятых. Это похоже на ежедневный заезд в гостиницу, когда номер вам выдается случайно. Здесь с письмом будут проблемы: получить его можете вы или другой постоялец — гарантий нет. В таком случае выручит DDNS — динамический DNS.
Самый печальный, но весьма распространенный в последнее время вариант — серый динамический адрес: вы живете в общежитии и делите один-единственный почтовый адрес с еще сотней (а то и тысячей) жильцов. Сами вы письма писать еще можете, и до адресата они дойдут. А вот письмо, написанное на ваш почтовый адрес, попадет коменданту общежития (провайдеру), и, скорее всего, не пойдет дальше мусорной корзины.
Сам по себе «серый» адрес проблемой не является — в конце концов, у всех подключенных к вашему роутеру устройств адрес именно что «серый» — и это не мешает им пользоваться Интернетом. Проблема в том, что когда вам нужно чуть больше, чем просто доступ к Интернету, то настройки своего роутера вы поменять можете, а вот настройки роутера провайдера — нет. В случае с серым динамическим адресом спасет только VPN.
Кто я, где я, какого я цвета?
С терминологией разобрались, осталось понять, какой именно адрес у вас. У большинства провайдеров фиксированный адрес стоит денег, так что если у вас не подключена услуга «статический IP-адрес», то он наверняка динамический. А вот белый он или серый гусь — это нужно проверить. Для начала надо узнать внешний IP-адрес роутера в его веб-интерфейсе и сравнить с тем адресом, под которым вас «видят» в Интернете.
В админ-панели роутера свой IP можно найти на вкладках «Информация о системе», «Статистика», «Карта сети», «Состояние» и т. п. Где-то там нужно искать WAN IP.
Если адрес начинается с «10.», или с «192.168.», то он определенно «серый» — большинство способов открытия доступа работать не будет и остается только VPN.
Если же адрес выглядит по-другому, надо посмотреть на него «снаружи» с помощью одного из сервисов, показывающих ваш IP-адрес, например, http://myip.ru/.
Если адрес, показанный на сайте, совпадает с тем, что вы увидели в веб-интерфейсе, то у вас честный «белый» адрес и доступ из «большого мира» не вызовет особых затруднений — остается только настроить «пробросы» на роутере и подключить DDNS.
Что такое порты и зачем их бросать?
Порт — это пронумерованное виртуальное «устройство», предназначенное для передачи данных по сети. Каждая сетевая программа использует для установления связи отдельный порт или группу портов. К примеру, браузеры используют TCP-порт 80 для незашифрованного трафика (http) и 443 для зашифрованного (https).
Проброс порта — это специальное правило в роутере, которое разрешает все обращения извне к определенному порту и передает эти обращения на конкретное устройство во внутренней сети.
Необходимость «проброса» портов обычно возникает при желании сыграть по сети в какую-нибудь игру с компьютера, подключенного к роутеру. Впрочем, это не единственная причина — «проброс» потребуется при любой необходимости получить «извне» доступ к какому-нибудь конкретному устройству в вашей локальной сети.
Разрешать к компьютеру вообще все подключения, то есть пробрасывать на него весь диапазон портов — плохая идея, это небезопасно. Поэтому роутеры просто игнорируют обращения к любым портам «извне». А «пробросы» — специальные исключения, маршруты трафика с конкретных портов на конкретные порты определенных устройств.
Игровые порты: что, куда бросаем?
Какой порт открыть — зависит от конкретного программного обеспечения. Некоторые программы требуют проброса нескольких портов, другим — достаточно одного.
У разных игр требования тоже отличаются — в одни можно играть даже с «серого» адреса, другие без проброса портов потеряют часть своих возможностей (например, вы не будете слышать голоса союзников в кооперативной игре), третьи вообще откажутся работать.
Например, чтобы сыграть по сети в «Destiny 2», нужно пробросить UDP-порт 3074 до вашей «плойки», или UDP-порт 1200 на Xbox. А вот до ПК потребуется пробросить уже два UDP-порта: 3074 и 3097.
В следующей таблице приведены некоторые игры и используемые ими порты на ПК:
Проброс портов
Иногда возникает необходимость доступа извне к устройству, которое расположено в локальной сети. Например, если это IP-видеокамера или сервер используемый для игр, возможно, требуется использовать удаленное управление каким либо из компьютеров. Таких устройств может быть достаточно много в локальной сети. В этой статье разберемся, как осуществляется доступ с помощью проброса портов.
О пробросе портов
Локальная сеть (LAN) организована таким образом, что у устройств, находящихся в ней есть доступ во внешнуюю сеть (WAN), в то время как из глобальной сети получить доступ в локальную не получится.
Зачастую требуется открыть доступ к устройствам, находящимся в локальной сети. Например, если у вас есть FTP сервер и нужно, чтобы знакомые могли к нему подключаться, скачивать и обновлять файлы. Для того, чтобы получить доступ к файлам, хранящимся на нем, требуется открыть порты. В этом случае сделать так, чтобы пакеты пришедшие на 21 порт роутера (стандартный порт FTP) перенаправлялись на 21 порт компьютера, находящегося в локальной сети, на котором запущен FTP сервер.
Не обязательно, чтобы номер открытого порта на роутере был таким же, как и на сервере.
После перенаправления портов, TCP и (или) UDP пакеты, пришедшие на заданный порт роутера, будут перенаправлены на нужный порт устройства, находящегося в локальной сети. Для этого нужно, чтобы IP-адрес роутера был белый (статический внешний IP-адрес). О белых и серых IP адресах будет рассказано ниже.
Вот еще пример — есть несколько видеокамер в локальной сети, у каждой из них свой IP-адрес. С помощью программы удаленного управления можно подключаться к устройствам по определенному порту. Видеокамеры могут быть установлены в локальной сети одного объекта. Если мы хотим получить доступ к ним через интернет, это можно организовать с помощью проброса портов.
Теперь разберемся по пунктам как это все должно быть устроено, на что следует обратить внимание.
Внешний IP-адрес
IP-адрес может быть:
Внешние IP-адреса называются белыми, в то время как внутренние, к которым нет возможности получить доступ из глобальной сети — серыми.
Узнать свой IP-адрес можно с помощью разных сервисов, например, 2ip.ru, myip.ru, myip.com.
Безопасность
Так как в случае проброса портов будет открыт доступ к устройствам, находящимся внутри вашей локальной сети, особое внимание следует уделить безопасности:
В этом случае злоумышленник может:
Подключение
Перед настройкой проброса портов, следует подключиться к роутеру. У роутера обычно по умолчанию IP-адрес 192.168.0.1 или 192.168.1.1. Логин по умолчанию admin, а пароль может быть тоже admin, иногда 1234. Настройки роутера по умолчанию указываются на наклейке с тыльной стороны.
Вводим адрес роутера в браузере. На рисунке фото выше это 192.168.1.1, на запрос имени пользователя и пароля — заполняем соответствующие поля. После этого попадаем в главное меню роутера.
Установка статических адресов
У оборудования, к которому надо дать доступ из внешней сети, могут быть адреса в локальной сети:
При использовании DHCP сервера, если у устройств заданы статические IP-адреса, следует проследить, чтобы они не были из диапазона раздаваемых динамически. Это для того, чтобы новое устройство, подключенное к сети, случайно не получило такой же IP-адрес.
Если же IP-адрес получен динамически, то следует его закрепить за устройством по MAC адресу. Это делается в настройках DHCP сервера. На рисунке ниже показан пример резервирования адреса. После резервирования, следует перезагрузить маршрутизатор.
Настройка проброса портов
После того, как все подготовили, можно настроить проброс портов на роутере. Это осуществляется путем заполнения таблицы, в которой указаны:
Роутер будет проверять все входящие пакеты. IP-пакеты пришедшие на указанный порт роутера будут перенаправлены на выставленный порт устройства.
В настройках переадресации добваляем новый виртуальный сервер.
Запись настраивается следующим образом:
Пункт «стандартный порт сервиса» предназначен только для того, чтобы упростить выбор портов. При выборе нужного сервиса, их номера просто подставятся в поля «порт сервиса» и «внутренний порт». Ниже будут рассмотрены основные сервисы.
После того как все настройки выполнены, следует их сохранить.
Номера портов
Следует обратить внимание, что номера портов могут задаваться в диапазоне от 0 до 65536.
На компьютере эти порты делятся на следующие группы :
Если для проброса портов вам нужно выбрать любой порт, который будет открыт на роутере, то без особой необходимости желательно не использовать системный диапазон. Лучше всего в таком случае открывать порты на роутере из динамического диапазона.
Стандартные сервисы
Для организации доступа к сервисам, некоторые роутеры помогают правильно выбрать номер порта автоматически. Таким образом, можно сделать так, что при обращении к порту FTP из интернета, обращение переадресовывалось на FTP сервис, запущенный на одном из локальных компьютеров. Рассмотрим основные:
Сервис | Порт | Пояснение |
DNS | 53 | Преобразование символьного наименования в IP-адрес |
FTP | 21 | Хранение и передача файлов |
GOPHTER | 70 | Хранение и передача документов |
HTTP | 80 | Получение информации с сайтов |
NNTP | 119 | Сервер новостей |
POP3 | 110 | Получение почты |
PPTP | 1723 | Защищенное соединение |
SMTP | 25 | Прием и передача почты |
SOCK | 1080 | Передача минуя межсетевой экран |
TELNET | 23 | Управление в текстовом виде |
Брандмауэр
После настройки проброса портов на роутере все должно работать. Но то же делать, если все равно не удается подключиться? В таком случае следует проверить настройки антивируса и брандмауэра Windows на компьютере, к которому осуществляется подключение. Возможно они считают подключения подозрительными и не дают доступ. В этом случае в брандмауэре следует прописать правило, разрешающее подключение к заданному порту.
В настройки брандмауэра проще всего попасть двумя способами:
В дополнительных параметрах выбрать правила для входящих подключений. Там создаем новое правило. Рассмотрим это подробно.
Два раза щелкаем мышью по пункту «Правила для входящих подключений». После этого в правой колонке, которая называется «Действия» жмем на «Создать правило…».
Выбираем тип правила «Для порта» и жмем далее.
Выбираем необходимый протокол. В большинстве случаев это TCP. Указываем локальный порт, для которого мы ранее настраивали проброс порта на маршрутизаторе. Можно задавать сразу несколько портов через запятую или диапазон через «-«.
Выбираем «Разрешить подключение».
Указываем галочками профили.
Пишем свое имя для правила. Желательно выбрать такое имя, чтобы потом было легко его найти, в случае если решити отключить это правило или видоизменить. Можно для себя оставить пометку в виде описания, чтобы потом было легче разобраться для чего это правило было создано.
После того как параметры были настроены, жмем кнопку «Готово». Созданное правило автоматически добавится в список правил для входящих подключений и активизируется. При необходимости его можно редактировать, отключить или удалить.
Отключение брандмауэра
В основном меню брандмауэра имеется пункт «Включение и отключение брандмауэра Защитника Windows».
Выбрав этот пункт, можно отключить брандмауэр. Но это делать не рекомендуется, разве что для проверки того, что именно брандмауэр влияет на то, что не удается открыть порт.
Проброс портов на роутере TP-Link и Asus в примерах
Время от времени посетителей сайта интересуют вопросы по переадресации портов на маршрутизаторе. В этой публикации, я постараюсь ответить на часто задаваемые вопросы и покажу, как сделать проброс портов на роутере TP-Link и Asus. Если поймете принцип, то сможете по аналогии открыть порт на таком сетевом устройстве от другого производителя. Для чего нужен проброс портов? Дело в том, что в роутере есть встроенный брандмауэр, который защищает от несанкционированного доступа к компьютеру. Некоторые программы, такие как клиенты для P2P сетей uTorrent и DC++ обмениваются информацией (раздача/закачка файлов) посредством заданного порта в их настройках.
Чтобы P2P клиент мог беспрепятственно работать с входящим и исходящим трафиком, в роутере для него нужно открыть указанный в программе порт. Таким образом, вы скажете брандмауэру, что на этот порт можно пропускать или принимать пакеты с данными. Если этого не сделать, то при обращении программы к сети интернет, брандмауэр воспримет такое подключение, как потенциально опасное и заблокирует соединение.
Также Вам может понадобиться сделать проброс портов в том случае, если вы например, будете настраивать систему видео наблюдения, через интернет, чтобы открыть изображение с IP-камеры или создадите у себя на компьютере игровой сервер и захотите с друзьями поиграть онлайн. Таким образом вы сможете открыть порт для компьютера и Ваши приятели подключиться к созданному вами серверу. В общем причины по которым может понадобиться сделать переадресацию портов на роутере, могут быть самыми разными.
Настроить проброс портов можно автоматически или задать их в ручную. В первом случае, Вам достаточно будет в интерфейсе роутера включить функцию UPnP, а во втором — нужно будет сначала присвоить цифровому устройству статический IP-адрес и только после этого, можно будет сделать перенаправление портов. Несколько слов о первом и втором способе.
Автоматическое переключение. Обычно функция UPnP на роутере активирована по умолчанию и подходит для P2P клиентов, телевизоров, компьютеров, игровых консолей потому, что все они могут работать по этой технологии. Этот способ подходит для вышеперечисленных P2P клиентов, но может не работать с некоторыми приложениями, серверами… Функция UPnP открывает порт для запущенного на компьютере приложения и закрывает его после выключения программы.
По скольку UPnP делает автоматический проброс портов, то вполне возможно, что эта функция может открыть не рекомендуемый для доступа порт из соображений безопасности. Однако этот предположение не должно вас беспокоить, но если вы хотите все держать под контролем, то проведите тест на специализированном сервисе или выполните ручную настройку.
Ручная переадресация. Для неосведомленных пользователей, этот способ может показаться весьма сложным, но он контролируемый и более правильный. Однако при каких-то изменениях в настройках домашней сети, придется все настраивать заново и поэтому он немного не удобен.
Я покажу оба способа настройки, а какой из них вам ближе, решайте сами.
Автоматическое переключение портов на роутере TP-Link и Asus.
Я уже говорил, что по умолчанию функция UPnP на маршрутизаторе обычно включена и P2P клиенты неплохо с ней работают. Но если все же возникают неполадки в работе, не будет лишним в этом убедиться. Первым делом нужно войти в интерфейс роутера и перейти на вкладку отвечающую за активацию. У каждой модели, этот путь разный.
TP-Link. «Переадресация» (Forwarding) — «UPnP». Должен быть статус «Включено» (Enabled).
Если данная функция будет не активна, то нажмите кнопку «Включить».
Asus. «Интернет» — «Подключение» — «Включить UPnP».
После активации этой функции в маршрутизаторе, нужно проверить включена ли функция UPnP в P2P клиенте (uTorrent и DC++). Здесь тоже у каждой программы свой путь.
uTorrent. «Настройки» — «Настройки программы» и вкладка «Соединения». В чекбоксе «Переадресация UPnP» должна стоять галочка (обычно активна по умолчанию).
DC++. Перейдите в настройки и найдите вкладку «Настройки программы». Здесь должен быть отмечен пункт «Фаервол с UPnP».
С каждой новой версией программы, интерфейс может немного отличаться, но принцип думаю понятен. Таким образом активировав функцию UPnP программы будут сами себе открывать и закрывать порты. Обычно uTorrent с функцией UPnP работает без проблем, чего не скажешь о DC++.
Ручная переадресация портов на роутере TP-Link и Asus.
Для начала нужно определиться с номером порта, который мы хотим открыть. Например, мы хотим сделать проброс портов для торрента. Идем в настройки программы по уже знакомому пути и смотрим в строку «Порт входящих соединений». Запишите номер из окна для генерации и снимите все галочки кроме пункта «В исключения брандмауэра». Не забудьте применить сделанные изменения.
Теперь нужно узнать MAC-адрес своего устройства. В нашем случае это компьютер и его физический адрес нам понадобиться позже. Нажмите кнопку «Пуск» — «Панель управления» — «Центр управления сетями и общим доступом» — «Подключение по локальной сети» и нажмите кнопку «Сведения…». В поле «Физический адрес» вы увидите MAC-адрес своего компьютера.
Теперь зайдите в интерфейс маршрутизатора. Здесь первым делом, нам нужно для своего компьютера задать статический IP-адрес. Далее путь для каждого сетевого устройства свой.
TP-Link. В правом меню найдите «Привязка IP- и MAC-адресов» и перейдите на вкладку «Таблица ARP». Здесь отображены все устройства, которые подключены к нашей сети, а в столбце «Состояние» показан статус привязки (несвязанно). Поскольку мы уже знаем MAC-адрес компьютера, то в строке с физическим адресом видим присвоенный ему IP сервером DHCP. Его мы впишем на следующей вкладке.
Поднимитесь на вкладку выше с названием «Параметры привязки» и активируйте «Связывание ARP» и нажмите «Сохранить». Далее следует нажать кнопку «Добавить новую…» и задать параметры необходимые настройки. В новом окне нужно прописать физический адрес компьютера (MAC), присвоенный ему IP и нажать кнопку «Сохранить».
Теперь MAC- и IP- адреса связаны между собой для персонального компьютера. Об этом также свидетельствует вкладка «Таблица ARP». Если у Вас много устройств в сети и вы желаете им всем задать статический IP, то можно в «Таблице ARP» нажать кнопку «Связать все» предварительно активировав «Связывание ARP».
Осталось задать параметры для проброса портов. Зайдите в «Переадресация» (Forwarding) на вкладку «Виртуальные серверы» (Virtual Servers) и нажмите кнопку «Добавить новую» (Add New…). Теперь прописываем известные нам параметры. В поле «Порт сервиса» (Service Port) и «Внутренний порт» (Internal Port) указываем порт торрент-клиента, а в «IP-адрес» присвоенный IP компьютеру. В выпадающем списке «Протокол» (Protocol) выбираем «Все» (All) и в поле «Состояние» (Status) ставим «Включено» и нажимаем «Сохранить».
После этого для компьютера будет зарезервирован прописанный нами порт и P2P клиент сможет обмениваться входящими и исходящими пакетами.
О принципе по которому работает роутер можно узнать здесь.
Asus. Нажмите в боковом меню «Локальная сеть» и перейдите на вкладку «DHCP-сервер». В самом низу страницы активируйте пункт «Включить назначения вручную». Ниже есть поле «Список присвоенных вручную IP-адресов в обход DHCP». Вот он то нам и нужен. В выпадающем списке поля «MAC-адрес» нужно выбрать физический адрес компьютера, который мы узнали заранее. Поскольку у меня включен DHCP, то в поле «IP-адрес» автоматически подставился текущий IP компьютера.
Осталось кликнуть по кружку «Добавить/Удалить» и нажать кнопку «Применить». Роутер перезагрузится и после каждого подключения к сети, компьютер будет иметь один и тот же IP-адрес.
Теперь в административной панели в боковом меню кликните по «Интернет» и перейдите на вкладку «Переадресация портов». В строке «Включить переадресацию портов» переставьте точку в положение «Да». Далее нужно опуститься в блок «Список переадресованных портов» и в поле «Имя службы» указать uTorrent, поскольку мы открываем порт для этой программы. В строке «Диапазон портов» указываем номер порта P2P клиента, который мы узнали заранее.
В поле «Локальный IP-адрес» выбираем статический IP-адрес компьютера, который мы только что привязали и в строке «Локальный порт» снова указываем порт Torrent-клиента. В выпадающем списке «Протокол» выбираем BOTH (оба протокола). Осталось кликнуть по кружку «Добавить» и кнопку «Применить». После презегрузки порт будет открыт для раздачи и закачки файлов из интернета от программы uTorrent.
Теперь вы имеете представление о том, как настроить проброс портов на роутере TP-Link и Asus. Безусловно автоматический способ намного удобнее, чем ручной и многие люди используют функцию UPnP, но правильнее задавать все настройки в ручную. Однако, это дело каждого и вы вольны выбрать способ, который вам ближе.
Если возникнут какие-то проблемы, то вы всегда можете сбросить установки роутера до заводских и настроить его заново. Если у Вас есть желание дополнить статью, то милости просим в комментарии. Пока!
Открываем порты за NAT при помощи NAT-PMP и UPnP IGD
Ранее я много раз слышал, что UPnP каким-то образом умеет самостоятельно открывать порты (производить Port Forwarding на роутере) по запросу от хоста из локальной сети. Однако, то, каким именно образом это происходит, и какие протоколы для этого используются, доселе было покрыто для меня пеленой тумана.
В данной статье я хочу кратко рассказать, как работают два механизма для проброса портов, а именно NAT Port Mapping Protocol и Internet Gateway Device (IGD) Protocol, входящий в набор протоколов UPnP. К своему удивлению я обнаружил, что в рунете информация по данному вопросу более чем скудна, что и сподвигло меня на написание данной заметки.
Для начала приведу краткий FAQ:
Q: Для чего нужны данные протоколы?
A: Для формирования на маршрутизаторе правила проброса определенного TCP/UDP порта (Port Forwarding) не вручную, а «автоматически», т.е. по запросу от хоста во внутренней сети.
Q: Как это реализуется?
A: Устройство за NAT отправляет маршрутизатору запрос с указанием внутреннего и внешнего номеров портов и типа протокола (TCP/UDP). Если указанный внешний порт свободен, маршрутизатор формирует у себя правило трансляции и рапортует запросившему компьютеру об успешном выполнении запроса.
Q: Проводится ли на маршрутизаторе аутентификация/авторизация запросов на открытие порта?
A: Нет, не проводится.
Теперь же рассмотрим работу данных протоколов более подробно (под катом).
Port Mapping Protocol
NAT-PMP описан в RFC 6886. Для своей работы он использует UDP-порт сервера 5351.
Рассмотрим работу протокола на конкретном примере — торрент-клиенте Vuze 5.7 для Windows 7.
Примечание: NAT-PMP во Vuze по умолчанию выключен. Его необходимо активировать в настройках плагинов.
1. Запускаем Wireshark. В строке фильтра вводим nat-pmp
2. Запускам Vuze.
3. Останавливаем перехват пакетов, смотрим результаты.
У меня получилось следующее:
Всего видим 6 пакетов (3 запроса и 3 ответа).
Первые 2 это запрос внешнего адреса маршрутизатора и ответ с указанием этого самого адреса. Не будем на них подробно останавливаться и лучше рассмотрим, как происходит маппинг портов на примере пакетов 3-4.
Здесь мы видим, что запрашивается проброс внешнего UDP порта 48166 на такой же внутренний порт. Интересно, что внутри протокола не указывается адрес хоста, на который должна происходить трансляция (Inside Local в терминологии Cisco). Это означает, что маршрутизатор должен взять адрес источника пакета из IP-заголовка и использовать его в качестве Inside Local.
Параметр Requested Port Mapping Lifetime ожидаемо означает время жизни записи в таблице трансляций.
Как мы видим, маршрутизатор предполагаемо создал запрашиваемую трансляцию и ответил кодом Success. Параметр Seconds Since Start of Epoch означает время с момента инициализации таблицы трансляций (т.е. с момента последней перезагрузки роутера).
Маппинг TCP-портов происходит точно также и отличается только значением поля Opcode.
После того, как приложение прекратило использовать данные порты, оно может послать маршрутизатору запрос на удаление трансляции.
Главное отличие запроса на удаление от запроса на создание заключается в том, что параметр Lifetime устанавливается в ноль.
Вот что произойдет, если мы закроем Vuze.
На этом рассмотрение NAT-PMP закончено, предлагаю перейти к несколько более «мудреному» UPnP IGD.
Internet Group Device Protocol
Для обмена своими сообщениями данный протокол использует SOAP.
Однако, в отличие от NAT-PMP, IGD не использует фиксированный номер порта сервера, поэтому перед тем, как обмениваться сообщениями, нужно сперва этот порт узнать. Делается это при помощи протокола SSDP (данный протокол является частью UPnP и используется для обнаружения сервисов).
Запускаем торрент-клиент. Он формирует SSDP-запрос и отсылает его на мультикастовый адрес 239.255.255.250.
Маршрутизатор формирует ответ и отправляет его уже юникастом:
Внутри ответа мы можем увидеть URL для взаимодействия с маршрутизатором по протоколу IGD.
Далее Vuze подключается к маршрутизатору по указанному URL и получает XML с информацией о данном устройстве, в том числе содержащую набор URI для управления некоторыми функциями маршрутизатора. После того, как нужный URI найден в rootDesc.xml, Vuze отправляет SOAP-запрос на содание NAT-трансляции по найденному URI.
Примечание: до того, как запросить создание трансляции, Vuze заставил маршрутизатор перечислить все имеющиеся Port Forwarding’и. Для чего это было сделано, я могу лишь догадываться.
SOAP-запрос на создание трансляции UDP-порта:
Как говорилось ранее, нужный URI (идет сразу после POST) Vuze взял из rootDesc.xml. Для добавления трансляции используется функция с названием AddPortMapping.
Также можно отметить, что, в противоположность NAT-PMP, Inside Local-адрес указывается внутри самого протокола.
Аналогично NAT-PMP, при закрытии торрент-клиента маппинги проброшенных портов удаляются. Делается это функцией DeletePortMapping:
Можно заметить, что для удаления правила достаточно указать только тип протокола (UDP) и номер внешнего порта, не указывая остальные параметры.