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

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

Я хотел бы объяснить ситуацию, в которой мы находимся, а затем задать вопрос:

у нас есть домен:

  • www.example.com

и следующие поддомены:

  • форум.пример.com
  • портал.example.com
  • crm.example.com

и следующие приложения, размещенные на отдельных серверах:

  • Форум-IP-адрес сервера: 1.1.1.1,порт: 1010
  • портал-IP-адрес сервера: 2.2.2.2,порт: 2020
  • крм-IP-адрес сервера: 3.3.3.3,порт: 3030

все серверы работают за брандмауэром

с другой стороны, у нас есть только один публичный IP-адрес:

10.10.10.10

Таким образом, чтобы связать локальные серверы с публичным IP-адресом, мы можем создать записи виртуального хостинга в брандмауэре и создать публичные порты следующим образом:

  • 10.10.10.10:1010 будет указывать на 1.1.1.1:1010
  • 10.10.10.10:2020 будет указывать на 2.2.2.2:2020
  • 10.10.10.10:3030 будет указывать на 3.3.3.3:3030

затем мы настроим следующую запись A NAME в DNS ZONE:

  • www.example.com - 10.10.10.10

так что идти кФорумприложение, пользователь должен ввести:

  • www.example.com:1010

и так далее:

  • www.example.com:2020 дляпортал
  • www.example.com:3030 длякрм

Теперь вместо использования номера порта мы хотели бы использовать поддомен, например, если пользователь хочет перейти на форум, он просто введет:

  • Форум.example.com

и то же самое для других приложений.

Можно ли это сделать без покупки новых публичных IP-адресов для каждого приложения?

Извините за длинный пост. Спасибо.

решение1

Я полагаю, что ваши различные приложения доступны через HTTP/HTTPS. В этом случае у вас есть несколько общих вариантов.

  • Настройте свой веб-сервер на работу в качестве прокси-сервера для трех других поддоменов (www также является поддоменом) для предоставления услуг.
  • Установите HTTP/HTTPS-прокси для всех поддоменов (а также домена).

Вы можете начать с одного варианта и перейти на другой позже. Некоторые контейнеры приложений имеют плагины для веб-серверов, которые добавляют заголовки прокси, специфичные для контейнера.

Если вы используете HTTPS, вам понадобится альтернативное имя субъекта для каждого домена в сертификате. В качестве альтернативы вы можете использовать SNI в front-end (веб-сервер или прокси), чтобы предоставить правильный сертификат клиенту (только для клиентов с поддержкой SNI).

Связанный контент