Я использую netcat в качестве бэкэнд для перекодирования данных взад и вперед для программы, которую я создаю. Я протестировал свою программу в локальной сети, и как только это сработало, я подумал, что это будет просто пересылка порта с моего маршрутизатора, чтобы моя программа работала через Интернет. Увы! Это, похоже, не так.
Если я начну прослушивать netcat на порту 6666 с помощью:
nc -vv -l -p 6666
,
затем перейдите в 127.0.0.1:6666
в браузере, как и ожидалось, я вижу, что HTTP GET-запрос приходит через netcat (и мой браузер сидит в ожидании). Однако, если я перехожу к my.external.ip.address:6666
, ничего не происходит вообще, и на экране браузера "невозможно подключиться к my.external.ip.address:6666
".
Я знаю, что порт правильно перенаправлен, поскольку www.canyouseeme.org говорит, что порт 6666 открыт (и когда netcat не слушает, его закрывают).
Если я запускаю netcat с помощью -g my.adslmodem's.local.address
, чтобы установить адрес шлюза, я получаю такое же поведение. Я правильно использую эту опцию командной строки? Любое понимание того, что я делаю неправильно?