無論是設定連接埠轉發、架設伺服器、遠端桌面連線、排查網路問題,查詢本機 IP 位址都是基本功。本文提供四種不同層級的查詢方法,涵蓋圖形介面、命令列、PowerShell 物件化查詢與路由器端反查,滿足新手到系統管理員的各種需求。
ncpa.cpl → Enter (直接開啟「網路連線」)。192.168.1.50) — 區域網路私有 IP。255.255.255.0)。192.168.1.1)。> ipconfig
# 僅顯示啟用介面的 IPv4/IPv6/子網路遮罩/閘道
> ipconfig /all
# 完整資訊:MAC、DHCP 狀態、租約時間、DNS 伺服器、實體介面描述
> ipconfig | findstr /R "IPv4 子網路 預設閘道"
# 快速過濾關鍵欄位 (適合批次檔擷取)
# 取得所有已啟用介面的 IPv4 位址 (物件陣列)
Get-NetIPAddress -AddressFamily IPv4 -InterfaceAlias * | Where-Object { $_.PrefixOrigin -ne 'WellKnown' } | Select-Object InterfaceAlias, IPAddress, PrefixLength, InterfaceIndex
# 只取得「主要」上網介面的 IPv4 (依據預設路由判斷)
$iface = Get-NetRoute -DestinationPrefix '0.0.0.0/0' | Sort-Object RouteMetric | Select-Object -First 1 -ExpandProperty ifIndex
Get-NetIPAddress -InterfaceIndex $iface -AddressFamily IPv4 | Select-Object IPAddress, PrefixLength
# 含 MAC、DNS、DHCP 狀態的完整物件
Get-NetAdapter | Where-Object Status -eq 'Up' | ForEach-Object {
$ip = Get-NetIPAddress -InterfaceIndex $_.ifIndex -AddressFamily IPv4 -PrefixOrigin Dhcp,Manual
[pscustomobject]@{
Name = $_.Name
MacAddress = $_.MacAddress
IPv4 = ($ip.IPAddress -join '; ')
PrefixLength = ($ip.PrefixLength -join '; ')
DhcpEnabled = (Get-NetIPInterface -InterfaceIndex $_.ifIndex -AddressFamily IPv4).Dhcp -eq 'Enabled'
DnsServers = (Get-DnsClientServerAddress -InterfaceIndex $_.ifIndex -AddressFamily IPv4).ServerAddresses -join '; '
}
} | Format-Table -AutoSize
what is my ip 或訪問 ipinfo.io, ifconfig.me, icanhazip.com。(Invoke-RestMethod -Uri 'https://api.ipify.org').ToString()。curl ifconfig.me (Win 10 1803+ 內建 curl) 或 nslookup myip.opendns.com resolver1.opendns.com。| 方法 | 速度 | 資訊豐富度 | 自動化友善 | 適用對象 |
|---|---|---|---|---|
| GUI (ncpa.cpl) | ⭐⭐ | ⭐⭐⭐⭐ | ⭐ | 一般使用者、單次查詢 |
| CMD (ipconfig) | ⭐⭐⭐ | ⭐⭐⭐ | ⭐⭐⭐ | 系統管理員、批次腳本 |
| PowerShell | ⭐⭐ | ⭐⭐⭐⭐⭐ | ⭐⭐⭐⭐⭐ | 進階管理、跨平台腳本、報表產出 |
| 路由器介面 | ⭐ | ⭐⭐⭐⭐⭐ (全網視角) | ⭐⭐ (API/SSH) | 網管、資安稽核、裝置資產盤點 |
熟練掌握至少兩種方法 (建議 GUI + PowerShell),即可應對從「幫媽媽查 IP」到「編寫自動化資產掃描腳本」的所有場景。