Интернет

Вопрос по сетям, портам и т.д.

Есть сервер на котором крутятся две виртуальные машины. На каждой ВМ должно крутиться по сайту через apache2. У обоих ВМ по два конфига apache с 80 и 443 портом. Для обоих ВМ выполнен проброс портов, условно для первой ВМ порт 15000 проброшен на 443 порт, для второй ВМ порт 25000 проброшен на 443. По итогу сайт работает только на одной ВМ. Правильно понимаю, что для одного и того же порта может быть проброшен только один порт если две виртуальные машины находятся на одном сервере?
Трое ребят отправились в поход. В первый день они прошли 1/2 от всего маршрута, во второй день 1/3 от всего маршрута. В третий день оставшиеся 18км. Сколько км прошли ребята за эти три дня?

1/2x + 1/3x + 18 = Общее расстояние
1/6x = 18км = столько занимает в долях эти 18км
Значит 5/6x = 18*5 = 90 - за первые 2 дня
90+18 = 108км - весь маршрут

Да, это правильно. Если две виртуальные машины работают на одном сервере, только один порт может быть перенаправлен на один и тот же порт на хосте. В этом случае только одна из ВМ сможет использовать порт 443, так как трафик другой ВМ будет заблокирован. Это связано с тем, что хост имеет только один IP-адрес, а трафик, поступающий на порт 443, будет направлен только на одну из виртуальных машин.

Можно использовать разные порты на хосте для перенаправления трафика на один и тот же порт на ВМ, например 15000 и 25000. Однако в этом случае сайт будет доступен только на соответствующих портах на хосте.

Вы можете использовать разные порты на хосте для перенаправления трафика на один и тот же порт на виртуальных машинах, но это будет означать, что доступ к сайту будет осуществляться с использованием разных URL-адресов, по одному для каждой виртуальной машины. Например, если порт 15000 перенаправлен на порт 443 на первой виртуальной машине, сайт на этой виртуальной машине будет доступен по адресу [ваш-ip-адрес:15000]. Точно так же, если порт 25000 перенаправлен на порт 443 на второй виртуальной машине, сайт на этой виртуальной машине будет доступен по адресу [ваш-ip-адрес:25000]

Другой вариант — использовать обратный прокси. Обратный прокси — это сервер, который находится перед вашими виртуальными машинами и направляет входящий трафик на соответствующую виртуальную машину на основе URL-адреса или других критериев. Это позволит вам использовать один и тот же URL-адрес для обеих виртуальных машин и направлять трафик на правильную виртуальную машину на основе запрошенного URL-адреса.

Кроме того, вы можете использовать балансировщик нагрузки для распределения трафика между виртуальными машинами. Таким образом, вы можете использовать один и тот же URL-адрес, и трафик будет распределяться между виртуальными машинами, чтобы трафик был сбалансирован между ними.
Игорь К
Игорь К
902
Лучший ответ
Игорь К Извините, из предыдущего ответа забыл убрать мой ответ. Пишу сначала в блокноте, потом копирую и вставляю сюда. Забыл проверить все, быстро скопировал и вставил
что такое "проброшен"?
если у тебя в хостовой системе одна ВМ слушает 15000, а другая 25000, а внутри гостевых систем оба эти порта транслируются в 443-й, то должны работать оба сайта, иначе ты что-то не так сделал