Windows позволяет назначить несколько IP адресов (алиасов, псевдонимов) на один физический сетевой адаптер. Это может пригодиться, когда вы хотите запустить несколько веб сайтов с уникальными IP адресами на одном сервере IIS , хотите привязать приложение к определенному IP или готовитесь к смене IP адресации. В Windows можно назначить дополнительные статический адрес на сетевой интерфейс через графический интерфейс или из командной строки.
Добавить дополнительный IP адрес через панель управления Windows
Дополнительный IP адрес можно назначить на сетевой интерфейс через графический интерфейс панели управления Windows.
- Откройте панель управления сетевыми подключениями (выполните команду
ncpa.cpl
). - Откройте свойства вашего сетевого интерфейса.
- В списке протоколов выберите TCP/IP v4 и нажмите Свойства .
- Нажмите на кнопку Advanced (Дополнительно) и в секции «IP адреса» нажмите кнопку Добавить .
- Укажите дополнительный IP адрес и маску подсети и нажмите Добавить .
- Сохраните изменения.
Выполните команду ipconfig
и проверьте, у интерфейса появился второй IP адрес.
Проверьте доступность второго IP адреса по сети с других компьютеров командой ping. Он должен отвечать.
Параметр SkipAsSource и основной IP адрес сетевого адаптера
Когда вы назначаете дополнительный IP из панели управления, такой IP адрес будет использоваться для исходящих соединений. Дело в том, что в современных версиях Windows отсутствует понятие основного IP адреса. Если вы хотите запретить отправку исходящего трафика со всех дополнительных IP адресов, нужно включить для них опцию SkipAsSource .
С помощью PowerShell выведите список IPv4 адресов, назначенных сетевым адаптерам:
Get-NetIPAddress | where AddressFamily -eq IPv4| Select-Object IPAddress, InterfaceAlias, SkipAsSource
В этом примере SkipAsSource =False установлен для всех IP адресов компьютера. Если вы хотите сделать определенный IP адрес основным, выполните команду:
Get-NetIPAddress 192.168.1.90 | Set-NetIPAddress -SkipAsSource $True
Теперь указанный IP не будет использоваться в качестве источника исходящих подключений, кроме случаев его явного задействования определенным приложением. Так же при включенном флаге второй IP адрес не регистрируется в DNS (при включенной динамической регистрации).
Назначить второй IP адрес сетевому интерфейсу из командной строки/PowerShell
При добавлении дополнительного IP адреса из командной строки вы можете сразу включить для него флаг SkipAsSource. Например, с помощью netsh:
Netsh int ipv4 add address name="Local Area Connection" 192.168.1.92 255.255.255.0 SkipAsSource=True
Вывести список назначенных IP адресов и значение опции SkipAsSource:
netsh int ipv4 show ipaddresses level=verbose
Также можно настроить второй IP для сетевого интерфейса с именем Ethernet0 с помощью PowerShell:
New-NetIPAddress –IPAddress 192.168.1.92 –PrefixLength 24 –InterfaceAlias “Ethernet0” –SkipAsSource $True
Чтобы разрешить исходящий трафик с данного IP адреса сетевого интерфейса воспользуйтесь командой:
Get-NetIPAddress 192.168.1.92 | Set-NetIPAddress -SkipAsSource $False
Удалить дополнительный IP:
Get-NetIPAddress 192.168.1.92| Remove-NetIPAddress