Веб-сервер позади NAT, как прислушаться к общедоступному IP-адресу

Мы видели эту проблему о системах, которые имели про версию Acrobat (не свободный Читатель) установленный также.

9.4 отсутствует теперь, и это, возможно, устранило эту проблему. Вот легкий и свободный способ развернуть Adobe Reader. Вот другое (более старое) сообщение в блоге, которое содержит видео учебное руководство для установки Adobe Reader.

1
задан 3 September 2013 в 22:29
2 ответа

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

Я буду использовать 192.0.2.0/24 в качестве внешнего IP-блока и 198.51.100.0/24 как ваш внутренний (см. RFC5737).

Некоторые вещи, которые вы могли бы сделать, включают:

  • NAT целевые порты на каждом внешнем IP-адресе на другой набор портов на внутреннем IP-адресе. Например, NAT 192.0.2.1:80 и 192.0.2.1:443 на 198.51.100.1:80 и 198.51.100.1:443, а затем NAT 192.0.2.2:80 и 192.0.2.2:443 на 198.51.100.1:81 и 198.51. .100.1: 444. Настройте веб-сервер на прослушивание дифференцированных портов для соответствующих служб. Обязательно выберите порты, которые больше не используются, и проверьте настройки брандмауэра.
  • Назначьте дополнительные внутренние IP-адреса веб-серверу. Например, выделите веб-сервер 198.51.100.1 и 198.51.100.2. NAT соответствующие пары внешнего IP / порта к соответствующим парам внутреннего IP / порта (например, 192.0.2.1 - 198.51.100.1 и 192.0.2.2 - 198.51.100.2). Укажите nginx для привязки соответствующих служб к соответствующим внутренним IP-адресам.

Если вы выберете последнее решение, ваша среда будет более простой и более соответствующей стандартам, поскольку вы не будете иметь дело с необычными номерами портов и трансляцией портов, а вам нужно будет выделить несколько внутренних IP-адресов каждому веб-серверу (насколько я понимаю, у вас есть только один). Кроме того, если вы используете последнее решение, вы можете использовать NAT 1: 1.

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

От 0.2.1 до 198.51.100.1 и от 192.0.2.2 до 198.51.100.2). Укажите nginx для привязки соответствующих служб к соответствующим внутренним IP-адресам.

Если вы выберете последнее решение, ваша среда будет более простой и более соответствующей стандартам, поскольку вы не будете иметь дело с необычными номерами портов и трансляцией портов, а вам нужно будет выделить несколько внутренних IP-адресов каждому веб-серверу (насколько я понимаю, у вас есть только один). Кроме того, если вы используете последнее решение, вы можете использовать NAT 1: 1.

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

От 0.2.1 до 198.51.100.1 и от 192.0.2.2 до 198.51.100.2). Укажите nginx для привязки соответствующих служб к соответствующим внутренним IP-адресам.

Если вы выберете последнее решение, ваша среда будет более простой и более соответствующей стандартам, поскольку вы не будете иметь дело с необычными номерами портов и трансляцией портов, а вам нужно будет выделить несколько внутренних IP-адресов каждому веб-серверу (насколько я понимаю, у вас есть только один). Кроме того, если вы используете последнее решение, вы можете использовать NAT 1: 1.

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

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

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

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

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

3
ответ дан 3 December 2019 в 17:08

Похоже, вам нужен другой публичный IP-адрес для каждого из сайтов. Это означает, что брандмауэр должен предоставлять различные общедоступные IP-адреса. Затем брандмауэр может перенаправить запросы на разные IP-адреса на сервер nginx или может перенаправить эти запросы на разные порты на одном и том же IP-адресе. Затем вы можете настроить сервер nginx соответствующим образом.

То, как вы его настраиваете, зависит от вашего брандмауэра. Например, используя iptables, вы можете сделать что-то вроде этого в скрипте:

KINCAID=192.168.1.112
EXTIPJMN=50.60.70.80
iptables -t nat -A PREROUTING -d $EXTIPJMN -p tcp -i $EXT --dport 8081 -j DNAT --to-destination $KINCAID:8080

Это будет маршрутизировать запросы, поступающие на IP-адрес EXTIPJMN (50.60.70.80) и порт 8081 на ваш внутренний сервер с IP-адресом KINCAID (192.168.1.112) и порт 8080

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

2
ответ дан 3 December 2019 в 17:08

Теги

Похожие вопросы