tobiisfreaky
Goto Top

Netzwerkkarte auslesen mit welcher Skriptsprache

Hallo Leute,

ich bin derzeit ein bisschen am Verzweifeln. Ich muss ein Skript schreiben, welches auf allen Clients bei uns im Haus (ca. 2000) die !!!aktive!!! Netzwerkkarte ausliest und in eine Text-Datei piped.
D.h. In einigen Clients sind mehrere OnBoard-netzwerkkarten vorhanden, jedoch nur eine angeschlossen und diese, die angeschlossen ist und aktiv Päckchen empfängt und sendet, soll ausgelesen werden.
Hintergrund: Wir steigen aufgrund eines Umzugs von statischee auf dynamische IP-Adressen um. Somit muss die MAC-Adresse ausgelesen werden.
Das habe ich mit getmac /FO table /NH auch schon realisiert, aber wie gesagt werden mir mehrere MACs angegeben, die man nicht unterscheiden kann, welche die aktive und die passive ist.

Jetzt wollte ich einfach mal, ohne gleich nach einem Skript zu fragen, fragen welche Skriptsprache dafür am geeignetesten dafür ist.

Also Batch schon mal nicht..
Wie siehts aus mit VBS?
Dazu konnte ich auf google derzeit nicht viel zu MAC auslesen.

Vllt hat jmd so etwas schon mal realisieren müssen und kann mir die Skriptsprache nennen, sodass ich mich da auch gleich einlesen kann.


Wäre sehr freundlich, einen schönen Abend wünsche ich noch face-smile

LG Tobi

Content-ID: 115150

Url: https://administrator.de/contentid/115150

Ausgedruckt am: 22.11.2024 um 11:11 Uhr

bastla
bastla 02.05.2009 um 22:32:54 Uhr
Goto Top
Hallo TobiisFreaky!
Also Batch schon mal nicht..
Kann ich nachvollziehen, weil
wmic nic get Name,MACAddress,NetConnectionStatus
ist nicht besonders handlich ...

... daher besser mit VBScript:
Set objWMIService = GetObject("winmgmts:\\.\root\CIMV2")   
Set colItems = objWMIService.ExecQuery("SELECT * FROM Win32_NetworkAdapter")  
For Each objItem in colItems
    If objItem.NetConnectionStatus > 0 Then WScript.Echo objItem.MACAddress, objItem.Name
Next
Das Schreiben in die gewünschte Datei (anstelle des "WScript.Echo") wirst Du sicher hinbekommen ...

Grüße
bastla
77559
77559 03.05.2009 um 00:34:01 Uhr
Goto Top
Zitat von @bastla:
Hallo TobiisFreaky!
> Also Batch schon mal nicht..
Kann ich nachvollziehen, weil
wmic nic get Name,MACAddress,NetConnectionStatus
> 
ist nicht besonders handlich ...
Fehlt da jetzt ein face-wink ?
Damit man nicht Äpfel mit Birnen vergleicht sollte das auch besser heißen
wmic nic where "NetConnectionStatus=2" get Name,MACAddress

Und wenn ich die Ausgabe auf meinem PC dann mal vergleiche ....
C:\>wmic nic where "NetConnectionStatus=2" get Name,MACAddress
MACAddress         Name
00:23:54:F5:AE:D3  Realtek RTL8168C(P)/8111C(P) PCI-E Gigabit Ethernet NIC
12:81:43:DD:3B:1F  1394-Netzwerkadapter

C:\>GetActiveMAC.vbs
00:23:54:F5:AE:D3 Realtek RTL8168C(P)/8111C(P) PCI-E Gigabit Ethernet NIC
12:81:43:DD:3B:1F 1394-Netzwerkadapter

Gruß
LotPings