У меня дома есть DSL-интернет, а в локальной сети работает несколько серверов Windows. Я настроил свой маршрутизатор на переадресацию порта 80 на один из них, а также установил правило брандмауэра, разрешающее порт 80, и это прекрасно работает. Если я подключаюсь к XXXX (мой домашний IP-адрес) с удаленного сайта, он подключается к этому серверу и отображает веб-страницу, как я и ожидал.
Тем не менее, у меня есть другие приложения, работающие на разных портах, и они, кажется, не работают. Я следовал точно такой же процедуре - настроил переадресацию портов на моем маршрутизаторе и убедился, что брандмауэр открыт - но ничего, кроме порта 80, похоже, не проходит. Я пытаюсь подключиться к XXXX: 5432, например, и это не работает.
Я подозреваю, что мой провайдер как-то блокирует другие порты? (Есть ли способ проверить мою гипотезу?) Мне интересно, есть ли способ открыть (ограниченный) порт через другой (открытый) порт, через прокси или туннель или что-то в этом роде. Какие-либо предложения?
источник
Ответы:
Рекомендуется использовать статический IP-адрес для подключения компьютера к маршрутизатору. Затем, используя настройки вашего роутера, вы можете переадресовать любой порт на любой ПК. Иногда на вашем маршрутизаторе может быть установлен брандмауэр, который останавливает нужные вам порты, поэтому проверьте это в настройках. (настройки маршрутизатора обычно расположены в 192.1.1.254 в браузере вашего компьютера). Также проверьте брандмауэр вашего компьютера. Windows по умолчанию часто блокирует большинство неиспользуемых портов, поэтому вам нужно перейти в настройки брандмауэра и разрешить UDP и TCP исходящие и входящие для указанных портов.
источник
используйте этот онлайн-инструмент для проверки переадресации вашего порта http://ping.eu/port-chk/ Если в нем говорится, что ваш порт 80 открыт, а другие порты, которые вы пытаетесь использовать, закрыты, то вы либо неправильно перенаправили их, либо приложения / игры, которые вы пытаетесь запустить, вообще не прослушивают эти порты. Для этого вы должны запустить команду netstat -a на компьютере, к которому вы пытаетесь подключиться, чтобы увидеть, какие порты прослушивает ваш компьютер. Вы также можете добавить параметр -b, чтобы увидеть имя процесса, прослушивающее этот порт. Если вы не видите эти порты, то это не проблема сети. Если вы видите, что порты прослушиваются, то с другого компьютера в той же локальной сети попробуйте запустить «telnet otherpcIP portnum», и если вы видите мигающий курсор, значит, вы подключены, и порт открыт и доступен из локальной сети. Вам, вероятно, придется добавить telnet в программы и функции / включить или отключить функции Windows. Если все это работает и пинг.
источник
netstat -a
я вижу, что интересующие меня порты действительно слушают. И у меня настроена переадресация портов в маршрутизаторе для этих портов точно так же, как порт 80. Так что это подтверждает мою гипотезу, я думаю, что мой провайдер просто блокирует все другие порты. Я собираюсь связаться с ними и подтвердить это, но меня это не удивит. Я подозреваю, что они захотят брать больше, чтобы открыть эти порты, потому что они могут рассматривать это как «бизнес», а не как жилой.