Подключение из WAN в LAN

Подключение из WAN в LAN

Я разрабатываю приложение для своей семьи, которое использует сокеты для связи между устройствами в LAN или WAN. Поскольку IP-адреса постоянно меняются, я планирую FTP-сервер для адресной книги и TCP/IP для связи.

Моя проблема:
подключение из WAN в LAN. Я думаю, что маршрутизатор должен быть настроен на разрешение подключения извне к порту в LAN. Как это сделать?

решение1

Да, большинство маршрутизаторов-шлюзов NA[P]T позволяют указать правило «сопоставления портов», «переадресации портов» или, иногда, «виртуальный сервер», где соединения из WAN к определенному порту TCP или UDP на IP-адресе WAN маршрутизатора перенаправляются на частный IP-адрес и порт локальной сети, где фактически находится служба.

В примере с FTP порт 21/TCP обычно используется для входящих управляющих подключений, поэтому вам может потребоваться настроить сопоставление портов на маршрутизаторе для переадресации порта 21/TCP с WAN-адреса маршрутизатора на частный IP-адрес и порт локальной сети, на котором запущен FTP-сервер (например, 192.168.1.2:21).

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

Помните, что FTP — это очень сложный протокол для работы за NAT. Помогает, если ваш шлюз NAT имеет код FTP "ALG" (Application-Layer Gateway), который знает, как работать с FTP-сервером за NAT. Видите ли, когда клиент FTP находится за NAT, использование пассивного режима FTP (PASV) может заставить FTP работать через NAT. Но когда FTPсервернаходится за NAT, даже с необходимым сопоставлением портов для 21/TCP, пассивный режим ломается, тогда как активный режим работал бы. Если FTP-клиент находится за одним NAT, а FTP-сервер — за другим NAT, вам определенно нужен FTP ALG в одном или обоих NAT.

Связанный контент