Все о портах. И как правильно открыть порты
С недавнего времени участились случаи с вопросами, когда необходимо открыть порт на своем маршрутизаторе для игры или какой либо программы. Данная статья дополнит основную статью про порты, и прояснит ситуацию.
Все уже давно используют имитаторы LAN (локальной сети), после того, как некоторые провайдеры в начале нового десятилетия, отключи всех своих абонентов от локальной сети, оставив им только подключение по каналу «Интернет».
Именно с того момента и пошла популяризация имитаторов, так как без них, с соседом невозможно было по-играть в какую-нибудь игрушку. И с того момента вопрос про «открытие портов» становился более популярным, и многие «псевдо-сис.админы» пытались выложить актуальное руководство как открыть порты на своем железе. Но не все знают что да как это сделать правильно.
Что же такое «Открытый порт» ? Да все гениальное просто — любой компьютер в сети имеет определенный идентификатор (имя, MAC-адрес, IP), так вот, по IP на роутер поступает определенный пакет, но не просто поступает по IP, а по специальному каналу (порту), через который, программа отправляет/принимает запросы из внешней сети. По стандарту, этот пакет дальше роутера не пройдет, так как по умолчанию (далее дефолту), порт по которому работает программа — закрыт, а что принять пакет, его нужно открыть.
То, что пишут в интернете — можно открыть порты, независимо от того, какое сетевое оборудование стоит — все это бред! Любой знающий сис.админ скажет — что IP делятся на два вида — «Белый» и «Серый«, и только на одном можно открыть порты, что бы принимать «пакеты» из вне. Серый — это когда IP может переходить из рук-в-руки множество количество раз (он же именуется как динамический), Белый — или реальный (по другому статический) можно быть присвоен только на одного пользователя, и не будет переходить из рук-в-руки.
Именно по «Белому» IP и стоит открывать порты на своем оборудовании. Что бы получить свой «Белый» IP необходимо обратить к своему провайдеру, и после этого, он назначит IP на Вас. Данная услуга везде является платной, и в зависимости от региона может составлять от 50 рублей/месяц.
Допустим, мы купили реальный IP у своего провайдера, и теперь необходимо приступить к настройке. Разберемся с настройками на 4-х популярных моделях роутеров (ASUS/TP-Link/D-Link/Zyxel):
Примечание: настройка производилась на оборудовании ASUS RT-N12 C1 с микропрограммой 3.0.0.4.260 (черный интерфейс)
- Подключаемся к своему роутеру через браузер (192.168.1.1), с логином и паролем (admin/admin). Узнать об этом можно на обратной стороне роутера или в инструкции к нему.
- В левом меню выбираем «Интернет» (или WAN) ->Переадресация портов (или Virtual Server/Port Forwarding)
- Включаем данную опцию, поставив галочку напротив «Включить переадресацию портов: Да«.
- Выбираем из готовых шаблонов заданные порты, или вписываем свои:
- Имя службы — можно быть любое
- Диапазон портов — можно ввести как один порт (например 80) так и диапазон (27000:27099)
- Локальный IP
- Конечный порт — так же как и в «Диапазон» нужно вводить в зависимости от того, что сначала ввели — один или диапазон.
- Протокол — TCP/UDP/BOTH /OTHER — выбрать один (TCP/UDP порты выбирают)
- После ввода данных нажимаем на плюсик (слева от формы заполнения).
- А после ввода данных, нажимаем «Сохранить».
- Подключаемся к своему роутеру через браузер (192.168.0.1. или в некоторых 192.168.1.1), с логином и паролем (admin/admin). Узнать об этом можно на обратной стороне роутера или в инструкции к нему.
- В левом меню выбираем Межсетевой экран/Виртуальные серверы.
- Выбираем из готовых шаблонов , или вписываем свои (выбрав пункт «Costom«):
- Имя службы — можно быть любое
- Протокол — выбираем нужный протокол.
- Внешний порт (начальный)
- Внутренний порт (начальный)
- Внутренний IP
- После ввода данных можно нажать «Применить«, а после через «Система» — выбрать пункт «Перезагрузка«, и только после этого порты должны открыться.
- Подключаемся к своему роутеру через браузер (192.168.0.1/192.168.1.1), с логином и паролем (admin/admin). Узнать об этом можно на обратной стороне роутера или в инструкции к нему.
- В левом меню выбираем Переадресация (Forwarding) ->Виртуальные сервера (Virtual Server).
- После открытия раздела «Виртуальные серверы» перед вами должна появиться страница со списком открытых портов. Для того чтобы открыть нужный вам порт здесь нужно нажать на кнопку «Добавить новый» и заполняем форму:
- Порт сервиса – внешний порт. Здесь нужно ввести порт (или диапазон портов через знак дефиз, например, 10100-10200)
- Внутренний порт – внутренний порт, который будет использоваться программами на вашем компьютере.
- IP адрес
- Протокол
- Состояние (Status) – статус порта.
- После ввода данных можно нажать «Сохранить» (Save).
- Подключаемся к своему роутеру через браузер (192.168.0.1/192.168.1.1), с логином и паролем (admin/admin или admin/1234). Узнать об этом можно на обратной стороне роутера или в инструкции к нему.
- В левом меню выбираем «Безопасность» (в виде щита) ->Трансляция сетевых адресов (NAT).
- После открытия раздела «Трансляция сетевых адресов (NAT)» нажимаем на кнопку «Добавить» и добавляем по шаблону:
- Интерфейс – выбираем необходимый интерфейс.
Внимание! Необходимо правильно указать значение поля Интерфейс. В зависимости от того, использует ли ваш провайдер авторизацию (PPPoE, L2TP или PPTP), значение этого поля может быть различным. Если авторизация у провайдера не используется, следует всегда выбирать интерфейс Broadband connection (ISP). Если провайдер использует PPPoE для доступа в Интернет, то следует выбирать соответствующий интерфейс PPPoE.
Если вам предоставляется одновременный доступ в локальную сеть провайдера и Интернет (Link Duo), для проброса порта из локальной сети нужно выбирать интерфейс Broadband connection (ISP), а для проброса порта из Интернета — интерфейс туннеля (PPPoE, PPTP или L2TP). - Протокол – можно указать протокол из списка предустановленных, который будет использован при пробросе порта (в нашем примере используется TCP/21 – Передача файлов FTP). При выборе в поле Протокол значения TCP или UDP вы можете в полях
- Порты TCP/UDP — указать номер порта или диапазон портов.
- Перенаправить на адрес — указываем локальный IP адрес компьютера.
- Интерфейс – выбираем необходимый интерфейс.
- После ввода данных можно нажать «Сохранить«.
Подводя итоги можно сделать такой вывод — что для проброса портов и сохранения своих нервных клеток, лучше сразу купить у своего провайдера статический (белый) IP, так как на сером — проброс портов не удастся сделать. Если все удалось сделать, то видимость портов можно проверить на этом сервисе, или на этом. Из эксперимента с роутерами, мне удалось правильно все сделать только на трех из четырех маршрутизаторах (кроме Zyxel).
Техническая поддержка
Как открывать или перенаправлять TCP/UDP порты? Печать
Изменено: Чт, 29 Июн, 2023 на 1:45 PM
Открытие или перенаправление порта необходимо в тех случаях, когда нужно получить доступ к локальным устройства или службам находящимися за роутером в локальной сети.
Возможные задачи могут выглядеть следующим образом:
1. Необходимо получить доступ к WEB интерфейсу самого роутера.
2. Необходимо перенаправить порт 8080 на WEB сервер расположенный на локальном ПК с IP 192.168.88.100
Все операции с открытием и перенаправлением портов производятся в Межсетевом экране
1. Открытие порта
Открываются порты для получения доступа к различным службам на самом роутере или контроллере.
Например откроем порт 80 для получения доступа к WEB-интерфейсу роутера.
Переходим в пункт Правила для трафика
Так выглядит новое созданное правило
Сохраняем добавленные правила
Необходимо отредактировать файл /etc/config/firewall
Добавляем правило и сохраняем файл:
config rule
option enabled ‘1’
option target ‘ACCEPT’
option src ‘wan’
option proto ‘tcp udp’
option dest_port ’80’
option name ‘HTTP’
Перезапускаем межсетевой экран
или service firewall restart
2. Перенаправление порта
Перенаправление используется, чтобы перенаправить запросы с внешнего порта к другому или тому же порту в локальную сеть.
Например, перенаправим запросы с внешнего порта 8080 к локальному ПК с IP 192.168.88.100 и его порту 80
Переходим в пункт Перенаправления портов
Так выглядит новое правило
Сохраняем и применяем изменения
Необходимо отредактировать файл /etc/config/firewall
Добавляем правило и сохраняем файл:
config redirect
option target ‘DNAT’
option src ‘wan’
option dest ‘lan’
option proto ‘tcp udp’
option src_dport ‘8080’
option dest_ip ‘192.168.88.100’
option dest_port ’80’
option name ‘8080 to 192.168.88.100:80’
Перезапускаем межсетевой экран
или service firewall restart
3. IPTABLES. Перенаправление порта из локальной сети к статическому IP и порту в интернете или VPN.
Бывают и такие ситуации, при которых Ваше оборудование имеет только Локальный IP адрес и маску подсети.
И не имеет настроек шлюза и DNS.
Также данному устройству можно задать цель, т.е. куда оно будет отправлять данные. Обычно это целевой IP адрес и порт (TCP или UDP).
Проблема заключается в том, что при подключении такого устройства к роутеру, данные, которые оно генерирует, не попадут дальше самого роутера. Т.е. они ограничены рамками локальной сети.
Без шлюза устройство не «видит» сеть Интернет.
В данной ситуации нам поможет пользовательское перенаправление портов с использованием IPTABLES
Необходимо перейти в Межсетевой экран :
Перейти на вкладку Пользовательские правила :
И добавить правило перенаправления:
iptables -t nat -A PREROUTING -d 192.168.88.1 -p TCP —dport 9001 -j DNAT —to-destination 31.58.45.6:9001
# This file is interpreted as shell script. # Put your custom iptables rules here, they will # be executed with each firewall (re-)start. # Internal uci firewall chains are flushed and recreated on reload, so # put custom rules into the root chains e.g. INPUT or FORWARD or into the # special user chains, e.g. input_wan_rule or postrouting_lan_rule. iptables -t nat -A PREROUTING -d 192.168.88.1 -p TCP --dport 9001 -j DNAT --to-destination 31.58.45.6:9001
Перезапустим межсетевой экран. Делаем это через консоль:
или service firewall restart
Была ли эта статья полезной? Да Нет
К сожалению, мы не смогли помочь вам в разрешении проблемы. Ваш отзыв позволит нам улучшить эту статью.