mcdb
@mcdb
То ли программист, то ли видение...

Домашний сервер: 1 Public IP -> несколько виртуалок

Добрый день!

Ситуация такова: Есть GPON-интернет с Public IP 1.2.3.4 и например домашний сервер с внутренним IP 192.168.1.101. В настройках маршрутизатора я указываю переадресацию портов 22, 80, 8080 на соответствующие порты 192.168.1.101. На машине 192.168.1.101 стоит KVM, допустим, с тремя виртуальными машинами, смотрящими в сеть через свой NAT, наприме с IP 192.168.100.101, 192.168.100.102, 192.168.100.103.. Вот тут и возникает вопрос, как уже с машины 192.168.1.101 делать редирект(?) на виртуалки, в зависимости от того, к какому хосту обратились и при этом это всё было видно через интернет?

Т.е. я просто набираю, например, somehost.example.com, который в DNS A-записью смотрит в IP 1.2.3.4, потом роутер прокидывает этот запрос на машину 192.168.1.101 в своей локальной сети, машина 192.168.1.101 смотрит, какой хост от ней хотят и перекидывает дальше запрос, например, на машину 192.168.100.102.
  • Вопрос задан
  • 2658 просмотров
Решения вопроса 1
@inkvizitor68sl
Linux-сисадмин с 8 летним стажем.
server {
server_name somehost.example.com;
listen 80;
		location / {
			proxy_pass http://192.168.0.100;
			proxy_set_header Host $host;
			proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
			proxy_set_header X-Forwarded-Proto $scheme;
			proxy_set_header X-Real-IP $remote_addr;
		}
}


Подобное для каждого сайта в конфиг nginx-а загоняйте на сервере 192.168.1.101 (или куда у вас там трафик льётся)
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
@Scorp919
Это как раз работа веб сервера. Поставьте веб сервер и как раз он уже будет этим заниматься. Я бы рекомендовал держать все на одном веб сервере, а не на 3 виртуалках. Теряете много ресурсов на этом.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы