Не могу установить sh соединение NodeJS - PullRequest
0 голосов
/ 03 апреля 2020

Я новичок в сети, у меня есть сервер NodeJS, работающий с server.listen(3000, '10.0.0.7');, и я перенаправил порт 3000 с внутренним IP-адресом моего сервера 10.0.0.7. Я могу подключиться с другого компьютера в моей сети, введя в браузере: 10.0.0.7:3000. Насколько я понимаю, мой внешний IP-адрес должен соединить меня с маршрутизатором, который затем направит меня на сервер, который я настроил на 3000.

Я что-то упустил? Поскольку я не могу подключиться через внешний IP-адрес.

Также обратите внимание, что мой брандмауэр отключен.

1 Ответ

0 голосов
/ 03 апреля 2020

Я не сетевой эксперт, поэтому извините, если я использую какие-либо неправильные термины. В моем понимании, вы правы насчет текущей конфигурации, однако вы пропустили последний шаг. По умолчанию ваш маршрутизатор делает вашу локальную сеть недоступной с так называемого «внешнего ip». Просто для определения: внешний IP в данном случае - это каждый IP, которого нет в вашей локальной сети. Представьте, что ваш маршрутизатор разрешил бы любую связь без явного разрешения. Каждый открытый порт в вашей локальной сети будет доступен для сети, к которой подключен ваш маршрутизатор. Это определенно нежелательно.

Давайте рассмотрим пример с цитатой из этой статьи :

  • IP-адрес вашего маршрутизатора: 5.6.7.8 если вы получаете доступ к нему из внешней сети (inte rnet)
  • ваш маршрутизатор имеет IP-адрес: 192.168.1.1 если вы получаете к нему доступ из локальной сети
  • ваш ноутбук находится в вашей локальной сети и имеет IP-адрес 192.168.1.10, и вы хотите выставить порт 3000 с вашего ноутбука во внешнюю сеть (inte rnet)

У вас есть 2 варианта:

  • Вы можете выставить порт через конфигурацию маршрутизатора (например: вы сопоставляете 5.6.7.8:3000 с 192.168.1.10:3000 в конфигурации маршрутизатора, и теперь он будет доступен из внешней сети на 5.6.7.8:3000. Обратите внимание, что вы можете выбрать любой свободный порт, порты не должны совпадать.). Конечно, это возможно только в том случае, если у вас есть возможность настроить маршрутизатор и вы готовы это сделать. (например: если вы не в кафе)
  • Вы можете использовать некоторые инструменты туннелирования, такие как Ngrok или OpenS SH, которые создают прямой туннель между внешним компьютером и вашим сервером. Это также может работать, если у вас нет возможности изменить конфигурацию маршрутизатора.

Надеюсь, я смог помочь. Удачи.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...