Как соединить две виртуальные машины с доступным частным IP-адресом

408
amir mohamad hatami

Я пытаюсь установить несколько виртуальных машин на двух хостах Ubuntu, используя KVM (две отдельные машины).

Я хочу, чтобы все эти виртуальные машины были доступны с их частными IP-адресами (или общедоступными IP-адресами). Я знаю, что локальные IP-адреса виртуальных машин не могут быть использованы, поскольку они находятся за NAT. Пожалуйста, дайте мне знать самые простые варианты и требования для этой цели.

Чтобы быть более конкретным:

  1. Как они должны быть физически связаны (кабель, концентратор, маршрутизатор и т. Д.)? Эти две машины в настоящее время связаны с WIFI-маршрутизатором. Но так как роутеры WIFI иногда заняты и имеют большую задержку, я ищу лучший вариант.

  2. Как настроить виртуальные машины, чтобы их IP-адреса были видны другим?

Благодарю.

0
Есть 2 VMS на 2 отдельных компьютерах? Nathan.Eilisha Shiraini 5 лет назад 0
Да, у меня две машины и две KVM установлены на них. У меня на каждой машине около 5 виртуальных машин, поэтому я хочу, чтобы все виртуальные машины были доступны друг другу. amir mohamad hatami 5 лет назад 0
Находятся ли две машины Ubuntu в одной локальной сети? Я забыл обратиться к этому. Fanatique 5 лет назад 0
Спасибо, вы ответили на часть моего вопроса. Другая часть состоит в том, как физически соединить эти две машины (если возможно с низкой задержкой). (Я имею ввиду кабель, роутер хаб ,, ...) amir mohamad hatami 5 лет назад 0
Я снова спрашиваю, находятся ли два хоста Ubuntu в одной локальной сети под одним и тем же маршрутизатором? Какая топология в вашей сети? Мне нужна эта информация, чтобы я мог ответить на ваш первый вопрос. Fanatique 5 лет назад 0
Они подключены к одному и тому же WIFI-маршрутизатору, но я думаю, что это нехорошо, потому что у него высокая задержка amir mohamad hatami 5 лет назад 0
Добавьте эту информацию в свой вопрос. Я сейчас отредактирую свой ответ. Fanatique 5 лет назад 0

1 ответ на вопрос

2
Fanatique

Как они должны быть физически связаны?

Если расстояние не слишком велико, и у вас мало компьютеров в локальной сети (например, это только 2 хоста Ubuntu), тогда вы можете напрямую подключить 2 хоста Ubuntu к маршрутизатору через кабель UTP (Ubuntu). хост 1 подключен к маршрутизатору через кабель, хост 2 Ubuntu также подключен к маршрутизатору через кабель). Используя прямое кабельное соединение, вы избежите более высоких задержек, чем у WiFi.

Однако, если расстояние слишком велико и у вас есть больше машин, которым требуется прямое соединение, вы можете использовать переключатель . Переключатель должен быть подключен через один из портов на маршрутизаторе, а затем подключить машины к другим портам коммутатора.

Как IP-адреса виртуальных машин должны быть видны другим виртуальным машинам / хостам?

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

Смотрите Как настроить Public Bridge @ KVM Networking для подробного руководства о том, как этого добиться.

Вы также можете проверить эту статью от VMware, которая объясняет, что такое мостовое соединение.

Примечание. Если вы хотите, чтобы только виртуальные машины могли иметь доступ друг к другу, а не получать к ним доступ с других хостов, вы можете использовать конфигурацию частного моста, которая настроит локальную сеть только для виртуальных машин, поэтому они будут находиться в отдельном состоянии. сеть.

Спасибо, вы ответили на часть моего вопроса. Другая часть состоит в том, как физически соединить эти две машины (если возможно с низкой задержкой). (Я имею ввиду кабель, роутер хаб ,, ...) amir mohamad hatami 5 лет назад 0
@amirmohamadhatami Пожалуйста, отредактируйте это и в своем вопросе. И что ты имеешь в виду физически связать их? Две машины Ubuntu находятся под одним и тем же маршрутизатором? Fanatique 5 лет назад 0
Я уже редактировал их. Я имею в виду физический уровень. Они подключены к одному и тому же WIFI-маршрутизатору, но я думаю, что это нехорошо, потому что у него высокая задержка amir mohamad hatami 5 лет назад 0
Простого использования кабеля, подключенного к маршрутизатору, более чем достаточно для обхода высокой задержки. Fanatique 5 лет назад 0
Спасибо, и это будет работать, если я использую частный мост конфигурации? (Или я должен установить некоторые настройки в роутере). Точнее говоря, я боюсь, что эти публичные IP-адреса со временем меняются, и если они меняются, мне придется переустанавливать свои программы на виртуальных машинах, что отнимает много времени. amir mohamad hatami 5 лет назад 0
Да, физическому уровню не важно, как вы настроили свою частную сеть. Это просто, чтобы избежать более высокой задержки. А если вы боитесь изменения IP-адресов, вы можете настроить статические IP-адреса - [Установить статический IP-адрес в Ubuntu] (https://www.howtoforge.com/linux-basics-set-a-static-ip -on-ubuntu), но это не должно быть проблемой, если только этим приложениям не нужно знать ** точный ** IP-адрес другой виртуальной машины. Fanatique 5 лет назад 0
Им нужно знать точный IP-адрес других виртуальных машин. amir mohamad hatami 5 лет назад 0
@amirmohamadhatami Нет проблем, если мой ответ решил вашу проблему, вы можете пометить его как правильный ответ. И если им нужно знать точный IP-адрес, то настройте статические IP-адреса - обратитесь к статье, на которую я ссылался. Fanatique 5 лет назад 0
Мне нужно иметь больше мостов (около шести мостов), но каждый мост должен быть подключен к одному порту eth, как я вижу. Пока у меня только один eth порт в моем ПК. Как вы думаете, есть какое-то решение? amir mohamad hatami 5 лет назад 0