Вы здесь

Как настроить NAT в Windows Server 2016


Настройка NAT в Windows Server 2016

Привет, недавно столкнулся с ситуацией — есть выделенный сервер, на сервер установлен Hyper-V, провайдер выдает один белый IP на сервер. Обратились ко мне с вопросом — как можно сделать так, что бы не покупая дополнительные адреса, на создаваемых на сервере виртуальных машинах работал интернет.

В случае, например с VirtualBox вопрос решается подключением виртуальной машины к сети с типом NAT, но как же быть с Hyper-V, в нем нельзя подключить виртуальный свитч к сети NAT.

Ответ очевиден — нужно подключить свитч к внутренней сети, и с него трафик натить через физический порт. Сделать это совсем не сложно.

Ниже я расскажу как можно настроить NAT на Windows Server 2016 через PowerShell, а так же как можно настроить NAT на более старых версиях ОС Windows, через RRAS (к слову и на Windows Server 2016, через RRAS то же можно делать).

Начнем с более предпочтительного и простого способа - через PowerShell, но он для Windows 2016 и Windows 10 (к слову эти же команды должны работать и на более старых версях Windows, при условии, что будет установлен PowerShell 5, но я не проверял, кто проверит, отпишитесь в комментариях).

#Добавляем виртуальный свитч
New-VMSwitch -name NAT -SwitchType Internal
#Добавляем NAT
New-NetNat -Name LocalNat -InternalIPInterfaceAddressPrefix "10.0.0.0/24"
#Назначем адрес виртуальному свитчу
Get-NetAdapter "vEthernet (NAT)" | New-NetIPAddress `
-IPAddress 10.0.0.1 -AddressFamily IPv4 -PrefixLength 24
#Делаем проброс портов
Add-NetNatStaticMapping -NatName NATnetwork -Protocol TCP `
-ExternalIPAddress 0.0.0.0 -InternalIPAddress 10.0.0.2 `
-InternalPort 22 -ExternalPort 50022
#Посмотреть текущие пробросы портов можной командой:
Get-NetNatStaticMapping
#Как и список сетей NAT
Get-NetNat
#Такими командами это хозяйство можно удалить
Remove-NetNatStaticMapping -StaticMappingID 0
Remove-NetNat -Name LocalNat

Теперь опишу способ, как можно сделать NAT, который работает практически на всех версиях винды (на 2003, 2008, 2012 и 2016 соответсвенно), будем делать NAT через RRAS.

Сперва нужно поставить роль RAS, для этого заходим в диспетчер сервера, жмем управление и выбираем — добавить роли и компоненты.

Диспетчер серверов, управление

В мастере добавления ролей, в ролях сервера, выбираем Удаленный доступ.

Выбираем роль - удаленный доступ

В службах ролей удаленного доступа, выбираем маршрутизация,

Службы ролей - выбираем маршрутизация

и добавляем необходимые компоненты.

Добавляем необходимые компоненты

После завершения установки, перезагружаем сервер, возвращаемся в диспетчер сервера и выбираем: средства — маршрутизация и удаленный доступ.

В службах, в диспетчере сервера выбираем - маршрутизация и удаленный доступ

Щелкаем правой кнопкой по нашему серверу и выбираем - настроить маршрутизацию и удаленный доступ.

правой кнопкой по серверу - настроить и включить удаленный доступ

На втором шаге мастера настройки сервера маршрутизации и удаленного доступа, выбираем - преобразование сетевых адресов (NAT).

На втором шаге выбирает - преобразование сетевых адресов (NAT)

Дальше выбираем сетевой интерфейс, который подключен к интернету.

Выбираем сетеовй интерфейс, который смотрит в интернет

На этом настройка NAT на Windows Server 2016 закончена, вернемся в консоль управления RRAS, развернем наш сервер, перейдем в IPv4, и зайдем в преобразование  сетевых адресов.

Смотрим доступные интерфейсы, после настройки

Здесь можно посмотреть свойства сетевых интерфейсов. Например для внутреннего свойства выглядят так:

Свойства сетевого интерфейса, который подключен к внутренней сети

А для внешнего так:

Свойства внешнего сетевого интерфейса

Здесь же можно сделать проброс портов, например, сделаю проброс ssh до виртуальной машины. Заходим в службы и порты и жмем добавить,

Вкладка службы и порты

Здесь указываем понятное имя службы, входящий порт (порт по которому нужно ломиться на сервер), адрес сервера к которому пробрасываем порт, и порт сервера.

Добаление новой службы, для проброса портов

Всё порт проброшен. Можно пробовать подключиться.

Проверяем подключение

20 28

Поделитесь статьей с друзьями в соц. сетях, возможно, она будет им полезна.


Если вам помогла статья, вы можете >>отблагодарить автора<<


Комментарии

Здравствуйте. Спасибо за статью. Многое прояснил для себя. Но остались и непонятки.

У меня есть один белый ip для хоста. На хосте я поднял виртуальную машину ip 192.168.0.10/28. На виртуальной машине поднял сайт на share point 2016 с адресом "]]>http://saittest]]>" . По вашему примеру пробросил порт 80 на внешний 50022. Теперь пытаюсь зайти на этот сайт, в браузере набираю "]]>http://ip]]> адрес сайта:50022" сайт отвечает выдает форму для проверки логина и пароля. Ввожу их. Но появляется ошибка 404, говорит что не удалось найти данный ресурс. С самой виртуальной машины сайт открывается.

Не подскажите что я делаю не так?

С уважением, Вячеслав.

1 0

Здравствуйте. Спасибо за статью. Многое прояснил для себя. Но остались и непонятки.

У меня есть один белый ip для хоста. На хосте я поднял виртуальную машину ip 192.168.0.10/28. На виртуальной машине поднял сайт на share point 2016 с адресом "]]>http://saittest]]>" . По вашему примеру пробросил порт 80 на внешний 50022. Теперь пытаюсь зайти на этот сайт, в браузере набираю "]]>http://ip]]> адрес сайта:50022" сайт отвечает выдает форму для проверки логина и пароля. Ввожу их. Но появляется ошибка 404, говорит что не удалось найти данный ресурс. С самой виртуальной машины сайт открывается.

Не подскажите что я делаю не так?

С уважением, Вячеслав.

0 0