
131361
20.12.2019
Batch IP Adresse vom aktiven Adapter ändern
Hallo zusammen,
ich würde gerne via Batch die IP Adresse, Subnetz, Gateway, DNS 1 und 2 der Ethernet setzen.
Grundsätzlich löse ich es wie folgt:
netsh interface ip set address "LAN" static [IP] [Sub] [Gateway]
Jetzt kommt allerdings das Problem, dass die Geräte immer über zwei LAN Verbindungen verfügen.
Je nach dem, wo das Netzwerkkabel angeschlossen wurde, ist LAN-Verbindung 1 oder LAN-Verbindung 2 aktiv.
Und nächster Faktor.
Die beiden LAN-Verbindungen habe von Gerät zu Gerät unterschiedliche Nummern.
Beispiel:
Gerät 1:
LAN-Verbindung18
LAN-Verbindung19
Gerät 2:
LAN-Verbindung13
LAN-Verbindung14
Jetzt ist die Frage:
Wie kann ich ermitteln welche LAN Verbindung die aktive ist und deren IP dann ändern?
ich würde gerne via Batch die IP Adresse, Subnetz, Gateway, DNS 1 und 2 der Ethernet setzen.
Grundsätzlich löse ich es wie folgt:
netsh interface ip set address "LAN" static [IP] [Sub] [Gateway]
Jetzt kommt allerdings das Problem, dass die Geräte immer über zwei LAN Verbindungen verfügen.
Je nach dem, wo das Netzwerkkabel angeschlossen wurde, ist LAN-Verbindung 1 oder LAN-Verbindung 2 aktiv.
Und nächster Faktor.
Die beiden LAN-Verbindungen habe von Gerät zu Gerät unterschiedliche Nummern.
Beispiel:
Gerät 1:
LAN-Verbindung18
LAN-Verbindung19
Gerät 2:
LAN-Verbindung13
LAN-Verbindung14
Jetzt ist die Frage:
Wie kann ich ermitteln welche LAN Verbindung die aktive ist und deren IP dann ändern?
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 527872
Url: https://administrator.de/forum/batch-ip-adresse-vom-aktiven-adapter-aendern-527872.html
Ausgedruckt am: 19.04.2025 um 02:04 Uhr
4 Kommentare
Neuester Kommentar
Damit wandle ich dynamische in statische IPs um. Sollte sich leicht für deine zwecke abwandeln lassen
$NICs = Get-WMIObject Win32_NetworkAdapterConfiguration -computername . | where{$_.IPEnabled -eq $true -and $_.DHCPEnabled -eq $true}
Foreach($NIC in $NICs) {
$ip = ($NIC.IPAddress)
$gateway = $NIC.DefaultIPGateway
$subnet = $NIC.IPSubnet
$dns = $NIC.DNSServerSearchOrder
$NIC.EnableStatic($ip, $subnet)
$NIC.SetGateways($gateway)
$NIC.SetDNSServerSearchOrder($dns)
}
Also, zum beispiel um die IP Addresse des aktiven Adapter in 192.168.1.10 mit einem Gateway von 192.168.1.1 und einem Submask von 255.255.255.0 zu ändern könntest du so einen code benutzen:
@echo off
for /f "tokens=2 Delims==" %%a in ('"wmic nic where 'AdapterTypeID=0 and NetConnectionStatus=2' get NetConnectionID /value"') do (
for /f "Delims=" %%b in ("%%a") do netsh interface ip set address "%%b" static 192.168.1.10 255.255.255.0 192.168.1.1
)