VBScript - Öffentliche IP-Adresse

Ja aber da wird die MAC von dem jeweiligen Client ausgelesen...

ich will aber die MAC von einem beliebigen Gerät im LAN-Netzwerk suchen... ob diese MAC irgendwo im Netzwerk vorhanden ist oder nicht...

Domsi
 
Ok ich hab jetzt ne Lösung gefunden...

es braucht zwar ein bisschen, weil er zuerst nach dem Rechner sucht und ihn nicht finden kann... aber ich denke 5-10 sekunden kann jeder mensch warten :)

So ist jetzt meine Lösung

Code:
Dim oAdapters
Dim oAdapter

 ' Die MAC von irgendeinem Rechner im Netzwerk wird abgefragt, um sicher zu stellen, dass man im internen Netz ist
  Set oAdapters = GetObject("winmgmts:\\IRGEND-EIN-COMPUTER-NAME-HIER REINSCHREIBEN").execquery( _
    "SELECT * FROM Win32_NetworkAdapterConfiguration WHERE IPEnabled = True")
 
 ' Objekte durchlaufen  
 For Each oAdapter In oAdapters

 		 With oAdapter
        		
        	If .MACAddress = "" Then
        		'Hier kommt irgendwas rein, was passieren soll wenn der oben eingetragene Computername nicht gefunden wird
        	Else
        		
    			If .MACAddress = "DIE MAC DES ZIEL RECHNERS" Then
					'Wenn die MAC übereinstimmt dann hier was ausführen
    			Else
    		   		'Wenn die MAC nicht stimmt, dann mach irgendwas anderes...
    			End If
       End If
 	  End With
      
  Next
 
Hm also nach mehreren Test hab ich festgestellt, dass das oben gepostete Script nicht überrall funktioniert....

deshalb hab ich mich noch ein bisschen umgeschaut und hab ne Lösung gefunden...

da dieses Script ja so und so übers Internet aufgerufen wird hab ich einfach ne Seite aufgerufen die meine IP anzeigt und dann such ich genau nach meiner IP... die ja immer gleich bleibt (bei mir halt... das script funktioniert nur wenn man ne fixe IP hat :) )

Code:
Dim shell ' Zum Öffnen des Browsers
Set shell = CreateObject("WScript.Shell") 'Zum Öffnen des Browsers
//Ruf eine Internetseite auf die die IP-ADresse anzeigt
Dim objHTTP
Set objHTTP = CreateObject("WinHttp.WinHttpRequest.5.1")
objHTTP.SetTimeouts 0, 3000, 2000, 5000
' objHTTP.SetAutoLogonPolicy 0  - nur im Intranet einsetzen. Sorgt für automatische Anmeldung
objHTTP.Open "GET","http://checkip.dyndns.com/index.htm", False
objHTTP.Send
	If InStr(objHTTP.ResponseText,"IPADRESSE")>0 Then 
		MsgBox "IP stimmt überein"
	Else
	        MsgBox "du bist anscheinend nicht zuhause"
	End If
 
Zurück