IP/DNS-Einstellungen mit Batch Script ändern

Die IP-Einstellungen einer Netzwerkverbindung nicht von Hand sondern mit einem Batch Script machen zu lassen kann mehrere Vorteile haben. Natürlich schließt man dadurch Tippfehler aus und spart auch ein wenig Zeit aber sinnvoller ist der Einsatz bei mehreren Standorten mit unterschiedlichen IP-Einstellungen, zwischen denen man selber oder ein Kollege pendelt. Die IP Settings eines jeden Standorts lassen sich dann einfach per Doppelklick übernehmen.

Hier ein Beispiel Batch Script:

netsh interface ip set address "LAN-Verbindung" static 192.168.178.44 255.255.255.0 192.168.178.1 256
netsh interface ip set dns "LAN-Verbindung" static 192.168.178.10 PRIMARY
netsh interface ip set dns "LAN-Verbindung" static 192.168.178.11 index=2

Achtung: Hier müssen also Name der Netzwerkverbindung und natürlich die Adressen angepasst werden.

Mit diesem Script werden an der Netzwerkverbindung „LAN-Verbindung“ folgende Einstellungen übernommen:
IP-Adresse: 192.168.178.44
Subnetzmaske: 255.255.255.0
Gateway: 192.168.178.1
Gateway-Metrik: 256
DNS 1: 192.168.178.10
DNS 2: 192.168.178.11

Für DHCP bei den IP- als auch den DNS-Einstellungen einfach folgende Zeilen verwenden:

netsh interface ip set address "LAN-Verbindung" dhcp
netsh interface ip set dns "LAN-Verbindung" dhcp

Für Informationen zu den aktuellen Einstellungen reicht der Befehl

netsh interface ip show config

oder ganz klassisch

ipconfig /all

.

9 Kommentare

  1. Also ich verwende dafür das Tool „Access Connections“, das mit jedem Thinkpad mitgeliefert wird. Es gibt sicherlich auch Tools von anderen Entwicklern, mit denen man die IP-Settings ändern kann. Dafür nun extra Batch-Scripte zu schreiben fände ich persönlich zu umständlich. ^_^

  2. Ottonormalverbraucher sind wahrscheinlich wirklich besser mit Tools bedient, allerdings gibt es im betrieblichen Umfeld den Bedarf, so etwas zu „batchen“, um z. B. nach Image-Restore die Settings beim ersten hochfahren einzutragen, ohne sich erst endlos durch die Menüs zu klicken. Und separate Tools kosten die Firma ja meistens auch wieder Geld.

    Mittels Abfragen kann man den Prozess ja interaktiv gestalten, z. b.:
    //CODE//
    echo Bitte letztes Oktett der gewuenschten IP Adresse eingeben:
    set /p IPADDRESS=

    netsh interface ip set address „LAN-Verbindung“ static 192.168.123.%IPADDRESS% 255.255.255.0 192.168.123.254 256
    //CODE//

    Somit erspart man sich zusätzliche Tipperei.

    Gruß

    dub

      1. @dub: Korrekt, Batch ist meist die fummelige aber dafür kostenlose und nach eigenen Wünschen anpassbare Lösung, vor allem für kleine Unternehmen, wo das IT-Budget noch zu groß für Management-Suiten ist und eher Eigenentwicklung und Open-Source benötigt werden.

        @Canopus: Wie meinst du das, „unter Erweitert noch mehrere IP-Adressen“? Meinst du, dass die IP-, DNS- und Gateway-Adresse vom Skript gesetzt werden sollen oder welche Adressen?

        1. Wir nutzen bei der Inbetriebnahme einer Anlage oftmals mehrere IP Adressen mit verschiedenen Subnetzen.
          Da ich aber ziemlich oft zwischen DHCP und Static umschalten muß, muß ich dann die Adressen mit den unterschiedlichen Subnetzen wieder manuell einfügen. Dockingstation DHCP draußen an der Anlage Static
          TCP/IPv4 => Erweitert => IP-Adresse Hinzufügen.

          Und das soll halt das Batch machen.

  3. Hallo Jochen,
    ich bin mir unsicher, ob ich das Problem richtig verstehe. Aber in dem Artikel geht es genau um das, was du anfragst: Das Setzen von statischen IP-Einstellungen: IP-Adresse, Subnetzmaske, Gateway und beide DNS Server mit den 3 Befehlen im ersten Codefenster im Artikel. Das zweite Codefenster zeigt DHCP.
    Du könntest also ein Skript haben mit einer festen statischen Config, dass per Doppelklick gesetzt wird. Oder du optimierst das Skript mit einer Nutzereingabe am Anfang, in der z.B. der Admin noch das letzte Stück der IP-Adresse dynamisch eingeben kann und dann wird das gesetzt, usw.
    Falls deine Frage noch besteht und du sie anders beschreiben/erklären kannst, versuch das mal.

Schreibe einen Kommentar