如何使用 PowerShell 驗證 IP 地址?


若要使用 PowerShell 驗證 IP 地址,我們可以使用如下所示的幾種方法。

  • 使用 RegEx 方法。

  • 使用型別轉換方法。

使用型別轉換方法。

在此方法中,我們將使用 System.Net 方法類 IPAddress 驗證 IP 地址。

[ipaddress]$IP = "192.168.0.1"

上面那個是有效的。讓我們檢查一下 $IP 所儲存的內容。

PS C:\> $IP

Address : 16820416
AddressFamily : InterNetwork
ScopeId :
IsIPv6Multicast : False
IsIPv6LinkLocal : False
IsIPv6SiteLocal : False
IsIPv6Teredo : False
IsIPv4MappedToIPv6 : False
IPAddressToString : 192.168.0.1

上面那個是 Ipv4,此方法也適用於 Ipv6。請參閱以下示例。

PS C:\> [ipaddress]"2001:0db8:85a3:0000:0000:8a2e:0370:7334"

Address :
AddressFamily : InterNetworkV6
ScopeId : 0
IsIPv6Multicast : False
IsIPv6LinkLocal : False
IsIPv6SiteLocal : False
IsIPv6Teredo : False
IsIPv4MappedToIPv6 : False
IPAddressToString : 2001:db8:85a3::8a2e:370:7334

您會注意到兩個地址中 AddressFamily 屬性的差異。

如果我們輸入錯誤範圍的 IP 地址。

PS C:\> [ipaddress]"192.168.0.256"
Cannot convert value "192.168.0.256" to type "System.Net.IPAddress". Error: "An invalid IP address was specified."
At line:1 char:1
+ [ipaddress]"192.168.0.256"
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : InvalidArgument: (:) [], RuntimeException
+ FullyQualifiedErrorId : InvalidCastParseTargetInvocation

它拒絕 IP 輸入。您還可以在函式中使用此方法驗證 IP。

更新於: 2021 年 2 月 19 日

2K+ 瀏覽

開啟您的 職業生涯

完成課程以獲得認證

開始學習
廣告
© . All rights reserved.