Отправка команды TCP из внешней сети на определенное устройство в домашней сети

Отправка команды TCP из внешней сети на определенное устройство в домашней сети

Я работаю над приложением для мобильного телефона, которое должно отправлять команду TCP из внешней сети (например, из кофейни или при подключении к 3G) на определенное устройство в домашней сети. Допустим,

  • Маршрутизатор имеет реальный IP-адрес 123.123.123.123 и частный IP-адрес 192.168.0.1.
  • Устройство имеет частный IP-адрес 192.168.0.101.
  • Устройство прослушивает входящую команду TCP на порту 1000 и 2000.

У меня есть вопросы:

  • В моем мобильном приложении мне нужно отправить команду на 123.123.123.123, верно? Если так, то на какой порт?
  • Какую настройку мне нужно выполнить на маршрутизаторе, чтобы он передал эту команду на желаемое устройство?

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

решение1

какой порт? либо порт 1000, либо 2000. Итак, он идет к 123.123.23.123:1000или :2000

какая конфигурация у вашего маршрутизатора? Ну, вы используете NAT/PAT/переадресацию портов, поэтому вы настраиваете маршрутизатор NAT на пересылку всего, что он получает на порт 1000 или 2000, на устройство 192.168.0.101:1000или :2000.

решение2

Вам необходимо настроить маршрутизатор таким образом, чтобы он знал, что если он получает пакет, направленный на адрес 123.123.123.123 и порт 1000 (или 2000), то этот пакет должен быть перенаправлен на адрес 192.168.0.101 и порт 1000 (или 2000).

Эта функция называется по-разному у разных производителей. Ищите «виртуальный сервер», «переадресация портов», «назначение nat», «обратный nat» и т. д.

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