Индекс сетевого интерфейса windows

wires

Network interface index numbers are used to point network traffic in a specific direction.

Image Credit:
hxdbzxy/iStock/Getty Images

Modern computers often have multiple physical and software-based network adapters. People and machines alike can use system-assigned network interface index numbers to tell network elements apart. You can find all of your computer’s network interface index numbers using the «route» command in the command prompt. Network interface index numbers differ from Internet Protocol addresses in that they are used within a single device to direct traffic, while IP addresses regulate inter-device communication.

About Network Interface Index Numbers

According to Cisco, an interface index value is a unique identifying number for a physical or logical network device. Starting at the number one, the computer assigns an index number to each device to designate network traffic paths. Typical computer uses on small networks don’t need to worry about adjusting network traffic with the interface index numbers because the network hardware automatically configures traffic paths. However, larger scale networks that are concerned about performance speed can use the interface index numbers to control network data paths. If the computer initializes the network devices through a reboot it may reassign index numbers; computers need to keep interface index numbers persistent when using specified network paths.

List Device Network Interface Index Numbers

The command prompt has all the tools you need to identify interface index numbers and adjust network paths. You can launch a command prompt by pressing «Windows Key-R,» typing «cmd» and pressing «Enter.» Select the command prompt window, type the command «route print» and press «Enter» to display the «Interface List» and system routing tables. The interface index numbers appear under the Interface List in the left column and correspond to the physical or logical device listed in the right column. Alternatively, you can enter «route print 256.*» to display the Interface List with blank routing tables. The interface index has an integer value; however, older operating systems may display the value in hexadecimal instead of base-10 with a «0x» before the index number.

Get More Device Information

While the Interface List ties each index number to a device, the device names may not be particularly descriptive as to what they do. You can find more information on each of the devices by entering the command «ipconfig /all» into the command prompt. The ipconfig command does not display the index number; rather, it is used to display and adjust TCP/IP network values. The ipconfig command breaks out each device by the same name used in the Interface List and provides more information, including a device description, device activity status and the path the device is using to connect to the network.

Interface Index Numbers Are for Specificity

Network traffic will take any path available to get from the origin system to the destination system. The interface numbers are useful for specifying which path traffic takes between systems. For example, the command «route -p add 1.2.3.4 mask 255.255.0.0 5.6.7.8 if 0x1» instructs all traffic leaving through index device 1 going to the device at example IP address «1.2.3.4» to go to the device at «5.6.7.8» next on the way to the destination.

Перейти к содержанию

На чтение 2 мин Просмотров 556 Обновлено

Всем привет сегодня хочу рассказать, как посмотреть id интерфейса windows. Для чего это может потребоваться, примером может быть если вы хотите пустить определенный маршрут через определенный интерфейс, об этом я рассказывал в статье Как прописать статический маршрут в windows с помощью утилиты командной строки route, но не упомянул, где его можно посмотреть, давайте заполним пробел. Еще примером может быть создание виртуальных коммутаторов в гипервизоре Hyper-V, где нужно понять, какой сетевой интерфейс будет выступать в роли up-link.

Нам поможет все та же команда route print, вводим ее и видим поле Список интерфейсов и на против каждого есть свой ID.

Как посмотреть id интерфейса windows-01

Можно так же эту информацию получить и через PowerShell запрос, для этого выполните такую команду:

В случае с PowerShell на необходимо смотреть на столбец ifindex, он будет соответствовать номеру ID при выводе команду route print. Я выделил это на изображении.

Как получить информацию с ID сетевого интерфейса на удаленных компьютерах

Задача такая, есть список имен компьютеров или Ip-адреса в файле и необходимо вывести:

  • ✅ Имя компьютера
  • ✅ InterfaceIndex
  • ✅ MacAddress
  • ✅ InterfaceDescription

$computers = Get-Content -Path «C:\Temp\RDS\servers.txt»

foreach ($computer in $computers) {
$networkInterfaces = Invoke-Command -ComputerName $computer -ScriptBlock {
Get-NetAdapter | Select-Object Name, InterfaceIndex, MacAddress, InterfaceDescription
}

foreach ($interface in $networkInterfaces) {
Write-Output «Компьютер: $computer, Имя интерфейса: $($interface.Name), InterfaceIndex: $($interface.InterfaceIndex), MacAddress: $($interface.MacAddress), Описание интерфейса: $($interface.InterfaceDescription)»
}
}

На выходе вот такой результат, пре желании можно экспортировать в файл.

Вот так вот просто посмотреть id интерфейса windows. Материал сайта pyatilistnik.org

  • Remove From My Forums

