Eine per DHCP vergebene IP-Adresse automatisch auf fest setzen

Ich musste ein Netz von DHCP auf fest setzen. Dazu musste ich mich remote auf jeden PC schalten und umständlich die Änderungen vornehmen.

Das brachte mich auf die Idee, das durch ein Script erledigen zu lassen. Das kam dabei heraus (funktioniert nur für Spracheinstellung Deutsch, sonst muss es angepasst werden):

@echo off
rem Diese Schleife setzt die Variable %IP% auf die aktuelle IP-Adresse.
FOR /F "tokens=5" %%a in ('netsh interface ipv4 show route ^| find "0.0.0.0/0"') do @FOR /F "tokens=2" %%A in ('netsh interface ipv4 show addresses %%a ^| find "IP-Ad"') do set IP=%%A
rem Diese Schleife setzt die Variable %INTERFACE% auf die verwendete Schnittstelle.
FOR /F "tokens=5" %%a in ('netsh interface ipv4 show route ^| find "0.0.0.0/0"') do @FOR /F "tokens=4" %%A in ('netsh interface ipv4 show addresses %%a ^| find "der Schnittstelle"') do set INTERFACE=%%A
rem Diese Schleife setzt die Variable %GW% auf das Standard-Gateway.
FOR /F "tokens=5" %%a in ('netsh interface ipv4 show route ^| find "0.0.0.0/0"') do @FOR /F "tokens=2" %%A in ('netsh interface ipv4 show addresses %%a ^| find "Standard"') do set GW=%%A
set dnsserver=192.168.150.20
set dnsserver2=192.168.140.20

netsh interface ipv4 set address name=%INTERFACE% static %IP% 255.255.255.0 %GW%
netsh interface ipv4 set dnsserver name=%INTERFACE% static %dnsserver% both
netsh interface ipv4 add dnsserver name=%INTERFACE% %dnsserver2% index=2
echo Die Verbindung wird für ein paar Sekunden unterbrochen.
pause