Назад | Перейти на главную страницу

Перенаправление портов на локальный IP-адрес не работает в Windows Server 2019

Я хочу запустить хост-сервер Call Of Duty 4.

Сначала я устанавливаю Windows Server 2019 на облачную платформу Google. После этого я устанавливаю игровой сервер call of duty и запускаю его на локальном ip 10.128.0.4:28960 Вы можете присоединиться к игре на этот локальный IP-адрес внутри сервера, все работает отлично, но я хочу открыть его для другого мира.

Мой IP-адрес сервера 34.67.221.157

Я следую этим шагам, чтобы перенаправить порт на локальный ip Переадресация портов в Windows Server

  1. Я делаю ip адрес статическим 10.128.0.4
  2. Перенаправить порт с помощью этой команды
    netsh interface portproxy add v4tov4 listenaddress=10.128.0.4 listenport=28960 connectaddress=34.67.221.157 connectport=28960 __> команда успешно выполнена
  3. После этого я добавляю этот порт в брандмауэр
    netsh advfirewall firewall add rule name=”forwarded_CODport_28960” protocol=TCP dir=in localip=10.128.0.4 localport=28960 action=allow __> команда успешно выполнена

После этого пытаюсь подключиться 34.67.221.157:28960 из моей игры, но это тоже не для подключения

Тайм-аут подключения к серверу

Вот что он показывает после всех этих успешных команд Скриншот

Я новичок в Windows Server, какой шаг я пропустил, дайте мне знать

Обновление: открытый порт в брандмауэре GCP

  1. Я удаляю роль переадресации портов
  2. Отключить брандмауэр в ВМ
  3. Добавить порт 28960 в брандмауэре GCP Скриншот
  4. После этого проверяю открытый порт в результаты nmap.online

Запуск Nmap 7.80 ( https://nmap.org ) в 2020-04-09 08:29 PDT
Отчет о сканировании Nmap для 157.221.67.34.bc.googleusercontent.com (34.67.221.157)
Хост работает (задержка 0,034 с).
ВЕРСИЯ ГОСУДАРСТВЕННОЙ СЛУЖБЫ ПОРТА
21 / TCP с фильтром ftp
22 / TCP закрытый ssh
SMTP с фильтром 25 / tcp
80 / tcp закрыт http
110 / TCP с фильтром pop3
143 / tcp отфильтрованный imap
443 / tcp закрыт https
445 / TCP с фильтром microsoft-ds
Обнаружение услуги выполнено. Пожалуйста, сообщайте о любых неверных результатах на>https://nmap.org/submit/ .
Выполнено Nmap: 1 IP-адрес (1 хост активен) просканирован за 1,80 секунды

Для лучшего просмотра результатов

Вам не нужно создавать никаких правил переадресации между внутренним и внешним IP-адресами. Кроме того, вам действительно не нужно резервировать внутренний IP-адрес для внешних подключений.

Между тем вы можете зарезервировать внешний статический IP иметь одинаковый внешний IP-адрес для внешних подключений.

Чтобы решить эту проблему вы должны выполнить следующие шаги:

  1. удалите правила переадресации портов, которые вы создали на своей виртуальной машине Windows
  2. создайте правило брандмауэра, чтобы разрешить подключения к порту 28960 на брандмауэре Windows (или просто отключите его временно - ваша виртуальная машина будет защищена брандмауэром GCP)
  3. создать правило брандмауэра чтобы разрешить подключения к порту 28960 на брандмауэре GCP с вашего IP или с любого IP (0.0.0.0/0)
  4. проверьте текущие открытые порты с помощью Nmap (лайк nmap -p 28960 EXTERNAL_IP_OF_YOUR_VM) или другим инструментом
  5. присоединиться EXTERNAL_IP_OF_YOUR_VM:28960 из вашей игры (из помещения)

ОБНОВИТЬ:

Как я вижу, порт 28960 закрыт:

$ nmap -p 28960 34.67.221.157
Starting Nmap 7.70 ( https://nmap.org ) at 2020-04-09 18:40 CEST
Nmap scan report for 157.221.67.34.bc.googleusercontent.com (34.67.221.157)
Host is up (0.20s latency).

PORT      STATE  SERVICE
28960/tcp closed unknown

Это может быть связано с тем, что брандмауэр Windows все еще задействован, выполните следующие действия:

  1. откройте административную командную строку и выполните команду:

    netsh advfirewall set allprofiles state off
    

    или откройте PowerShell и выполните команду:

    Set-NetFirewallProfile -Profile Domain,Public,Private -Enabled False
    
  2. перейти к Compute Engine -> VM instances -> нажмите NAME_OF_YOUR_VM_INSTANCE -> щелкните EDIT -> перейти к Network Tags -> добавить сетевой тег лайк game-server -> щелкните Save

  3. создать временное правило брандмауэра:

    gcloud compute firewall-rules create game-server --direction=INGRESS --priority=999 --network=default --action=ALLOW --rules=tcp,udp --source-ranges=0.0.0.0/0 --target-tags=game-server
    
  4. проверьте еще раз открытые порты командами nmap -Pn EXTERNAL_IP_OF_YOUR_VM и nmap -p 28960 EXTERNAL_IP_OF_YOUR_VM

К тому же, Посмотри на это статья чтобы проверить, нужно ли вам открывать больше портов а затем вы должны проверить их с помощью команды nmap -p PORT EXTERNAL_IP_OF_YOUR_VM.