2

При использовании брандмауэра Windows, когда я получаю соединение, исходный IP-адрес отображается как IP-адрес моего маршрутизатора / шлюза, а не фактический исходный IP-адрес соединения. Мой маршрутизатор - ASUS RT-N16 с dd-wrt build 14896, и сервер, на котором я испытываю эту проблему, работает под управлением Windows Server 2008 R2 SP1.

2012-08-05 23:01:03 ALLOW TCP 192.168.1.1 192.168.1.11 60597 25565 0 - 0 0 0 - - - RECEIVE
2012-08-05 23:01:04 ALLOW TCP 192.168.1.1 192.168.1.11 60601 3389 0 - 0 0 0 - - - RECEIVE
2012-08-05 23:01:12 ALLOW UDP 192.168.1.11 192.168.1.1 55238 53 0 - - - - - - - SEND

192.168.1.11 - это IP-адрес моего сервера, а 192.168.1.1 - это IP-адрес моего маршрутизатора. Я пытался с DMZ вкл / выкл и с включенным / выключенным брандмауэром Windows, к тем же результатам.

Кроме того, мой сервер Minecraft также отображает только IP-адрес моего роутера, а не фактический IP-адрес игрока (имена в журнале были изменены на "player"):

[INFO] player[/192.168.1.1:59069] logged in with entity id 10445 at (-782.984331133011, 99.63587500882896, 294.12718027903713)
[INFO] player[/192.168.1.1:49865] logged in with entity id 145517 at (-166.5, 64.62000000476837, 257.5)

1 ответ1

3

Ваш публичный IP-адрес назначен вашему маршрутизатору. И это единственный IP-адрес, доступный за пределами вашей локальной сети. Если люди подключатся к IP-адресу вашего маршрутизатора, пакет будет отправлен на ваш маршрутизатор.

Маршрутизатор не может переслать этот пакет на ваш сервер с IP-адресом маршрутизатора в качестве пункта назначения. Если это произойдет, ваш сервер просто перенаправит его обратно на маршрутизатор, а не обрабатывает его локально.

Точно так же, чтобы обратный пакет отправился в нужное место, маршрутизатор должен убедиться, что ответы отправляются маршрутизатору. Таким образом, адрес источника (с точки зрения сервера) всегда будет в направлении маршрутизатора (а не другого IP-адреса локальной сети).

Так что это все ожидаемое поведение с переадресацией портов и шпилькой NAT. При подключении извне локальной сети должен отображаться правильный IP-адрес источника на сервере. В противном случае все это переписывается маршрутизатором, чтобы все пакеты проходили через маршрутизатор.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .