ZetCode

PowerShell Get-NetIPAddress

最后修改:2025 年 2 月 15 日

在本文中,我们将介绍PowerShell中的Get-NetIPAddress cmdlet。此cmdlet从网络接口检索IP地址配置信息。

IP地址基础知识

IP地址是分配给网络中每个设备的数字标签。它具有两个主要功能:主机标识和位置寻址。Get-NetIPAddress cmdlet检索IPv4和IPv6地址。它提供了有关每个网络接口配置的详细信息。

Get-NetIPAddress基础用法

使用Get-NetIPAddress的最简单方法是不带任何参数。这将列出系统中配置的所有IP地址。输出包括IP地址、接口索引和地址状态。每个条目代表一个网络接口配置。

ipaddress1.ps1
Get-NetIPAddress

此命令检索系统上的所有IP地址。输出显示IPv4和IPv6地址及其关联的接口索引和前缀。

按IP地址系列过滤

您可以使用-AddressFamily参数按IP地址系列过滤结果。当您只需要IPv4或IPv6地址时,此功能很有用。该参数接受值“IPv4”或“IPv6”。这有助于在处理特定协议时简化输出。

ipaddress2.ps1
Get-NetIPAddress -AddressFamily IPv4

此命令仅返回系统中配置的IPv4地址。输出不包括IPv6地址,从而更容易专注于IPv4配置。

PS C:\> .\ipaddress2.ps1

IPAddress         : 192.168.1.100
InterfaceIndex    : 12
InterfaceAlias    : Ethernet
AddressFamily     : IPv4
Type              : Unicast
PrefixLength      : 24
PrefixOrigin      : Dhcp
SuffixOrigin      : Dhcp
AddressState      : Preferred
ValidLifetime     : 23:59:59
PreferredLifetime : 23:59:59

按接口索引获取IP地址

网络接口可以通过其唯一的接口索引来标识。您可以使用-InterfaceIndex为特定接口检索IP地址。这在对特定网络适配器进行故障排除时非常有用。可以使用Get-NetAdapter找到索引。

ipaddress3.ps1
Get-NetIPAddress -InterfaceIndex 12

此命令返回与接口索引12关联的IP地址。输出包括该特定网络接口的所有地址配置。

按IP地址前缀过滤

您可以使用-PrefixLength参数按其前缀过滤IP地址。这有助于识别特定子网内的地址。前缀长度表示CIDR表示法中的子网掩码。这对于网络分段分析很有用。

ipaddress4.ps1
Get-NetIPAddress -AddressFamily IPv4 -PrefixLength 24

此命令返回带有/24子网掩码(255.255.255.0)的IPv4地址。输出有助于识别同一本地网络段上的设备。

按接口别名获取IP地址

网络接口通常具有描述性的别名。您可以使用-InterfaceAlias按接口别名过滤IP地址。这使得命令比使用接口索引更具可读性。支持通配符进行部分匹配。

ipaddress5.ps1
Get-NetIPAddress -InterfaceAlias "Ethernet*"

此命令返回别名以“Ethernet”开头的所有接口的IP地址。输出包括匹配接口的IPv4和IPv6地址。

来源

PowerShell 文档

在本文中,我们介绍了PowerShell中的Get-NetIPAddress cmdlet。

作者

我叫Jan Bodnar,我是一名热情的程序员,拥有丰富的编程经验。我自2007年以来一直在撰写编程文章。迄今为止,我已撰写了1400多篇文章和8本电子书。我在教学编程方面拥有十多年的经验。

列出 所有 PowerShell 教程