Заранее прошу прощения, если вопрос не имеет смысла, дайте мне знать.
У меня небольшая локальная сеть (~ 10 виртуальных серверов), использующая Win Server 2008 в качестве DNS-сервера. Он находится за межсетевым экраном Smoothwall Express 3.0 с портами, перенаправленными для определенных служб. У меня есть домен (123-reg) с NS, что из fear.org (DynamicDNS), а поддомены указывают на мой (динамический) IP-адрес, например.
subdomain1.example.com -> 123.456.789.101.
Я думаю, что это адекватно объясняет мою установку.
У меня вопрос, могу ли я иметь поддомены, например. subdomain1.example.com указывает только на конкретный локальный хост? Вот так:
subdomain1.example.com:80 -> брандмауэр (внешний вид) -> server1.example.com:80
subdomain2.example.com:80 -> межсетевой экран (внешний вид) -> server2.example.com:80
На самом деле я не обязательно хочу использовать порт 80, иначе я бы просто использовал VirtualHosts на apache, это просто пример порта.
В настоящее время я могу использовать либо subdomain1.example.com, либо subdomain2.example.com, и оба они будут указывать на server1.example.com:80
Мне не нужно продолжать использовать Win Server 2008 для DNS, я более чем счастлив перейти на BIND, если потребуется, просто было проще использовать DNS Win Server 2008.
Я не знаю, возможно ли это вообще, у меня такое чувство, что у меня только один внешний IP-адрес, но любая информация полезна!
В общем случае это невозможно, но вы можете использовать обратный прокси для конкретного случая HTTP-трафика.
Причина в том, что в IP-пакете обычно нет информации, которая могла бы идентифицировать поддомен, к которому вы пытались получить доступ, поэтому маршрутизатор не будет знать, на какую машину он должен переслать ваш пакет.
Для HTTP (v1.1) это работает, потому что он содержит запрошенное доменное имя в своем запросе.