BGInfo – Script for Local IP, Public IP and ISP Name

I recently created 3 scripts for BGInfo … If you need it, use it ;)

Local IP.vbs

I found this script at ardamis.com and adapted to my needs. I removed VMware local IP, because I don’t need it

strMsg = ""
strComputer = "."
 
Set objWMIService = GetObject("winmgmts:" & "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")
Set IPConfigSet = objWMIService.ExecQuery("Select IPAddress,description from Win32_NetworkAdapterConfiguration WHERE IPEnabled = 'True'")
 
For Each IPConfig in IPConfigSet
	If Not IsNull(IPConfig.IPAddress) Then
	For i = LBound(IPConfig.IPAddress) to UBound(IPConfig.IPAddress)
		If Not Instr(IPConfig.IPAddress(i), ":") > 0 Then
			If InStr(1, IPConfig.description(i), "VMware") = 0 Then
				strMsg = strMsg & IPConfig.IPAddress(i)
				If i > 0 Then
					strMsg = strMsg & vbcrlf & VBTab
				End If
			End If
		End If
	Next
	End If
Next
Echo strMsg

Public IP.vbs

Based on script from howtogeek.com
I’m retrieving my public IP from ipify.org

Dim o
Set o = CreateObject("MSXML2.XMLHTTP")
o.open "GET", "https://api.ipify.org", False
o.send
echo o.responseText

ISP Name.vbs

I’m using whoismyisp.org for this task

Set o = CreateObject("MSXML2.XMLHTTP")
o.open "GET", "https://www.whoismyisp.org", False
o.send
strid = o.responseText
Set myRegExp = New RegExp
With myRegExp
	.Pattern = "< p class=""isp"">(.*)< / p >" 'remove spaces before use :)
	.IgnoreCase = False
	.Global = False
End With
Set myMatches = myRegExp.Execute(strid)
 
Echo myMatches.Item(0).SubMatches(0)

IMPORTANT:
Because my regex contain HTML tags I added space between < and p. If you want to use my script remove this spaces!

(5) Comments

  • Steve
    16 Jul 2018

    Thank you for these. I don’t know VBS and couldn’t have written them.

    I was curious if you found any issues with the ISP one. I keep getting an error for line 12, position 0, – invalid procedure call or argument.

    Either way, thank you.

    • Uroš
      18 Jul 2018

      Hi,

      I updated my script. The problem was in the structure on the web page. they changed < h 1 > tag to < p > tag and my regex didn’t find any match…

      now it should work :)

  • Tony
    02 Sep 2018

    Many thanks for these, just what I had been searching for. A+++

  • Markus
    28 Sep 2020

    Hi Uroš Vovk,
    great script for BGInfo to show ISP. Thank you! I search for a script, that make BGInfo show the Country according to my WAN IP. E.G. if I have the WAN IP 185.183.107.242, BGInfo should tell me the according Country, in this example Austria. Do you know how to make this possible? Or do you know somebody who has such a script? Thanks a lot.

  • The DOC
    20 Feb 2021

    Unfortunately, the display of the IP address is poor with several adapters, as they are displayed one after the other without any space between them. So you have a long chain of numbers without the necessary distinction. Should definitely be improved.

Leave a Comment