# windows 一键查看本机内网/外网IP

工作室有同事需要，一个简单的小脚本。测试机是win8系统，理论上以下代码生成的小工具应该可以在Windows 7、Windows 10和Windows 11上运行。

```plaintext
Set oShell = CreateObject("WScript.Shell")
Set objHTTP = CreateObject("WinHttp.WinHttpRequest.5.1")
strComputer = "."

' Get public IP address
objHTTP.Open "GET", "https://api.ip.sb/ip", False
objHTTP.setRequestHeader "User-Agent", "Mozilla/5.0"
objHTTP.Send

If objHTTP.status = 200 Then
    publicIPAddress = objHTTP.ResponseText
    Wscript.echo "您的外网IP是: " & publicIPAddress
Else
    Wscript.echo "外网IP获取失败. 请检查网络设置"
End If

' Get local IP address
Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\cimv2")
Set colItems = objWMIService.ExecQuery("SELECT * FROM Win32_NetworkAdapterConfiguration WHERE IPEnabled = True")

For Each objItem in colItems
    If Not IsNull(objItem.IPAddress) Then
        For Each ip In objItem.IPAddress
            If InStr(ip, ":") = 0 And InStr(ip, "192.168.") <> 0 Then
                localIPAddress = ip
                WScript.Echo "您的内网IP是: " & localIPAddress
                Exit For
            End If
        Next
    End If
Next
```

请将以上代码复制并粘贴到一个新的文本文件中，然后使用.vbs扩展名另存为新文件。然后双击文件运行，它会在消息框中显示外网IP和内网地址。
