Я использую 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
для установки адреса шлюза, я получаю такое же поведение. Я правильно использую эту опцию командной строки? Любое понимание того, что я делаю неправильно?