Как узнать номер сетевого интерфейса

  • Вопрос

  • Нужно построить таблицу маршрутизации, при помощи программы route. Но не могу указать номер интерфейса… У меня 2 активных сетевых соединения. Я уже пробовал методом перебора от 1 до 50 и всегда получаю сообщение об ошибке, что мол такого интерфейса нет. Как узнать номер сетевого интерфейса?

Ответы

  • Насколько я помню, route print печатает interface list среди прочего, где для каждого интерфейса указан номер.

Все ответы

  • Насколько я помню, route print печатает interface list среди прочего, где для каждого интерфейса указан номер.

  • Номер сетевого интерфейса не обязателен, будет выбран автоматически для указаннового вами шлюза.

    ЗЫ.Согласен с предыдущим оратором.

  • Спасибо Дмитрий и Popus. Тема закрыта.

  • Георгий, а Вы еще кнопочку такую нажмите: «Было ли это сообщение информативным? — Да!»

  • Да вот не ту кнопочку нажать надо:) Надо нажать кнопочку Отметить как ответ

  • In command prompt:

    netsh interface ipv4 show interface

    • Изменено

      17 августа 2016 г. 14:12

    • Предложено в качестве ответа
      old_boy
      14 ноября 2016 г. 12:38
  • Никак нет, не печатает Interface List в таблице маршрутов. Ответ не годится

  • Действительно, именно здесь ясно видно с родными названиями интерфейсов их номера

  • Уважаемый Марат, не нужно заниматься некропостингом. Если у вас есть вопрос который не получается решить поиском — создайте новое обсуждение


    The opinion expressed by me is not an official position of Microsoft

I have the following problem: I have a server with a rather dynamic network configuration and need to configure routes on it with the IF parameter:

route add  ... mask ... ... if ?

Is there a reliable way, manual and or programmatical, to get that interface number if I know just about everything else about that adaptor?

asked May 24, 2013 at 6:50

You can see that info also when you run the route print command. It’s the first thing displayed. The index is the first column

===========================================================================
Interface List
 13... ......Bluetooth Device (Personal Area Network)
 10... ......Intel(R) 82566MM Gigabit Network Connection
 11... ......Intel(R) Wireless WiFi Link 4965AG
 17... ......VMware Virtual Ethernet Adapter for VMnet1
 18. . ......VMware Virtual Ethernet Adapter for VMnet8

answered May 24, 2013 at 18:21

RexRex

7,8953 gold badges28 silver badges45 bronze badges

1

The following command displays the list of interfaces:

netsh int ipv4 show interfaces

answered Jan 15, 2015 at 8:50

AdminAdmin

2012 silver badges2 bronze badges

3

Since you know everything else about the adaptor, and since you are using Server 2008, you can (and should) just add your routes with netsh using the interface name:

netsh int ipv4 add route <remote netid>/<remote netmask> <interface name> <next hop>

Use of the route command is generally deprecated in 2008+.

answered May 24, 2013 at 18:00

phoebusphoebus

8,3701 gold badge31 silver badges29 bronze badges

3

You can using PowerShell:

Get-WMIObject Win32_networkadapter | Select-Object Name, AdapterType, InterfaceIndex | Format-List

answered May 24, 2013 at 7:05

cuonglmcuonglm

2,3562 gold badges15 silver badges20 bronze badges

2

Оглавление:

  • О индексных номерах сетевого интерфейса
  • Список номеров устройств сетевого интерфейса
  • Получить больше информации об устройстве
  • Индексные номера интерфейса предназначены для специфичности

Видео: PHP Syntax (Февраль 2023)

Видео: PHP Syntax (Февраль 2023)

Современные компьютеры часто имеют несколько физических и программных сетевых адаптеров. Люди и машины могут использовать назначенные системой индексы сетевого интерфейса для разделения элементов сети. Вы можете найти все номера индексов сетевого интерфейса вашего компьютера, используя команду «route» в командной строке. Индексные номера сетевого интерфейса отличаются от адресов интернет-протокола тем, что они используются в одном устройстве для направления трафика, а IP-адреса регулируют связь между устройствами.

Индексные номера сетевого интерфейса используются для направления сетевого трафика в определенном направлении. Кредит: hxdbzxy / iStock / Getty Images

О индексных номерах сетевого интерфейса

Согласно Cisco, значение индекса интерфейса представляет собой уникальный идентификационный номер для физического или логического сетевого устройства. Начиная с номера один, компьютер назначает индексный номер каждому устройству для обозначения путей сетевого трафика. Типичным компьютерам, использующимся в небольших сетях, не нужно беспокоиться о настройке сетевого трафика с помощью индексных номеров интерфейса, поскольку сетевое оборудование автоматически настраивает пути трафика. Однако в крупных сетях, которые обеспокоены скоростью работы, могут использоваться номера индексов интерфейса для управления сетевыми трактами данных. Если компьютер инициализирует сетевые устройства через перезагрузку, он может переназначить номера индекса; Компьютеры должны сохранять порядковые номера интерфейса постоянными при использовании указанных сетевых путей.

