Как я могу открыть порты для мира по жилой связи?

0

У меня дома есть DSL-интернет, а в локальной сети работает несколько серверов Windows. Я настроил свой маршрутизатор на переадресацию порта 80 на один из них, а также установил правило брандмауэра, разрешающее порт 80, и это прекрасно работает. Если я подключаюсь к XXXX (мой домашний IP-адрес) с удаленного сайта, он подключается к этому серверу и отображает веб-страницу, как я и ожидал.

Тем не менее, у меня есть другие приложения, работающие на разных портах, и они, кажется, не работают. Я следовал точно такой же процедуре - настроил переадресацию портов на моем маршрутизаторе и убедился, что брандмауэр открыт - но ничего, кроме порта 80, похоже, не проходит. Я пытаюсь подключиться к XXXX: 5432, например, и это не работает.

Я подозреваю, что мой провайдер как-то блокирует другие порты? (Есть ли способ проверить мою гипотезу?) Мне интересно, есть ли способ открыть (ограниченный) порт через другой (открытый) порт, через прокси или туннель или что-то в этом роде. Какие-либо предложения?

soapergem
источник
Не делайте этого, используйте инструмент переадресации портов, такой как localtunnel или ngrok to externalworld.
ShrekOverflow
1
@Abhishek Что не так с переадресацией портов? Зачем использовать localtunnel или ngrok? У меня дома есть компьютер, который я использую для сервера (HTTP / SSH / SMTP / IRC / DNS и другие), и переадресация портов через маршрутизатор всегда работала нормально (теперь у меня установлен этот компьютер в качестве маршрутизатора, поэтому нет переадресация портов больше).
BenjiWiebe
Лучший способ проверить свою гипотезу - позвонить своему провайдеру и спросить. Как только вы узнаете, являются ли они фактором, мы, вероятно, сможем помочь вам лучше.
@BenjiWiebe Ngrok и localtunnel намного проще в запуске и использовании и, как правило, более безопасны. Если DDoS или что-то происходит, это влияет на их инфраструктуру, а не на вашу.
ShrekOverflow

Ответы:

1

Рекомендуется использовать статический IP-адрес для подключения компьютера к маршрутизатору. Затем, используя настройки вашего роутера, вы можете переадресовать любой порт на любой ПК. Иногда на вашем маршрутизаторе может быть установлен брандмауэр, который останавливает нужные вам порты, поэтому проверьте это в настройках. (настройки маршрутизатора обычно расположены в 192.1.1.254 в браузере вашего компьютера). Также проверьте брандмауэр вашего компьютера. Windows по умолчанию часто блокирует большинство неиспользуемых портов, поэтому вам нужно перейти в настройки брандмауэра и разрешить UDP и TCP исходящие и входящие для указанных портов.

Том Гиббс
источник
Спасибо, но, возможно, мой вопрос не был сформулирован очень ясно? Вы только что описали все, что я уже сделал. Но проблема в том, что даже если я открою различные порты для мира, они все равно не будут работать. Единственным исключением является порт 80. Я спрашиваю, как заставить другие порты работать так, как будто они были портом 80? Так, например, подключение к XXXX: 80 фактически приведет к подключению к 192.168.XX: 8080.
Soapergem
1

используйте этот онлайн-инструмент для проверки переадресации вашего порта http://ping.eu/port-chk/ Если в нем говорится, что ваш порт 80 открыт, а другие порты, которые вы пытаетесь использовать, закрыты, то вы либо неправильно перенаправили их, либо приложения / игры, которые вы пытаетесь запустить, вообще не прослушивают эти порты. Для этого вы должны запустить команду netstat -a на компьютере, к которому вы пытаетесь подключиться, чтобы увидеть, какие порты прослушивает ваш компьютер. Вы также можете добавить параметр -b, чтобы увидеть имя процесса, прослушивающее этот порт. Если вы не видите эти порты, то это не проблема сети. Если вы видите, что порты прослушиваются, то с другого компьютера в той же локальной сети попробуйте запустить «telnet otherpcIP portnum», и если вы видите мигающий курсор, значит, вы подключены, и порт открыт и доступен из локальной сети. Вам, вероятно, придется добавить telnet в программы и функции / включить или отключить функции Windows. Если все это работает и пинг.

Витас
источник
Благодарю. Я опробовал инструмент, с которым вы связаны, и все, кроме порта 80, «закрыто» для внешнего мира. Когда я бегу, netstat -aя вижу, что интересующие меня порты действительно слушают. И у меня настроена переадресация портов в маршрутизаторе для этих портов точно так же, как порт 80. Так что это подтверждает мою гипотезу, я думаю, что мой провайдер просто блокирует все другие порты. Я собираюсь связаться с ними и подтвердить это, но меня это не удивит. Я подозреваю, что они захотят брать больше, чтобы открыть эти порты, потому что они могут рассматривать это как «бизнес», а не как жилой.
soapergem