Code: Select all
Option Explicit
wscript.echo localIP
wscript.echo publicIP
function localIP
Dim objWMIService, colItems, objItem, strIPAddress, ComputerName, wshShell,ipCount
Set objWMIService = GetObject("winmgmts://./root/CIMV2")
Set colItems = objWMIService.ExecQuery("SELECT * FROM Win32_NetworkAdapterConfiguration WHERE IPEnabled = TRUE AND MACAddress > ''")
strIPAddress = ""
For Each objItem In colItems
If IsArray(objItem.IPAddress) Then
for ipCount = 0 to ubound(objItem.IPAddress)
strIPAddress = strIPAddress & objItem.IPAddress(ipCount)
if instr(objItem.IPAddress(ipCount),":") > 0 then strIPAddress = strIPAddress & " (IP v6)"
if ipCount <> ubound(objItem.IPAddress) then strIPAddress=strIPAddress & vbcrlf & " "
next
localIP = strIPAddress
Exit For
End If
Next
localIP = "Local IP: " & strIPAddress
Set objItem = Nothing
Set colItems = Nothing
Set objWMIService = Nothing
Set wshShell = Nothing
end function
function publicIP
Dim http
Set http = CreateObject( "MSXML2.ServerXmlHttp" )
http.Open "GET", "https://icanhazip.com", False
http.Send
publicIP = "Public IP: " & http.responseText
Set http = Nothing
end function