Список номеров устройств сетевого интерфейса

В командной строке есть все инструменты, необходимые для определения номеров интерфейсов и настройки сетевых путей. Вы можете запустить командную строку, нажав «Windows Key-R», набрав «cmd» и нажав «Enter». Выберите окно командной строки, введите команду «route print» и нажмите «Enter», чтобы отобразить «Список интерфейсов» и таблицы маршрутизации системы. Индексы интерфейса отображаются в списке интерфейсов в левом столбце и соответствуют физическому или логическому устройству, указанному в правом столбце. Кроме того, вы можете ввести «route print 256. *» для отображения списка интерфейсов с пустыми таблицами маршрутизации. Индекс интерфейса имеет целочисленное значение; однако более старые операционные системы могут отображать значение в шестнадцатеричном формате вместо base-10 с «0x» перед индексным номером.

Получить больше информации об устройстве

В то время как список интерфейсов связывает каждый индексный номер с устройством, имена устройств могут не быть особенно описательными в отношении того, что они делают. Вы можете найти дополнительную информацию о каждом из устройств, введя команду «ipconfig / all» в командной строке. Команда ipconfig не отображает номер индекса; скорее он используется для отображения и настройки сетевых значений TCP / IP. Команда ipconfig выделяет каждое устройство с тем же именем, которое используется в списке интерфейсов, и предоставляет дополнительную информацию, включая описание устройства, состояние активности устройства и путь, который устройство использует для подключения к сети.

Индексные номера интерфейса предназначены для специфичности

Сетевой трафик будет проходить через любой доступный путь от исходной системы к целевой. Номера интерфейсов полезны для указания того, какой трафик пути проходит между системами. Например, команда «route -p add 1.2.3.4 mask 255.255.0.0 5.6.7.8 if 0x1» дает указание всему трафику, проходящему через индексное устройство 1, идти на устройство с примером IP-адреса «1.2.3.4» для перехода на устройство по адресу «5.6.7.8» далее по пути к месту назначения.

I’m looking for a reverse command that displays the name of the
network adapter for a given IP address.

Based on everything I tried, this should work seems you say you need to get this information ONLY from the IP address which you already specify in your example.

INTERACTIVE PROMPT FOR IP ADDRESS TO GET NETWORK CONNECTION NAME

(Use WMIC and some batch FOR loop token and delim parsing to get the network connection name for a specified IP address.)

(The result value will echo to a command window and a message box window. It’s all batch script but dynamically builds some VBS script functions to simplify the process for anyone that needs.)

@ECHO ON

:SetTempFiles
SET tmpIPaddr=%tmp%~tmpipaddress.vbs
SET tmpNetConName1=%tmp%~tmpNetConName1.txt
SET tmpNetConName2=%tmp%~tmpNetConName2.txt
SET tmpBatFile=%tmp%~tmpBatch.cmd
SET tmpVBNetCon=%tmp%~tmpVBNetCon.vbs

IF EXIST "%tmpIPaddr%" DEL /F /Q "%tmpIPaddr%"
IF EXIST "%tmpNetConName1%" DEL /Q /F "%tmpNetConName1%"
IF EXIST "%tmpNetConName2%" DEL /Q /F "%tmpNetConName2%"
IF EXIST "%tmpBatFile%" DEL /Q /F "%tmpBatFile%"
IF EXIST "%tmpVBNetCon%" DEL /Q /F "%tmpVBNetCon%"

:InputBox
SET msgboxTitle=IP ADDRESS
SET msgboxLine1=Enter the IP address to get its Windows connection name
>"%tmpIPaddr%" ECHO wsh.echo inputbox("%msgboxLine1%","%msgboxTitle%")
FOR /F "tokens=*" %%N IN ('cscript //nologo "%tmpIPaddr%"') DO CALL :setvariables %%N
GOTO EOF

