Hi,
anbei ein kleines VBScript, das die aktuelle MAC eines (lokalen oder entfernten) Rechners ermittelt und diese gegen ein Array von MAC-Adressen abgleicht. Ich weiß nicht , ob das jemand gebrauchen kann, aber es sind auf alle Fälle zwei, drei interessante Funktionen drin (WMI-Connect, Stringarrays, Upper-> Lowercase)
edit:
Nochmal in klarerem Deutsch, nachdem ich von meiner besseren Hälfte nur einen äußerst verständnislosen Blick geerntet habe:
Das Script ermittelt die aktive Netzwerkkarte in einem Rechner. Von dieser liest es anschließend die 12stellige Hardwareadresse aus (diese Adressen sind immer einmalig, weltweit) und vergleicht die so ermittelte Adresse mit einer Liste erlaubter Hardware-Adressen. Stimmt die Adresse mit einer gültigen aus der Liste überein, so wird dies ausgegeben (man könnte hier noch weitere Funktionen einfügen). Hintergrund der ganzen Sache war, daß auf einem externen Webserver der Zugriff nur für bestimmte Rechner erlaubt werden sollte und alle anderen waren zu blocken. Bevor sich jemand jetzt wundert - das Script wird noch verschlüsselt, so daß die Adressen nicht mehr im Klartext zu lesen sind. ;)
Grüße,
Mostly
'==============================
' VBScript Source File
' NAME: CheckMAC.vbs
' AUTHOR: A. Richter
' DATE : 23.10.2007
' COMMENT: ermittelt die MAC der aktiven NIC und prüft sie auf Gültigkeit
'==============================
Dim strComputer
Dim objWMIService
Dim colItems
Dim ActiveMAC
dim a(5)
a(0)="0000f7f5d5d3"
a(1)="00fa15623ddd"
a(2)="00fb6257adbf"
a(3)="00fa62457cad"
a(4)="00fb7618fbaa"
a(5)="0015F2157633"
strComputer = "."
Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\cimv2")
Set colItems = objWMIService.ExecQuery("Select * from Win32_NetworkAdapterConfiguration Where IPEnabled=TRUE",,48)
For Each objItem in colItems
ActiveMAC=LCase(Replace (objItem.MACAddress,":",""))
Next
For val = 1 to UBound(a)
a(val) = LCase(a(val))
If a(val) = ActiveMAC Then
WScript.Echo "Die MAC-Adresse " & a(val) & " ist gültig."
End If
Next
WScript.Quit
▀▄▀▄▀▄▀▄▀▄▀▄▀▄▀▄▀▄▀▄▀▄▀▄▀▄▀▄▀
╔╗╔╦══╦╗╔╦══╦╦╦╗
║╚╝║╔╗║╚╝║╔╗║║║║
║╔╗║╠╣║╔╗║╠╣╠╬╬╣
╚╝╚╩╝╚╩╝╚╩╝╚╩╩╩╝
(\__/)
( +.+)
(")(")
▀▄▀▄▀▄▀▄▀▄▀▄▀▄▀▄▀▄▀▄▀▄▀▄▀▄▀▄▀
╔╗╔╦══╦╗╔╦══╦╦╦╗
║╚╝║╔╗║╚╝║╔╗║║║║
║╔╗║╠╣║╔╗║╠╣╠╬╬╣
╚╝╚╩╝╚╩╝╚╩╝╚╩╩╩╝
(\__/)
( +.+)
(")(")
▀▄▀▄▀▄▀▄▀▄▀▄▀▄▀▄▀▄▀▄▀▄▀▄▀▄▀▄▀
Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „mostly_harmless“ ()