2015-12-12 3 views
3

Я нашел это отличное сообщение в блоге, в котором показаны шаги по настройке NAT Virtual Switch, за которым я последовал. https://4sysops.com/archives/native-nat-in-windows-10-hyper-v-using-a-nat-virtual-switch/Настройка перенаправления портов на Windows 10 NAT Virtual Switch

Во-первых, командлет New-NetNat даже не принимает внешний IP-адрес в качестве параметра. Как NetNat знает, какой внешний IP-адрес следует использовать, если его несколько?

Скажите, что мой главный компьютер имеет внешний IP-адрес «192.168.1.112», а гостевая машина за NAT имеет внутренний IP-адрес «10.0.75.2». Я пытаюсь настроить переадресацию портов. Очевидным синтаксис, чтобы попытаться это:

Add-NetNatStaticMapping -NatName "NAT" -ExternalIpAddress "192.168.1.112" -ExternalPort 4000 -InternalIPAddress "10.0.75.2" -InternalPort 3389 -Protocol TCP 

, и я получаю следующее сообщение об ошибке:

Add-NetNatStaticMapping : The external IP address 192.168.1.112 and port number 4000 for the static mapping does not match an existing ExternalAddress' IP address or port range. Use Add-NetNatExternalAddress to add an ExternalAddress.

Я не понимаю, что это значит, но я следую предложению и тип:

Add-NetNatExternalAddress -NatName "NAT" -IPAddress "192.168.1.112" -PortStart 4000 -PortEnd 4000 

и я получаю следующее сообщение об ошибке:

Add-NetNatExternalAddress : Element not found.

На этом этапе я достиг пределов своей компетенции. Я не могу найти соответствующую документацию по этой функции NAT, кроме бесполезной тавтологии PowerShell («Add-NetNatExternalAddress: добавляет внешний адрес в экземпляр NAT»).

Что добавляет внешний адрес в NetNat? Что произойдет, если я не укажу порты? Будет ли это влиять на способность хоста подключаться? Каков правильный синтаксис для добавления внешнего адреса таким образом, чтобы я мог настроить статическое сопоставление?

+0

Привет, это поможет? https://cloudpuzzles.net/2014/07/windows-azure-pack-adding-multiple-public-ip-addresses-customer-networks/ – sodawillow

+0

Ваша ссылка, кажется, посвящает весь .209 IP-адрес NAT, автор был тщательно выберите IP-адрес, который не был использован хостом. Вот почему я не хочу попробовать Add-NetNatExternalAddress без указания порта. Я подозреваю, что выделение внешнего IP-адреса хоста NAT может повлиять на хост. – Charles

+0

У вас есть какие-либо обновления или решения? У меня такая же проблема, и я не знаю, что не так с этим – cleric

ответ

1

Ссылка выше в мой блог, Cloudpuzzles. Сценарий существует при использовании шлюзов NVGRE и NAT, а не нового виртуального коммутатора NAT. В настоящее время у меня нет записи об этом, но Томас здесь немного потрудился: http://www.thomasmaurer.ch/2015/11/hyper-v-virtual-switch-using-nat-configuration/

В принципе, перед добавлением адресов и т. Д. Вы должны добавить новый NetNat (который является NatName, на которое вы ссылаетесь в Add-NetNatExternalAddress).

PortStart и PortEnd, когда дело доходит до NVGRE, по крайней мере, используется в качестве границы, для которой могут использоваться арендаторы портов.

0

У меня была такая же проблема, и хотя я не знаю, почему Add-NetNatExternalAddress команда терпит неудачу, я был в состоянии получить NetNatStaticMapping работу, выполнив следующие действия:

Выполните следующую команду:

Get-NetNatExternalAddress 

Из списка внешних адресов, которые вы получаете, выберите любой внешний IP-адрес и внешний порт и используйте его как параметр для команды Add-NetNatStaticMapping.

Смежные вопросы