:setvariables
SET IPAddress=%~1
FOR /F "USEBACKQ TOKENS=3 DELIMS=," %%A IN (`"WMIC NICCONFIG GET IPADDRESS,MACADDRESS /FORMAT:CSV | FIND /I "%IPAddress%""`) DO (SET MACAddress=%%~A)
FOR /F "USEBACKQ TOKENS=3 DELIMS=," %%B IN (`"WMIC NIC GET MACADDRESS,NETCONNECTIONID /FORMAT:CSV | FIND /I "%MACAddress%""`) DO ECHO(%%~B>>"%tmpNetConName1%"

::: Parse Empty Lines
FINDSTR "." "%tmpNetConName1%">"%tmpNetConName2%"

::: Build Dynamic Batch with ECHO'd Network Connection Value
FOR /F "tokens=*" %%C IN (%tmpNetConName2%) DO ECHO ECHO %%~C>>"%tmpBatFile%"
IF NOT EXIST "%tmpBatFile%" GOTO :NullExit
START "" "%tmpBatFile%"

::: Build Dynamic VBS with Message Box Network Connection Value
FOR /F "tokens=*" %%C IN (%tmpNetConName2%) DO (SET vbNetconName=%%~C)
ECHO msgbox "%vbNetconName%",0,"%vbNetconName%">"%tmpVBNetCon%"
START /B "" "%tmpVBNetCon%"
EXIT /B

:NullExit
ECHO msgbox "Cannot find MAC Address, check to confirm IP Address was correct.",0,"Invalid IP">"%tmpVBNetCon%"
START /B "" "%tmpVBNetCon%"
EXIT /B

ALL ONE-LINERS

NATIVE WINDOWS ONLY WITH NETSH ALL INTERFACES (ALL IPv4 ADDRESSES)

NETSH INT IP SHOW CONFIG | FINDSTR /R "Configuration for interface.* Address.*[0-9][0-9]*.[0-9][0-9]*.[0-9][0-9]*.[0-9][0-9]*"

enter image description here

NATIVE WINDOWS ONLY WITH IPCONFIG ALL INTERFACES (ALL IPv4 ADDRESSES)

IPCONFIG | FINDSTR /R "Ethernet* Address.*[0-9][0-9]*.[0-9][0-9]*.[0-9][0-9]*.[0-9][0-9]*"

enter image description here


USING PCRE2GREP (per @SalvoF)

SINGLE IP ADDRESS SPECIFIED

netsh interface ipv4 show address | pcre2grep -B2 "192.168.2.4" | FIND /V "DHCP"

FIND ALL IP ADDRESSES

netsh interface ip show config | pcre2grep -B2 ^(?:[0-9]{1,3}.){3}[0-9]{1,3}$ | FIND /V "DHCP" | FIND /V "Gate" | FIND /V "Metric" | FIND /V "Subnet"

FIND ALL IP ADDRESSES (Cleaned Up Regex (per @SalvoF))

netsh interface ip show config | pcre2grep "^[A-Z]|IP.*([0-9]{1,3}(.|)){4}"

Please note that the pcre2grep I tried is per @SalvoF [+1] as he suggested but using the…. FIND /V to remove the line above containing DHCP seems to get the desired output as you described. I used NETSH rather than IPCONFIG as well.

I’m looking for a reverse command that displays the name of the
network adapter for a given IP address.

Based on everything I tried, this should work seems you say you need to get this information ONLY from the IP address which you already specify in your example.

INTERACTIVE PROMPT FOR IP ADDRESS TO GET NETWORK CONNECTION NAME

(Use WMIC and some batch FOR loop token and delim parsing to get the network connection name for a specified IP address.)

(The result value will echo to a command window and a message box window. It’s all batch script but dynamically builds some VBS script functions to simplify the process for anyone that needs.)

@ECHO ON

:SetTempFiles
SET tmpIPaddr=%tmp%~tmpipaddress.vbs
SET tmpNetConName1=%tmp%~tmpNetConName1.txt
SET tmpNetConName2=%tmp%~tmpNetConName2.txt
SET tmpBatFile=%tmp%~tmpBatch.cmd
SET tmpVBNetCon=%tmp%~tmpVBNetCon.vbs

IF EXIST "%tmpIPaddr%" DEL /F /Q "%tmpIPaddr%"
IF EXIST "%tmpNetConName1%" DEL /Q /F "%tmpNetConName1%"
IF EXIST "%tmpNetConName2%" DEL /Q /F "%tmpNetConName2%"
IF EXIST "%tmpBatFile%" DEL /Q /F "%tmpBatFile%"
IF EXIST "%tmpVBNetCon%" DEL /Q /F "%tmpVBNetCon%"

:InputBox
SET msgboxTitle=IP ADDRESS
SET msgboxLine1=Enter the IP address to get its Windows connection name
>"%tmpIPaddr%" ECHO wsh.echo inputbox("%msgboxLine1%","%msgboxTitle%")
FOR /F "tokens=*" %%N IN ('cscript //nologo "%tmpIPaddr%"') DO CALL :setvariables %%N
GOTO EOF

:setvariables
SET IPAddress=%~1
FOR /F "USEBACKQ TOKENS=3 DELIMS=," %%A IN (`"WMIC NICCONFIG GET IPADDRESS,MACADDRESS /FORMAT:CSV | FIND /I "%IPAddress%""`) DO (SET MACAddress=%%~A)
FOR /F "USEBACKQ TOKENS=3 DELIMS=," %%B IN (`"WMIC NIC GET MACADDRESS,NETCONNECTIONID /FORMAT:CSV | FIND /I "%MACAddress%""`) DO ECHO(%%~B>>"%tmpNetConName1%"

::: Parse Empty Lines
FINDSTR "." "%tmpNetConName1%">"%tmpNetConName2%"

::: Build Dynamic Batch with ECHO'd Network Connection Value
FOR /F "tokens=*" %%C IN (%tmpNetConName2%) DO ECHO ECHO %%~C>>"%tmpBatFile%"
IF NOT EXIST "%tmpBatFile%" GOTO :NullExit
START "" "%tmpBatFile%"

::: Build Dynamic VBS with Message Box Network Connection Value
FOR /F "tokens=*" %%C IN (%tmpNetConName2%) DO (SET vbNetconName=%%~C)
ECHO msgbox "%vbNetconName%",0,"%vbNetconName%">"%tmpVBNetCon%"
START /B "" "%tmpVBNetCon%"
EXIT /B

:NullExit
ECHO msgbox "Cannot find MAC Address, check to confirm IP Address was correct.",0,"Invalid IP">"%tmpVBNetCon%"
START /B "" "%tmpVBNetCon%"
EXIT /B

ALL ONE-LINERS

NATIVE WINDOWS ONLY WITH NETSH ALL INTERFACES (ALL IPv4 ADDRESSES)

NETSH INT IP SHOW CONFIG | FINDSTR /R "Configuration for interface.* Address.*[0-9][0-9]*.[0-9][0-9]*.[0-9][0-9]*.[0-9][0-9]*"

enter image description here

NATIVE WINDOWS ONLY WITH IPCONFIG ALL INTERFACES (ALL IPv4 ADDRESSES)

IPCONFIG | FINDSTR /R "Ethernet* Address.*[0-9][0-9]*.[0-9][0-9]*.[0-9][0-9]*.[0-9][0-9]*"

enter image description here


USING PCRE2GREP (per @SalvoF)

SINGLE IP ADDRESS SPECIFIED

netsh interface ipv4 show address | pcre2grep -B2 "192.168.2.4" | FIND /V "DHCP"

FIND ALL IP ADDRESSES

netsh interface ip show config | pcre2grep -B2 ^(?:[0-9]{1,3}.){3}[0-9]{1,3}$ | FIND /V "DHCP" | FIND /V "Gate" | FIND /V "Metric" | FIND /V "Subnet"

FIND ALL IP ADDRESSES (Cleaned Up Regex (per @SalvoF))

netsh interface ip show config | pcre2grep "^[A-Z]|IP.*([0-9]{1,3}(.|)){4}"

Please note that the pcre2grep I tried is per @SalvoF [+1] as he suggested but using the…. FIND /V to remove the line above containing DHCP seems to get the desired output as you described. I used NETSH rather than IPCONFIG as well.

Вот еще несколько интересных статей:

  • Как узнать номер жесткого диска на компьютере windows 7
  • Как узнать оставшийся ресурс ssd в windows
  • Как узнать номер usb порта компьютера windows 10
  • Как узнать основные характеристики компьютера на windows 10
  • Как узнать номер mac на windows 7
  • В Windows вы можете управлять настройками сетевых адаптеров не только из графического интерфейса, но из командной строки PowerShell. В этой статье мы рассмотрим основные командлеты, которые позволяют узнать текущий адрес сетевого адаптера, назначить статический IP адрес, DNS сервера, или настроить сетевой интерфейс на получение конфигурации IP от DHCP сервера. Вы можете использовать эти командлеты для настройки сети как в Windows 10/11, так и в Windows Server (или версии Sever Core), в Hyper-V Server, для изменения настроек IP сетевых адаптеров на удаленных компьютерах, и в PowerShell скриптах.

    Содержание:

    • Управление сетевыми адаптерами в Windows из PowerShell
    • Вывести настройки IP сетевого подключения с PowerShell
    • PowerShell: задать статический IP адрес в Windows
    • Set-DnsClientServerAddress: настроить адреса DNS серверов
    • Управление таблицей маршрутизации с помощью PowerShell
    • PowerShell: получить IP адрес в Windows от DHCP сервера
    • Изменить параметры IP и DNS на удаленном компьютере Windows

    В предыдущих версиях в Windows для управления сетевыми настройками из cmd использовалась из CLI использовалась команда netsh. В PowerShell 3.0 и выше для управления сетевыми настройками Windows можно использовать встроенный PowerShell модуль NetTCPIP.

    Чтобы получить список командлетов в этом модуле, выполните:

    get-command -module NetTCPIP

    модуль powershell NetTCPIP для управления сетевыми настройками в windows

    В этот модуль также входит командлет Test-NetConnection, который можно использовать для проверки доступности TCP портов на удаленных компьютерах.

    Управление сетевыми адаптерами в Windows из PowerShell

    Выведите список доступных сетевых интерфейсов в Windows:

    Get-NetAdapter

    Командлет возвращает имя интерфейса, состояние (Up/Down), MAC адрес, скорость на порту.

    В этом примере у меня на компьютере несколько сетевых адаптеров (кроме физического подключения Ethernet и WiFi есть несколько сетевых интерфейсов от Hyper-V и VMWare Player).

    Чтобы вывести только активные физические сетевые интерфейсы:

    Get-NetAdapter -Physical | ? {$_.Status -eq "Up"}

    Get-NetAdapter

    Можно вывести только определенные параметры сетевых адаптеров, например: имя, скорость, состояние и MAC адрес:

    Get-NetAdapter |Select-Object name,LinkSpeed,InterfaceOperationalStatus,MacAddress

    powershell получить mac адрес сетевых адаптеров и скорость подключения

    Вы можете обращаться к сетевым интерфейсам по их именам или индексам (столбец ifIndex). В нашем примере, чтобы выбрать физический LAN адаптер Intel 82574L нужно набрать команду:

    Get-NetAdapter -Name Ethernet0

    или

    Get-NetAdapter -InterfaceIndex 8

    Get-NetAdapter выбрать сетевое подключене по имени или индексу

    Можно изменить имя адаптера:

    Rename-NetAdapter -Name Ethernet0 -NewName LAN

    Чтобы выключить сетевой интерфейс, используйте команды:

    Get-NetAdapter -InterfaceIndex 13| Disable-NetAdapter

    При включении интерфейса нельзя указать его индекс, т.к. он не присвоен. Включите адаптер по его имени:

    Enable-NetAdapter -InterfaceDescription “Hyper-V Virtual Ethernet Adapter"

    Disable-NetAdapter - включить/отключить сетевой интерфейс

    Если для сетевого адаптера настроен номер VLAN, можно вывести его так:

    Get-NetAdapter | ft Name, Status, Linkspeed, VlanID

    Получить информацию об драйвере сетевого адаптера:

    Get-NetAdapter | ft Name, DriverName, DriverVersion, DriverInformation, DriverFileName

    Get-NetAdapter получить версию драйвера сетевого адаптера

    Информация о физических параметров подключения сетевых адаптерах (PCI слот, шина и т.д.).

    Get-NetAdapterHardwareInfo

    Вывести настройки IP сетевого подключения с PowerShell

    Получить текущие настройки сетевого интерфейса (IP адрес, DNS, шлюз):

    Get-NetIPConfiguration -InterfaceAlias Ethernet0

    Get-NetIPConfiguration настройка сетевого интерфейса Ethernet0

    Чтобы вывести более подробную информацию о конфигурации сетевого интерфейса, используйте команду:

    Get-NetIPConfiguration -InterfaceAlias Ethernet0 -Detailed

    В этом случае выводится назначенный профиль сети интерфейса (NetProfile.NetworkCategory), настройки MTU (NetIPv4Interface.NlMTU), включено ли получение адреса от DHCP (NetIPv4Interface.DHCP) и ряд другой полезной информации.

    Get-NetIPConfiguration настройки сети

    Вывести все IPv4 адреса интерфейсов Windows:

    Get-NetIPAddress -AddressFamily ipv4|ft

    Получить значение только IP адрес интерфейса:

    (Get-NetAdapter -Name ethernet0 | Get-NetIPAddress).IPv4Address

    Получить текущие настройки стека TCP на компьютере можно с помощью команды:

    Get-NetTCPSetting

    Многие администраторы замечают, в Windows Server 2019 с ролью Hyper-V скорость копирования файлов на ВМ очень низкая. В этом случае решить проблемы помогает возврат параметров стека TCP, к настройкам которые использовались в Windows Server 2016:

    Set-NetTCPSetting -SettingName DatacenterCustom,Datacenter -CongestionProvider DCTCP
    Set-NetTCPSetting -SettingName DatacenterCustom,Datacenter -CwndRestart True
    Set-NetTCPSetting -SettingName DatacenterCustom,Datacenter -ForceWS Disabled

    Вывести список сетевых протоколов, которые можно включить/отключить для сетевого адаптера:

    Get-NetAdapterBinding -Name ethernet -IncludeHidden -AllBindings

    Get-NetAdapterBinding сетевые протоколы, включенные для сетевого адаптера

    Name                           DisplayName                                        ComponentID          Enabled
    ----                           -----------                                        -----------          -------
    Ethernet                       File and Printer Sharing for Microsoft Networks    ms_server            True
    Ethernet                       NetBIOS Interface                                  ms_netbios           True
    Ethernet                       Microsoft LLDP Protocol Driver                     ms_lldp              True
    Ethernet                       Microsoft NDIS Capture                             ms_ndiscap           True
    Ethernet                       Internet Protocol Version 4 (TCP/IPv4)             ms_tcpip             True
    Ethernet                       Microsoft RDMA - NDK                               ms_rdma_ndk          True
    Ethernet                       Microsoft Network Adapter Multiplexor Protocol     ms_implat            False
    Ethernet                       Link-Layer Topology Discovery Mapper I/O Driver    ms_lltdio            True
    Ethernet                       NDIS Usermode I/O Protocol                         ms_ndisuio           True
    Ethernet                       Point to Point Protocol Over Ethernet              ms_pppoe             True
    Ethernet                       Link-Layer Topology Discovery Responder            ms_rspndr            True
    Ethernet                       Internet Protocol Version 6 (TCP/IPv6)             ms_tcpip6            True
    Ethernet                       Hyper-V Extensible Virtual Switch                  vms_pp               False
    Ethernet                       WFP Native MAC Layer LightWeight Filter            ms_wfplwf_lower      True
    Ethernet                       Client for Microsoft Networks                      ms_msclient          True
    Ethernet                       Npcap Packet Driver (NPCAP)                        INSECURE_NPCAP       True
    Ethernet                       WINS Client(TCP/IP) Protocol                       ms_netbt             True
    Ethernet                       Bridge Driver                                      ms_l2bridge          True
    Ethernet                       WFP 802.3 MAC Layer LightWeight Filter             ms_wfplwf_upper      True
    Ethernet                       QoS Packet Scheduler                               ms_pacer             True
    

    PowerShell: задать статический IP адрес в Windows

    С помощью PowerShell вы можете задать статический IP адрес для сетевого интерфейса. Чтобы изменить IP адрес, маску подсети и шлюз для сетевого интерфейса, выполните:

    Get-NetAdapter -Name Ethernet0| New-NetIPAddress –IPAddress 192.168.1.80 -DefaultGateway 192.168.1.1 -PrefixLength 24

    Можно задать IP адрес, представив его в виде массива (более наглядно):

    $ipParams = @{
    InterfaceIndex = 8
    IPAddress = "192.168.1.22"
    PrefixLength = 24
    AddressFamily = "IPv4"
    }
    New-NetIPAddress @ipParams

    Если статический IP адрес уже настроен и нужно изменить его, используется командлет Set-NetIPAddress:

    Set-NetIPAddress -InterfaceIndex 8 -IPAddress 192.168.1.90

    Чтобы отключить получение IP адреса от DHCP для сетевого интерфейса, выполните:

    Set-NetIPInterface -InterfaceAlias Ethernet0 -Dhcp Disabled

    Удалить статический IP адрес:

    Remove-NetIPAddress -IPAddress "xxx.xxx.xxx.xxx"

    Отключить протокол IPv6 для сетевого интерфейса:
    Get-NetAdapterBinding -InterfaceAlias Ethernet0 | Set-NetAdapterBinding -Enabled $false -ComponentID ms_tcpip6

    Отключить протокол NetBIOS для интерфейса:

    Set-NetAdapterBinding -Name Ethernet0 -ComponentID ms_netbios -AllBindings -Enabled $True

    Set-DnsClientServerAddress: настроить адреса DNS серверов

    Чтобы задать адреса первичного и вторичного DNS серверов в Windows, используется командлет Set-DNSClientServerAddress. Например:

    Set-DNSClientServerAddress –InterfaceIndex 8 –ServerAddresses 192.168.1.11,10.1.1.11

    Первый IP адрес адрес выставляется в качестве Preffered DNS, а второй в Alternate DNS.

    Можно также задать DNS сервера через массив:

    $dnsParams = @{
    InterfaceIndex = 8
    ServerAddresses = ("8.8.8.8","8.8.4.4")
    }
    Set-DnsClientServerAddress @dnsParams

    После изменения настроек DNS, можно очистить DNS кэш (эквивалент
    ipconfig /flushdns
    ):

    Clear-DnsClientCache

    Вывести содержимое DNS кэша в Windows:
    Get-DnsClientCache

    Управление таблицей маршрутизации с помощью PowerShell

    Для просмотра таблицы маршрутизации используется командлет Get-NetRoute.
    Вывести маршрут по умолчанию для физического сетевого интерфейса в Windows:

    Get-NetAdapter -Physical | ? {$_.Status -eq "Up"}| Get-netroute| where DestinationPrefix -eq "0.0.0.0/0"

    powershell вывести маршрут по умолчанию в Windows

    Чтобы добавить новый маршрут, используется New-NetRoute:

    New-NetRoute -DestinationPrefix "0.0.0.0/0" -NextHop "192.168.0.1" -InterfaceIndex 8

    Эта команда добавит постоянный маршрут в таблицу маршрутизации (аналог route -p add). Если вы хотите добавить временный маршрут, добавьте опцию
    -PolicyStore "ActiveStore"
    . Такой маршрут будет удален после перезагрузки Windows.

    Удалить маршрут из таблицы маршрутизации:

    Remove-NetRoute -NextHop 192.168.0.1 -Confirm:$False

    PowerShell: получить IP адрес в Windows от DHCP сервера

    Чтобы сетевой интерфейс компьютера получал динамический IP адрес от DHCP сервера, выполните команду:

    Set-NetIPInterface -InterfaceAlias Ethernet0 -Dhcp Enabled

    Очистите настройки DNS серверов:

    Set-DnsClientServerAddress –InterfaceIndex 8 -ResetServerAddresses

    И перезапустите интерфейс для получения IP адреса:

    Restart-NetAdapter -InterfaceAlias Ethernet0

    Если ранее у вас был настроен шлюз, удалите его:

    Set-NetIPInterface -InterfaceAlias Ethernet0| Remove-NetRoute -Confirm:$false

    Если нужно сбросить все настройки IPv4 для сетевых интерфейсов компьютера и переключить их на получение адреса от DHCP, используйте такой скрипт:

    $IPType = "IPv4"
    $adapter = Get-NetAdapter | ? {$_.Status -eq "up"}
    $interface = $adapter | Get-NetIPInterface -AddressFamily $IPType
    If ($interface.Dhcp -eq "Disabled") {
    If (($interface | Get-NetIPConfiguration).Ipv4DefaultGateway) {
    $interface | Remove-NetRoute -Confirm:$false
    }
    $interface | Set-NetIPInterface -DHCP Enabled
    $interface | Set-DnsClientServerAddress -ResetServerAddresses
    }

    Изменить параметры IP и DNS на удаленном компьютере Windows

    Вы можете использовать PowerShell чтобы удаленно изменить настройки IP адреса или DNS серверов на нескольких удаленных компьютерах. Допустим, ваша задача – изменить настройки DNS для всех серверов в указанном Organization Unit (OU) в Active Directory. Для получения списка компьютеров в скрипте ниже примере используется командлет Get-ADComputer, а удаленное подключение к компьютерам выполняется через WinRM (командлет Invoke-Command):

    $Servers = Get-ADComputer -SearchBase ‘OU=Moscow,DC=winitpro,DC=loc’ -Filter '(OperatingSystem -like "Windows Server*")' | Sort-Object Name
    ForEach ($Server in $Servers) {
    Write-Host "Server $($Server.Name)"
    Invoke-Command -ComputerName $Server.Name -ScriptBlock {
    $NewDnsServerSearchOrder = "192.168.1.11","8.8.4.4"
    $Adapters = Get-WmiObject Win32_NetworkAdapterConfiguration | Where-Object {$_.DHCPEnabled -ne 'True' -and $_.DNSServerSearchOrder -ne $null}
    Write-Host "Old DNS settings: "
    $Adapters | ForEach-Object {$_.DNSServerSearchOrder}
    $Adapters | ForEach-Object {$_.SetDNSServerSearchOrder($NewDnsServerSearchOrder)} | Out-Null
    $Adapters = Get-WmiObject Win32_NetworkAdapterConfiguration | Where-Object {$_.DHCPEnabled -ne 'True' -and $_.DNSServerSearchOrder -ne $null}
    Write-Host "New DNS settings: "
    $Adapters | ForEach-Object {$_.DNSServerSearchOrder}
    }
    }

    Чтобы управлять сетевыми адаптерами из командной строки Windows, необходимо знать их имена. Чтобы узнать название адаптера откройте командную строку windows, а затем выполните следующую команду:

    netsh interface show interface

    Данная команда выведет список всех доступных сетевых адаптеров в вашей системе.

    Как вывести название сетевого адаптера Windows в командной строке

    Метки: netsh, Windows, Командная строка.

    Понравилась статья? Поделить с друзьями:
    0 0 голоса
    Рейтинг статьи
    Подписаться
    Уведомить о
    guest

    0 комментариев
    Старые
    Новые Популярные
    Межтекстовые Отзывы
    Посмотреть все комментарии
  • Настройка языка по умолчанию windows 10
  • Grouppolicy microsoft windows grouppolicy 1030
  • Вывод компьютера из домена windows 7
  • Чем открыть файл jpeg в windows 10
  • Переактивация windows 10 oem