ZetCode

PowerShell Remove-NetIPAddress

最后修改:2025 年 2 月 15 日

在本文中,我们将介绍 PowerShell 中的 Remove-NetIPAddress cmdlet。此 cmdlet 用于从网络接口移除 IP 地址。

IP 地址基础知识

IP 地址是分配给网络中设备的唯一标识符。它使得设备之间能够进行通信。PowerShell 提供了用于管理网络配置的 cmdlet。Remove-NetIPAddress cmdlet 用于移除不需要或不正确的 IP 地址。

Basic Remove-NetIPAddress 用法

使用 Remove-NetIPAddress 的最简单方法是指定要移除的 IP 地址。这需要管理员权限。该 cmdlet 将指定的 IP 从网络接口中移除。在移除之前务必验证 IP 地址,以避免网络问题。

removeip1.ps1
Remove-NetIPAddress -IPAddress "192.168.1.100"

此命令从任何接口移除 IP 地址 192.168.1.100。如果 IP 地址存在于多个接口上,则所有实例都会被移除。请谨慎使用。

从特定接口移除 IP 地址

您可以针对特定网络接口移除 IP 地址。使用 -InterfaceIndex 或 -InterfaceAlias 参数。这可以防止从错误的接口意外移除。首先,使用 Get-NetIPAddress 识别接口详细信息。

removeip2.ps1
Remove-NetIPAddress -IPAddress "192.168.1.100" -InterfaceIndex 12

此命令仅从索引为 12 的接口移除 IP 地址。可以使用 Get-NetAdapter 找到接口索引。这提供了精确的控制。

PS C:\> .\removeip2.ps1

Confirm
Are you sure you want to perform this action?
Performing the operation "Remove" on target "192.168.1.100".
[Y] Yes  [A] Yes to All  [N] No  [L] No to All  [S] Suspend  [?] Help (default is "Y"): Y

移除多个 IP 地址

可以使用管道输入在一个命令中移除多个 IP 地址。首先使用 Get-NetIPAddress 检索 IP 地址。然后将它们通过管道传递给 Remove-NetIPAddress。这对于批量操作非常高效。

removeip3.ps1
Get-NetIPAddress -IPAddress "192.168.1.*" | Remove-NetIPAddress

此命令移除 192.168.1.x 范围内的所有 IP 地址。通配符匹配多个地址。在执行之前务必先检查匹配的 IP 地址。

强制移除而不确认

默认情况下,PowerShell 会在移除 IP 地址之前提示您进行确认。-Confirm:$false 参数可抑制此提示。适用于自动化脚本。请谨慎使用,以避免意外移除。

removeip4.ps1
Remove-NetIPAddress -IPAddress "192.168.1.100" -Confirm:$false

此命令在不询问确认的情况下移除 IP 地址。适用于不需要用户交互的脚本。请确保进行适当的错误处理。

移除 IPv6 地址

此 cmdlet 同时适用于 IPv4 和 IPv6 地址。请指定完整的 IPv6 地址进行移除。如果使用端口格式,IPv6 地址必须用方括号括起来。请仔细验证地址格式。

removeip5.ps1
Remove-NetIPAddress -IPAddress "fe80::a00:27ff:fe1a:2b3c"

此命令移除指定的 IPv6 地址。与 IPv4 相同的参数适用。请先使用 Get-NetIPAddress 验证 IPv6 配置。

来源

PowerShell 文档

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

作者

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

列出 所有 PowerShell 教程