Обзор
Это общая ошибка, но я не могу найти проблему и, следовательно, решение. Я размещаю сервер Minecraft на моем localhost (192.168.0.2
) через порт 25565
. К нему можно получить доступ с хоста по его внутреннему IP ( localhost и 192.168.0.2
), но к нему нельзя получить доступ с внешнего IP (101.xxx.xx.xx
).
Вы пробовали включать и выключать его снова?
Да. Я перезапустил моего хозяина. Также на сервере написано
[14:32:14] [Server thread/INFO] [net.minecraft.server.dedicated.DedicatedServer]: Starting Minecraft server on *:25565
, поэтому это должно быть истиной.
Порт переадресован?
Я могу проверить, что порт открыт для HTTP через простой Node.JS сервер, размещенный на устройстве. Доступ к этому можно через 101.xxx.xx.xx:25565
на моем мобильном устройстве в той же сети, но timesout в браузере хоста. Кроме того, он пересылается на TCP и UDP .
const { createServer } = require('http')
createServer((req, res) => {
console.log('Request', req.url)
res.end('Ok')
}).listen(25565)
Межсетевые экраны
Кроме того, я изменил свои брандмауэры: Windows и антивирус. Я отключил Avast Web Shield , который блокирует внешние нераспознанные соединения inte rnet, и следовал обоим этим урокам, чтобы добавить исключения брандмауэра для Java и исключения портов . Я позволил своему модему Telstra Arcadyan сохранить свой межсетевой экран, потому что я все еще мог получить доступ к своей внутренней сети с внешнего адреса.
Wireshark и Nmap
Я подозревал, что внутреннее соединение была проблема, поэтому я использовал nmap . Я запустил его на хосте и другом устройстве в сети, мой Raspberry Pi (192.168.0.69).
На моем Raspberry Pi , nmap -p 25565 -T4 -Pn -A -v 192.168.0.2
на моем Raspberry Pi (192.168.0.69
) ) вернул
25565/tcp open minecraft Minecraft 1.12.2 (Protocol: 127, Message: Rebirth of the Night! (Optifine 1.12.2), Users: 0/6)
Кроме того, та же команда , но с другим назначением (WAN IP), вернул то же сообщение.
На моем хосте Windows устройство результат был идентичен для внутреннего IP (192.168.0.2), но внешний IP (101.xxx.xx.xx) возвратил filtered
. Именно поэтому я считаю, что на этом пути есть брандмауэр.
25565/tcp filtered minecraft
Хост - Локальный адрес
Host - внешний адрес
Raspberry Pi - локальный адрес
Raspberry Pi - внешний адрес
Сводка
Я подозреваю, что это должно быть связано с проблемой входящего соединения с брандмауэром из-за моих испытаний с nmap и wireshark . К сожалению, я не могу найти это. Я что-то упустил?
Обновление
Ответ может быть здесь . хотя я не уверен. Это может быть проблема NAT Loopback .
Сноски
Сервер Возрождение ночи v2.76.2
Когда я пытаюсь подключиться с внешнего адреса, регистрация сервера не ведется, т.е. нет доказательств попытки подключения
В этой локальной сети есть другие серверы
M C Состояние сервера возвращает правильную информацию. (Сервер видим)
Эта статья дает возможность того, что внутреннее-внешнее соединение является внутренней проблемой.
«LH1000 не поддерживает NAT, что означает, что даже если порты открыты, вы не можете подключиться к устройству в вашей сети с другого устройства в вашей сети, используя адрес модема publi c и номер порта устройства. "
При выполнении нижеприведенного тестирования я не вызывал сервер Node.JS и M C одновременно.
Это несколько напоминает проблему, когда я не могу s sh своему малиновому пи с внешнего ip (101.xxx.xx.xx
). Я могу только подключен к нему через внутренний ip (192.168.0.69
)
Это лог с выхода игры Minecraft
Как примечание, Wireshark с фильтром udp.port == 25565 || tcp.port == 25565
имел три разных выхода.
Для HTTP-сервера Node.JS, к которому обращались с мобильного устройства с VPN выводится
Для HTTP-сервера Node.JS, к которому осуществляется доступ с хост-устройства, выводится
Для сервера Minecraft он выводит