Вы не , чтобы все 3 машины использовали один IP-адрес. Не то, как работает сеть. Посмотрите этот ответ о том, как работает сетевая маршрутизация , чтобы узнать, почему.
Что вы могли бы сделать: Настройте обратный прокси-сервер в качестве шлюза, а затем попросите его переслать адрес на основе Заголовок HTTP-запроса хоста. Я бы рекомендовал использовать Pound , так как он легкий и его единственная цель - быть обратным HTTP-прокси. Однако вы могли бы использовать apache или nginx для достижения того же, если вы более знакомы с ними.
После настройки обратного прокси-сервера вы можете использовать NAT для своих серверов и настроить свой шлюз со статическим IP-адресом.
1243] Пример того, как это сделать в Pound ( 1.2.3.4
- ваш статический IP-адрес, все server # .example.com
являются записями A для этого статического IP-адреса):
ListenHTTP
Address 1.2.3.4
Port 80
Service
HeadRequire "Host: .*server1.example.com.*"
BackEnd
Address 192.168.3.11
Port 80
End
End
Service
HeadRequire "Host: .*server2.example.com.*"
BackEnd
Address 192.168.3.12
Port 80
End
End
Service
HeadRequire "Host: .*server3.example.com.*"
BackEnd
Address 192.168.3.13
Port 80
End
End
End
Если вы хотите сохранить обратный прокси-сервер на одном из текущих серверов, вы должны необходимо:
server # .example. com
для прослушивания альтернативного порта - возможно, 8080. host
к серверу HTTP на порту 8080. Настройка альтернативного порта на HTTP-серверах должна быть довольно простой. Единственная немного сложная часть - это настройка обратного прокси, но вы можете найти множество примеров того, как это делается с использованием pound, apache или nginx.
com являются записями A для этого статического IP-адреса):ListenHTTP
Address 1.2.3.4
Port 80
Service
HeadRequire "Host: .*server1.example.com.*"
BackEnd
Address 192.168.3.11
Port 80
End
End
Service
HeadRequire "Host: .*server2.example.com.*"
BackEnd
Address 192.168.3.12
Port 80
End
End
Service
HeadRequire "Host: .*server3.example.com.*"
BackEnd
Address 192.168.3.13
Port 80
End
End
End
Если вы хотите сохранить обратный прокси-сервер на одном из ваших текущих серверов, вам необходимо:
сервере # .example.com
для прослушивания альтернативного порт --- возможно, 8080. host
к серверу HTTP на порту 8080. Необходимо настроить альтернативный порт на HTTP-серверах. быть довольно простым. Единственная немного сложная часть - это настройка обратного прокси, но вы можете найти множество примеров того, как это делается с использованием pound, apache или nginx.
com - это записи A для этого статического IP-адреса):ListenHTTP
Address 1.2.3.4
Port 80
Service
HeadRequire "Host: .*server1.example.com.*"
BackEnd
Address 192.168.3.11
Port 80
End
End
Service
HeadRequire "Host: .*server2.example.com.*"
BackEnd
Address 192.168.3.12
Port 80
End
End
Service
HeadRequire "Host: .*server3.example.com.*"
BackEnd
Address 192.168.3.13
Port 80
End
End
End
Если вы хотите сохранить обратный прокси-сервер на одном из текущих серверов, вам необходимо:
сервере # .example.com
, чтобы прослушивать альтернативный порт --- возможно, 8080. host
к серверу HTTP на порту 8080. Необходимо настроить альтернативный порт на HTTP-серверах. быть довольно простым. Единственная немного сложная часть - это настройка обратного прокси, но вы можете найти множество примеров того, как это делается с использованием pound, apache или nginx.
ListenHTTP
Address 1.2.3.4
Port 80
Service
HeadRequire "Host: .*server1.example.com.*"
BackEnd
Address 192.168.3.11
Port 80
End
End
Service
HeadRequire "Host: .*server2.example.com.*"
BackEnd
Address 192.168.3.12
Port 80
End
End
Service
HeadRequire "Host: .*server3.example.com.*"
BackEnd
Address 192.168.3.13
Port 80
End
End
End
Если вы хотите сохранить обратный прокси на одном из имеющихся серверов, вам необходимо:
сервере # .example.com
для прослушивания альтернативного порта - возможно, 8080. host
к серверу HTTP на порту 8080. Настройка альтернативного порта на серверах HTTP должна быть довольно простой. Единственная немного сложная часть - это настройка обратного прокси, но вы можете найти множество примеров того, как это делается с использованием pound, apache или nginx.
ListenHTTP
Address 1.2.3.4
Port 80
Service
HeadRequire "Host: .*server1.example.com.*"
BackEnd
Address 192.168.3.11
Port 80
End
End
Service
HeadRequire "Host: .*server2.example.com.*"
BackEnd
Address 192.168.3.12
Port 80
End
End
Service
HeadRequire "Host: .*server3.example.com.*"
BackEnd
Address 192.168.3.13
Port 80
End
End
End
Если вы хотите сохранить обратный прокси-сервер на одном из текущих серверов, вам необходимо:
сервере # .example.com
для прослушивания альтернативного порта - возможно, 8080. host
к серверу HTTP на порту 8080. Настройка альтернативного порта на серверах HTTP должна быть довольно простой. Единственная немного сложная часть - это настройка обратного прокси, но вы можете найти множество примеров того, как это делается с использованием pound, apache или nginx.
вам нужно будет: сервере №. example.com
для прослушивания альтернативного порта - возможно, 8080. host
в HTTP-серверы на порту 8080. Настройка альтернативного порта на HTTP-серверах должна быть довольно простой. Единственная немного сложная часть - это настройка обратного прокси, но вы можете найти множество примеров того, как это делается с использованием pound, apache или nginx.
вам нужно будет: сервере №. example.com
для прослушивания альтернативного порта - возможно, 8080. host
в HTTP-серверы на порту 8080. Настройка альтернативного порта на HTTP-серверах должна быть довольно простой. Единственная немного сложная часть - это настройка обратного прокси, но вы можете найти множество примеров того, как это делается с использованием pound, apache или nginx.
com для прослушивания альтернативного порта - возможно, 8080. host
к серверу HTTP на порту 8080. Настройка альтернативного порта на HTTP-серверах должна быть довольно простой. Единственная немного сложная часть - это настройка обратного прокси, но вы можете найти множество примеров того, как это делается с использованием pound, apache или nginx.
com для прослушивания альтернативного порта - возможно, 8080. хоста
к серверу HTTP на порту 8080. Настройка альтернативного порта на HTTP-серверах должна быть довольно простой. Единственная немного сложная часть - это настройка обратного прокси, но вы можете найти множество примеров того, как это делается с использованием pound, apache или nginx.
Как правило, вы не можете настроить это по имени, только выбирая по порту. Я предполагаю, что теоретически возможно иметь одно устройство, которое прослушивает имя и перенаправляет систему на основе этого имени, но я не слышал об устройстве / программе, которые действительно могли бы это сделать. У вас может быть другой ответ веб-сервера в зависимости от имени (отсюда я считаю, что это теоретически возможно).
Как правило, вы выполняете перенос вперед. Если вы хотите, чтобы server1 был вашим отправляющим почтовым сервером, вы бы перенаправили порт 25 (скорее всего), с server2 в качестве вашего веб-сервера, вы бы перенаправили порт 80 на server2, и если server3 должен был быть вашим веб-сервером SSL, тогда вы перенаправите на него порт 443. Таким образом, ОДИН IP обрабатывает все 3 сервера ...