Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

Name einer Netzwerkverbindung anhand dessen Adapterbeschreibung auslesen

Frage Entwicklung Batch & Shell

Mitglied: Ghost-Worker

Ghost-Worker (Level 1) - Jetzt verbinden

22.08.2012 um 19:08 Uhr, 3498 Aufrufe, 9 Kommentare

Hallo zusammen,

habe wieder mal ein kleines Problem bei dem ich nicht weiter komme.

Ich möchte eine Netzwerkkarte per Batch parametrieren.
Generell bekomme ich das per "netsh" und dem entsprechenden Namen der Verbindung hin.
Allerdings ist es in dem Fall so, dass die Beschreibung immer gleich ist, aber der Name der Netzwerkverbindung variert.

Daher war meine Idee alle aktiven Karten auslesen um zu sehen ob die entsprechende dabei ist und diese dann im zweiten Durchlauf bzw. deren Namen auslesen zu können.

Das erste Auslesen habe ich über ein Skript, dass hier bereits schon vorgestellt wurde hinbekommen.

01.
@Echo Off & Setlocal 
02.
Set "Log=F:\Active_cards.txt" 
03.
Echo Active card adapter:>"%Log%" 
04.
For /f "tokens=2 delims=:" %%i In ('ipconfig /all^|findstr "Beschreibung"') Do Set "Name=%%i" & Call :WriteCards 
05.
Goto :EOF 
06.
 
07.
:WriteCards 
08.
echo %Name:~1%>>"%Log%"
In der Log-Datei stehen nun alle Adapter, nur ich weiß nicht wie ich über die Beschreibung an den Namen der Verbindung komme.
Auf dem Bild ist die Beschreibung des Adapters "Netgear ..."

f719b0959068b9173705b48c57c29584 - Klicke auf das Bild, um es zu vergrößern

Über diese Beschreibung will ich nun, dass der Name der Verbindung - in dem Fall "WLan - Karte" ausgegeben wird.

Hat da jemand von euch eine Idee?

Danke schon mal ...
GW
Mitglied: Muehlmann
22.08.2012 um 19:52 Uhr
Start -> Systemsteuerung -> Netzwerk- und Freigabecenter -> Adaptereinstellungen ändern -> Rechtsklick auf den gewünschten Adapter -> Umbenennen.

oder ich hab dein vorhaben falsch verstanden ;)
Bitte warten ..
Mitglied: Ghost-Worker
22.08.2012 um 20:04 Uhr
Hi Muehlmann,

du hast es nicht falsch verstanden - habe nur den Hintergrund vergessen.

Ich möchte das gerne über ein Skript abwickeln, da ich dieses dann auf einem Remoterechner im Netzwerk ausführen will um so die Netzwerkkarte bzw. diese Spezielle zu parametrieren.

Die Anderen Karten kann ich, wie oben beschrieben, mit netsh ansprechen nur leider diese nicht, da der Verbindungsname varieren kann.

Danke
GW
Bitte warten ..
Mitglied: brammer
22.08.2012 um 20:07 Uhr
Hallo,

handelt es sich immer um den selben Hersteller der WLAN KArte?
Dann könntest du die MAC Adresse auslesen und verwenden.

brammer
Bitte warten ..
Mitglied: Ghost-Worker
22.08.2012 um 20:17 Uhr
Hallo,

nein - es ist ein anderer Hersteller und das oben ist nur ein Beispiel.

Es handelt sich um eine Dual-Gigabitkarte.
Die beiden Netzwerkanschlüsse werden zu einen virtuellen 2Gbit-Anschluss zusammengefasst, den es in diesem Fall zu parametrieren gilt.

Das Zusammenfassen geht über die Herstellersoftware automatisch - nur die Parametrierung in diesem Fall nicht.
Deswegen auch der nie Gleiche Verbindungsname, da in dem Rechner noch 4 andere Netzwerkadapter verbaut sind.
Und da möchte ich ansetzen um dies zu automatisieren über ein Skript.

Danke
GW
Bitte warten ..
Mitglied: Dobby
22.08.2012, aktualisiert um 22:11 Uhr
Hallo Ghost-Worker,

ich hab es diesmal wirklich glaub mir!!!

Mit dem Programm hat wohl nicht so richtig funktioniert, aber nun:

Diese Workstations mit den Dual GB Lan Karten sind doch zu einem LAG oder was auch immer zusammen geschlossen und hängen an einem Switch und Du willst nicht alles zu Fuß erledigen, richtig?

Du gehst an den Switch (mittels Verwaltungssoftware) und schaust einfach dort nach, mit welchen zwei Karten immer ein nennen wir es mal LAG aufgesetzt wurde denn ein LAG hat nun mal immer zwei Enden, dann schaust Du mit dem Programm nach welchen Hostnamen diese Rechner haben und welche IP´s sie besitzen und dann gehst Du noch einmal an das Script um für diesen Adapter die Parametrierung zusetzen, auch wenn
mehrere Karten in der Workstation verbaut sind, macht das ja jetzt nichts mehr aus, denn Du hast ja nun die MAC adressen und die sind/sollten nun mal einmalig sein.

Ich hoffe das war was diesmal.

P.S.

Ein netstat -r zeigt Dir die Routingtabelle der Workstation an, aber diese beginnt immer mit der Schnittstellenliste!
Adaptername und Mac Adresse

Routingtabelle
Schnittstellenliste
0x1 ...00 1b 21 70 ec c7 ...... Intel(R) PRO/1000 GT Desktop Adapter

Ein zweiter Befehl Hostname bringt Dir den Hostnamen derselben Workstation

