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

Как маршрутизировать запросы через маршрутизатор на основе доменных имен?

Предполагая настройку, показанную ниже, можно ли маршрутизировать запросы, например, для subdomain1.domain.com на Сервер 1, subdomain2.domain.com на Сервер 2, другой seconddomain.com на Сервер 2 и т. д. без обратных прокси?

Цель состоит в том, чтобы разместить несколько серверов, каждый из которых должен быть доступен и управляться разными людьми автономно. Поскольку большинство из них являются тестовыми средами, цель состоит в том, чтобы иметь доступ к каждому из серверов на всех портах через другое имя домена / поддомена. Управление обратными прокси-серверами каждый раз, когда новая служба тестируется на одной из машин, было бы довольно обременительным, тем более, что они не ограничиваются веб-серверами HTTP / HTTPS и могут предлагать ряд протоколов через несколько разных портов.

Возможна ли такая установка? Как бы его настроить?

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

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

Таким образом, вам нужно больше IP-адресов, и вы можете либо правильно маршрутизировать и разместить общедоступные IP-адреса на своих трех серверах, либо вы можете разместить IP-адреса на своем маршрутизаторе и выполнить NAT 1: 1 (eww, особенно если NAT использует прокси ARP для "получения" IP-адресов)

Лучший способ сделать это - назначить сервером другой IP-адрес:

  • server1 первый публичный IP
  • server2 второй публичный IP
  • server3 третий публичный IP

Затем назначьте каждому домену другой IP-адрес в DNS.

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