User Tools

Site Tools


добавление_nat-сети

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Next revision
Previous revision
добавление_nat-сети [2023/06/15 13:57] – created jpдобавление_nat-сети [2023/07/20 15:19] (current) jp
Line 1: Line 1:
 ===== Добавление NAT-сети ===== ===== Добавление NAT-сети =====
  
-Хотя, в настройках HYPER-V нет отдельного адаптера типа "NAT" - возможно добавить трансляцию адресов. В первую очередь это может потребоваться, если мы хотим транслировать запросы из внутренней сети (адаптеры Internal) в Интернет вместо того, чтобы пользоваться общим интернет-доступом (ICS). +Хотя, в настройках HYPER-V нет отдельного адаптера типа "NAT" - возможно добавить трансляцию адресов с использованием PowerShell 
 + 
 +В первую очередь это может потребоваться, если мы хотим транслировать запросы из внутренней сети (адаптеры Internal) в Интернет через NAT вместо того, чтобы пользоваться общим интернет-доступом (ICS). 
  
 Далее все команды выполняются на хостовой системе.  Далее все команды выполняются на хостовой системе. 
Line 8: Line 10:
  
    New-VMSwitch -SwitchName "SwitchName" -SwitchType Internal    New-VMSwitch -SwitchName "SwitchName" -SwitchType Internal
 +Узнаем и отмечаем индекс интерфейса, который мы создали, выполнив команду
 +
 +   Get-NetAdapter
 +Теперь присвоим ему адрес, использовав индекс
 +
 +   New-NetIPAddress -IPAddress 192.168.0.1 -PrefixLength 24 -InterfaceIndex 24
 +:!: //Если по каким-либо причинам мы получим сообщение о том, что адрес уже существует и его использовать нельзя, но, при этом, в реальности никаким адаптерам он не назначен, то можно его удалить.//
 +
 +   Remove-NetIPAddress -IPAddress '192.168.0.1'
 +Теперь создаем NAT-сеть c в том же адресном пространстве
 +   New-NetNat -Name MyNATnetwork -InternalIPInterfaceAddressPrefix 192.168.0.0/24
 +После создания сети - прописываем в гостевых системах любой адрес из выбранного диапазона, а в качестве шлюза по умолчанию - адрес хостового адаптера.
 +
 +**Можно ограничивать доступ для виртуальной машины при помощи ACL**
 +
 +Пример запрета SSH порта для виртуальной машины, имеющей доступ через NAT:
 +
 +<WRAP prewrap>
 +<code>
 +Add-VMNetworkAdapterExtendedAcl -VMName "UbuntuWS" -Action Deny -Direction Outbound -RemotePort "22" -Protocol "TCP" -Weight 100
 +</code>
 +</WRAP>
 +:!: Правила с большим //weight// обрабатываются раньне, чем правила с меньшим, т.е. explicit deny нужно писать с weight "1".
 +
 +Пример //explicit deny// для исходящего трафика
 +
 +   Add-VMNetworkAdapterExtendedAcl -VMName "UbuntuWS" -Action Deny -Direction Outbound -Weight 1
 +   
 +Пример разрешающего правила с указанием конкретного хоста
 +
 +<WRAP prewrap>
 +<code>
 +Add-VMNetworkAdapterExtendedAcl -VMName "UbuntuWS" -Action Allow -Direction Outbound -RemotePort "22" -Protocol "TCP" -RemoteIPAddress 192.168.244.3 -Weight 140
 +</code>
 +</WRAP>
 +
 +Удалить данное правило можно следующей командой:
 +
 +   Remove-VMNetworkAdapterExtendedAcl -VMName "UbuntuWS" -Direction Outbound -Weight 100
 +{{tag>Microsoft WindowsServer HYPER-V NAT networking PowerShell}}
добавление_nat-сети.1686837466.txt.gz · Last modified: 2023/06/15 13:57 by jp