nun muss das Script das alles nur noch in eine Datei schreiben und an Dich oder Deinen PC zurückschicken.
Bitte warten ..
Mitglied: bastla
22.08.2012, aktualisiert um 23:35 Uhr
Hallo Ghost-Worker!

Versuch's mal damit:
01.
@echo off & setlocal 
02.
set "Name=NETGEAR" 
03.
 
04.
set "G=%temp%\GetID.vbs" 
05.
>"%G%" echo Set Items=GetObject("winmgmts:\\.\root\CIMV2").ExecQuery("SELECT * FROM Win32_NetworkAdapter Where Name Like '%%%Name%%%'"):For Each Item In Items:WScript.Echo Item.NetConnectionID:Next 
06.
for /f "delims=" %%i in ('cscript //nologo "%G%"') do set "ID=%%i" 
07.
del "%G%" 
08.
echo %ID%
Angegeben werden muss nur ein eindeutiger Bestandteil des Namens - falls es dennoch mehrere Treffer gibt, wird allerdings nur der letzte als Ergebnis geliefert ...

Grüße
bastla
Bitte warten ..
Mitglied: Ghost-Worker
24.08.2012 um 17:56 Uhr
@bastla:

Danke für dein Script. Hat mich weit voran gebracht.
Allerdings steh ich bei einem Punkt auf dem Schlauch.

Ich habe, wie auf dem Bild zu sehen ist
a72b59c0431e04a1107e8be7443a18eb - Klicke auf das Bild, um es zu vergrößern

drei Adapter mit TEAM : Team #0.
Der Adapter, der nur als TEAM : Team #0 ohne Angabe des Anschlusstypes (Intel(R) Pro ...) ist/war der Kandidat um den es geht/ging.
Dieser entsteht durch den Zusammenschluss der beiden Anderen.

Nun zum Schlauch dazu ...
Wenn ich das Script von bastla nehme, dann findet er den Adapter unter der Angabe von set "Name=Intel". Anders nicht.

01.
@echo off & setlocal 
02.
set "Name=Intel" 
03.
 
04.
set "G=%temp%\GetID.vbs" 
05.
>"%G%" echo Set Items=GetObject("winmgmts:\\.\root\CIMV2").ExecQuery("SELECT * FROM Win32_NetworkAdapter Where Name Like '%%%Name%%%'"):For Each Item In Items:WScript.Echo Item.NetConnectionID:Next 
06.
for /f "delims=" %%i in ('cscript //nologo "%G%"') do set "ID=%%i" 
07.
del "%G%" 
08.
echo %ID%
Was ich jetzt nicht verstehe, warum er den Adapter nur mit Intel findet und nicht per TEAM : Team#0!

Ansonsten funktioniert Alles so wie es soll.
Es wäre nett wenn hier jemand noch zu diesem "Problem" eine Idee hätte.
Mir geht es nun nur noch ums Verständnis.

Danke
GW
Bitte warten ..
Mitglied: bastla
24.08.2012 um 21:53 Uhr
Hallo Ghost-Worker!

Leider kann ich Dir nicht sagen, warum "TEAM : Team#0" nicht gefunden wird - gesucht wird jedenfalls nach einem zum Inhalt der Variablen passenden Teilstring. Wenn Du genau nach %Name% suchen willst (also nicht nur nach Namen, in denen %Name% enthalten ist), müsste Zeile 5 so aussehen:
>"%G%" echo Set Items=GetObject("winmgmts:\\.\root\CIMV2").ExecQuery("SELECT * FROM Win32_NetworkAdapter Where Name = '%Name%'"):For Each Item In Items:WScript.Echo Item.NetConnectionID:Next
Grüße
bastla
Bitte warten ..
Mitglied: Ghost-Worker
25.08.2012 um 07:23 Uhr
Hallo bastla,

danke für deine Hilfe.
Ich habe mir auch schon überlegt die "SQL-Abfrage" dahingehend so umzubauen.

So passt es nun!

Ein Dank an Alle für die gute und schnelle Unterstützung.

Ich mach hier nun das Licht aus!

Danke
GW
Bitte warten ..
Neuester Wissensbeitrag
Ähnliche Inhalte
Batch & Shell
gelöst DWORD (Name immer verschieden) eines RegKeys auslesen und in Variable schreiben (2)

Frage von reissaus73 zum Thema Batch & Shell ...

VB for Applications
gelöst Bestimmte Spalten aus CSV-Datei auslesen (VBS) (9)

Frage von Gurkenhobel zum Thema VB for Applications ...

Batch & Shell
Eventlog Druckjobs mit VBS auslesen (2)

Frage von joni2000de zum Thema Batch & Shell ...

Batch & Shell
gelöst Appx aus Image auslesen und entfernen (9)

Frage von Markus2016 zum Thema Batch & Shell ...

Heiß diskutierte Inhalte
Windows Userverwaltung
Ausgeschiedene Mitarbeiter im Unternehmen - was tun mit den AD Konten? (33)

Frage von patz223 zum Thema Windows Userverwaltung ...

LAN, WAN, Wireless
FritzBox, zwei Server, verschiedene Netze (21)

Frage von DavidGl zum Thema LAN, WAN, Wireless ...

Viren und Trojaner
Aufgepasst: Neue Ransomware Goldeneye verbreitet sich rasant (20)

Link von Penny.Cilin zum Thema Viren und Trojaner ...

Windows Netzwerk
Windows 10 RDP geht nicht (18)

Frage von Fiasko zum Thema Windows Netzwerk ...