@denisromanenko

Один белый IP — несколько виртуальных машин?

Добрый день, есть сервер с windows server, на нем крутится 1С. Есть один белый ip, больше докупить не получится.

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

Понятно, что раз айпи один, то придется заводить для них разные доменные имена, по которым сервер будет определять путь запроса.
Ну например pbx.example.com, 1c.example.com, corp.example.com

Так вот - возможно ли сделать так, чтобы основной сервер работал как роутер, и при при запросе, допустим, в pbx.example.com он все запросы по любым портам отправлял вм с телефонией,
По запрсу corp.example.com - на вм с сайтами
По запросу 1c.example.com чтобы сам обрабатывал?

Я знаю что веб-серверы типа nginx примерно так работают, а как это на уровне вм сделать?

Заранее спасибо!

Ps. К роутеру доступа нет, это отдельный сервер.
Порты могут пересекаться
  • Вопрос задан
  • 1694 просмотра
Пригласить эксперта
Ответы на вопрос 4
Jump
@Jump
Системный администратор со стажем.
Понятно, что раз айпи один, то придется заводить для них разные доменные имена, по которым сервер будет определять путь запроса.
Мне непонятно. Зачем городить такое, когда хватит одного доменного имени example.com?

возможно ли сделать так, чтобы основной сервер работал как роутер, и при при запросе, допустим, в pbx.example.com он все запросы по любым портам отправлял вм с телефонией,
Сделать чтобы сервер работал как роутер - без проблем.
Только вот вы похоже роутер с прокси сервером путаете.
Задача роутера - маршрутизировать трафик. Роутер вообще не знает что такое corp.example.com, и никак такую фигню обрабатывать не может, он знает только IP адрес и порт, без всяких буковок с точками.

С доменными именами работает либо веб сервер, либо прокси сервер, вот прокси как раз и может завернуть трафик куда-нибудь на основе доменного имени.

В вашем случае логичнее сделать так - все сервисы подключаются по имени example.com, которое резольвиться в ваш IP. Телефония будет идти по какому-то конкретному порту, поэтому сервер или роутер которому назначен этот IP должен будет перебрасывать пакеты приходящие на этот порт на сервер телефонии, а пакеты приходящие на 80порт на веб сервер, соответственно пакеты приходящие на 1с тоже будут перебрасываться на нужный сервер в зависимости от порта на который они пришли.

Логичнее и удобнее делать это на роутере, да и белый адрес как правило в таких сетях назначается именно роутеру. Сомневаюсь что у вас белый IP адрес висит на интерфейсе Windows сервера. Так что проброс портов все равно делать придется.
Ответ написан
Комментировать
mindtester
@mindtester
http://iczin.su/hexagram_48
если у вас сервисы на разных портах - проще на обычном роутере развести пробросы портов, на разные внутренние ip. совпадающие порты можно сдвинуть на внешнем интерфейсе. если сервисов не много, это будет гораздо проще, быстрее и дешевле. и можно обойтись одним именем
Ответ написан
xmoonlight
@xmoonlight
https://sitecoder.blogspot.com
На один внешний IP и порт (80 и 443) (касательно HTTP(S) протокола) - можно посадить сколько угодно доменов, т.к. доменное имя передаётся в HTTP/1.0 пакете и это можно запроксировать веб-сервером на разные внутренние IP-адреса.

Точки входа (на внешний IP-адрес) можно сделать разные (или все перечисленные вместе) и привязать к разным внутренним IP-адресам (обычным или виртуальным машинам):
srv1.example.com
srv2.example.com
example.com
example.com/srv1
example.com/folder/srv1

Также, касательно доменных сервисов, есть в DNS поле SRV, где для каждого протокола можно указать целевой хост, порт и приоритет: линк

PS: Инструкция по настройке proxy на Apache (Digital Ocean): здесь.
Ответ написан
Комментировать
@UPSA
anykey. Я не программист, я просто ленивый.
У меня ваша задача проще была...
Proxmox - ставь виртуальные машины.
Одну виртуальную машину делай роутером. Остальные машины под необходимые службы. Как уже писали пробрасывай порты с "служб" на "роутер".
Притом веб-службы можно и через nginx пропустить.
У меня на "роутере" также стоял OpenVPN и я конектился к отдельным внутренним виртуальным машинам.

и при при запросе, допустим, в pbx.example.com он все запросы по любым портам отправлял вм с телефонией,
По запрсу corp.example.com - на вм с сайтами
По запросу 1c.example.com чтобы сам обрабатывал?

Как уже сказали можно на одно имя повесить, но можно как ты написал .... все имена все равно на один IP будет ссылаться.
С телефонией надо проверять .... сомнения у меня что хватит "мощности".

Мне было проще - было много белых IP, делал что хотел :)
48 ГБ оперативки и 2-х каменный ML350 - это к вопросу о мощности. А что у тебя?
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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