Назад | Перейти на главную страницу

Статическое сопоставление NAT Windows Server - экземпляр не найден

У меня есть Windows server 2016, работающий во внешнем месте с одним конкретным заданным IP-адресом, установленным как статический IPV4 в конфигурации сетевых карт.

На этом сервере я запускаю несколько виртуальных машин в сети NAT. Эти виртуальные машины работают в собственной среде Docker Swarm, частью которой не является сервер без операционной системы.

Я настроил нат-сеть с IP-диапазоном 192.168.137.0/24

Виртуальные машины настроены со статическими IP-адресами в этой сети и имеют доступ в Интернет. Сервер без оболочки также может пинговать виртуальные машины.

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

Теперь я пытаюсь направить ПОРТ 80 на конкретную виртуальную машину. Сначала я запускаю Get-NetNat, который возвращает следующее:

Name                             : NatNetwork
ExternalIPInterfaceAddressPrefix :
InternalIPInterfaceAddressPrefix : 172.31.70.0/24
IcmpQueryTimeout                 : 30
TcpEstablishedConnectionTimeout  : 1800
TcpTransientConnectionTimeout    : 120
TcpFilteringBehavior             : AddressDependentFiltering
UdpFilteringBehavior             : AddressDependentFiltering
UdpIdleSessionTimeout            : 120
UdpInboundRefresh                : False
Store                            : Local
Active                           : False

Первое, что я заметил, это то, что InternalIPInterfaceAddressPrefix не соответствует моим NAT-сетям.

Однако я попытался добавить статическое сопоставление, которое, в свою очередь, дало мне следующее:

PS C:\Users\Administrator> Add-NetNatStaticMapping -ExternalIPAddress "0.0.0.0/24" -ExternalPort 8080 -Protocol TCP -Int
ernalIPAddress "192.168.137.101" -InternalPort 8080 -NatName "NatNetwork"
Add-NetNatStaticMapping : Instance Nat NatNetwork not found
At line:1 char:1
+ Add-NetNatStaticMapping -ExternalIPAddress "0.0.0.0/24" -ExternalPort ...
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : InvalidOperation: (MSFT_NetNatStaticMapping:root/StandardCi...atStaticMapping) [Add-NetN
   atStaticMapping], CimException
    + FullyQualifiedErrorId : Windows System Error 50,Add-NetNatStaticMapping

Я решил, что NetNat настроен неправильно, поэтому попытался удалить его, но даже это не сработает:

PS C:\Users\Administrator> Remove-NetNat NatNetwork

Confirm
Are you sure you want to perform this action?
Performing operation Delete on Target NatNetwork PolicyStore Local
[Y] Yes  [A] Yes to All  [N] No  [L] No to All  [S] Suspend  [?] Help (default is "Y"): Y
Remove-NetNat : The requested operation is not supported.
At line:1 char:1
+ Remove-NetNat NatNetwork
+ ~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : InvalidOperation: (MSFT_NetNat (In..."NatNetwork;0"):root/StandardCimv2/MSFT_NetNat) [Re
   move-NetNat], CimException
    + FullyQualifiedErrorId : Windows System Error 50,Remove-NetNat

Теперь я в недоумении. Я пробовал много других вещей, но больше не могу сохранять ясность ума.

NatNetwork изначально создавалась согласно этому сообщению: https://blog.areflyen.no/2012/10/10/setting-up-internet-access-for-hyper-v-with-nat-in-windows-8/