Фон

Фон

У меня получилась следующая физическая схема:

VM -> Workstation -> Router -> Internet

Я хотел бы получить следующую схему сети:

Workstation -> Router1 -> Internet
VM          -> Router2 -> Internet

Где Router1и Router2являются одним и тем же физическим маршрутизатором, а виртуальная машина запущена на рабочей станции. Пакеты, отправляемые с рабочей станции на виртуальную машину, должны следовать по этому пути:

Workstation -> Router1 -> Internet -> Router2 -> VM

таким образом, что виртуальная машина видит публичный IP-адрес рабочей станции вместо ее частного IP-адреса.Можно ли это сделать?


Фон

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

решение1

ГдеRouter1 и Router2 — это один и тот же физический маршрутизатор.и виртуальная машина запущена на рабочей станции. Пакеты, идущие от рабочей станции к виртуальной машине, должны следовать по этому путиРабочая станция -> Маршрутизатор1 -> Интернет -> Маршрутизатор2 -> ВМ

Это просто невозможно, используя любой стандартный маршрутизатор. Маршрутизатор не будет направлять пакеты в Интернет, если пакет предназначен для сети, к которой он напрямую подключен. Так что единственное, что вы можете сделать, это что-то вроде этого. Рабочая станция -> Маршрутизатор1 -> ВМ.

Вероятно, вы сможете настроить сеть, в которой сможете что-то тестировать, но для этого потребуется более сложная настройка, чем вы, вероятно, хотели/ожидали.

Поскольку вы используете Vmware, вы можете настроить несколько виртуальных сетей, и по крайней мере для ВМ для тестирования. Вам нужно будет создать кучу. Я думаю, я бы создал такие сети.

ВМ

  • маршрутизатор 1 (подключает рабочую станцию ​​1 к локальной сети)
    • два интерфейса один на VMnet0 и один на VMnet3
  • маршрутизатор 2 (подключает рабочую станцию ​​2 к локальной сети)
    • два интерфейса один на VMnet0 и один на VMnet4
  • рабочая станция 1 (клиент или сервер для тестирования)
    • один интерфейс на VMnet3
  • рабочая станция 2 (клиент или сервер для тестирования)
    • один интерфейс на VMnet4

Сети:

  • VMnet0 - это ваша существующая мостовая сеть для тестирования, считайте ее внешней сетью.
  • VMnet3 — только хост — DHCP отключен — подключает маршрутизатор 1 к рабочей станции 1
  • VMnet4 — только хост — DHCP отключен — подключает маршрутизатор 2 к рабочей станции 2

Что касается маршрутизаторов, вы можете использовать что-то простое, например, версию x86 DD-WRT или pfsense, чтобы получить довольно простой в использовании маршрутизатор. Для вашего тестирования вы, возможно, захотите попробовать несколько разных маршрутизаторов.

При такой настройке сети пакеты между двумя тестовыми рабочими станциями будут передаваться следующим образом:

workstation 2 -> vmnet4 -> router 2 -> vmnet0 -> router 1 -> vmnet3 -> workstation 3

Связанный контент