Маршрутизация между разными IP подсетями в Hyper-V

В тестовом стенде на отдельно-стоящем Hyper-V сервере потребовалось создать несколько внутренних IP подсетей и настроить маршрутизацию между ними. По умолчанию Hyper-V не маршрутизирует трафик между подсетями на виртуальных коммутаторах. Поэтому при решении задачи в-лоб обычно создают отдельную ВМ с двумя сетевыми интерфейсами на разных коммутаторах Hyper-V (в разных подсетях) и настраивают маршрутизацию на между интерфесами средствами гостевой ОС (это может быть как ВМ с Windows Server с маршрутизацией ролью RRAS или Linux хост с нужной таблицей маршрутов ). Этот способ неудобен тем, что необходимо держать отдельную ВМ только для маршрутизаций, и при добавлении новой IP подсети приходится добавлять новый серевой интерфейс и перенастраивать маршрутизацию на шлюзе. Но мне удалось разобраться, как настроить Hyper-V хост, чтобы он сам выполнял роль маршрутизатора между разными виртуальными коммутаторами/IP подсетями.

Итак, у меня на хосте Hyper-V созданы 2 виртуальные машины в разных подсетях со следующими IP адресами:

  • Msk-dc01 : 192.168.13.11/24 (шлюз 192.168.13.1)
  • Spb-dc02 : 192.168.113.11/24 (шлюз 192.168.113.1)

Чтобы разрешить маршрутизацию в Windows Server нужно включить специальный параметр реестра IPEnableRouter (он разбирался в статье про настройку форвардинга портов в Windows ).

На хосте Hyper-V откройте консоль PowerShell с правами администратора и внесите изменение в реестр и перезагрузите хост:

Set-ItemProperty -Path HKLM:systemCurrentControlSetservicesTcpipParameters -Name IpEnableRouter -Value 1
Restart-computer

Следующим этап – создать два новых виртуальных коммутатора Hyper-V типа Internal. Можно создать коммутаторы из консоли Hyper-V Manager, а можно из PowerShell:

New-VMSwitch -Name vSwitchIntMSK -SwitchType Internal
New-VMSwitch -Name vSwitchIntSPB -SwitchType Internal

Теперь на хосте Hyper-V перейдите в Control PanelNetwork and InternetNetwork Connections. Перед вами появится список сетевых адаптеров хоста. Среди них должны появится есть два новых виртуальных адаптера (Hyper-V Virtual Ethernet Adapter) для созданных вами виртуальных коммутаторов. Назначьте им IP адреса с помощью PowerShell или через свойства сетевых адаптеров:

New-NetIPAddress -InterfaceAlias ‘vEthernet (vSwitchIntMSK)’ -IPAddress 192.168.13.1 -PrefixLength 24
New-NetIPAddress -InterfaceAlias ‘vEthernet (vSwitchIntSPB)’ -IPAddress 192.168.113.1 -PrefixLength
24

Как вы видите, мы назначили этим интерфейсам IP адреса шлюзов по-умолчанию в каждой подсети.

Подключите каждую ВМ к своему виртуальному коммутатору (если вы еще не сделали это):

Connect-VMNetworkAdapter -VMName Msk-dc01 -SwitchName vSwitchIntMSK
Connect-VMNetworkAdapter -VMName spb-dc03 -SwitchName vSwitchIntspb

Теперь ваши ВМ будут пересылать трафик через эти интерфейсы виртуальных коммутаторов.

Проверьте, что теперь виртуальные машин Hyper-V из разных сегментов видят друг друга. Проверьте маршрутизацию с помощью tracert и доступность TCP портов с помощью PowerShell командлета Test-NetConnection :

Test-NetConnection 192.168.13.11 -port 445
tracert 192.168.13.11

Как вы видите, теперь хосты отвечают на ICMP ping и TCP. Имейте в виду, что настройки Windows Defender Firewall в ваших ВМ могут блокировать трафик. Убедитесь, что вы разрешили ICMP трафик в Windows Firewall и добавили другие разрешающие правила файервола.

Итак, мы настроили маршрутизацию между несколькими виртуальными подсетями на хосте Hyper-V. Эта методика работает как для Hyper-V на Windows 10, так и на Windows Server 2016/2019.

admin

Share
Published by
admin

Recent Posts

Консоль удаленного рабочего стола(rdp console)

Клиент удаленного рабочего стола (rdp) предоставляет нам возможность войти на сервер терминалов через консоль. Что…

2 месяца ago

Настройка сети в VMware Workstation

В VMware Workstation есть несколько способов настройки сети гостевой машины: 1) Bridged networking 2) Network…

2 месяца ago

Логи брандмауэра Windows

Встроенный брандмауэр Windows может не только остановить нежелательный трафик на вашем пороге, но и может…

2 месяца ago

Правильный способ отключения IPv6

Вопреки распространенному мнению, отключить IPv6 в Windows Vista и Server 2008 это не просто снять…

2 месяца ago

Ключи реестра Windows, отвечающие за параметры экранной заставки

Параметры экранной заставки для текущего пользователя можно править из системного реестра, для чего: Запустите редактор…

2 месяца ago

Как управлять журналами событий из командной строки

В этой статье расскажу про возможность просмотра журналов событий из командной строки. Эти возможности можно…

2 месяца ago