Batch-Skript zum umschalten zwischen zwei Netzwerken

Horstmond

Newbie
Registriert
Jan. 2025
Beiträge
2
Hallo,

ich habe in meinem PC zwei Netzwerkkarten und möchte zwischen beiden mit einer oder zwei Batch-Skripten hin und herschalten. Wichtig ist hierbei, dass die jeweiligen Adapter aktiviert/deaktiviert werden.

1. Batch-Skript (Adapter 1)
  1. Aktiviere Adapter 1
  2. IP-Adresse automatisch beziehen
  3. DNS-Serveradresse automatisch beziehen
  4. Deaktiviere Adapter 2
2. Batch-Skript (Adapter 2)
  • Aktiviere Adapter 2
  • IP-Adresse 192.168.1.8
  • Subnetzmaske 255.255.255.0
  • Deaktiviere Adapter 1
Ich wäre euch sehr dankbar, wenn ihr mir hier helfen könntet.

Gruß
Marco
 
Sofern es um Windows geht, nimm Powershell.
 
Darf man fragen, warum Du das so machst, den konkreten Anwendungsfall? Nicht, daß wir hier in ein XY-Problem rutschen.
 
  • Gefällt mir
Reaktionen: JumpingCat
Also eigentlich willst du doch nur immer das jeweils andere Interface aktivieren oder deaktivieren? Weil der ganze IP-Kram ist ja eigentlich fest konfiguriert.

Aber die Frage ist, welches Betriebssystem du da einsetzt.
 
Okay, da ChatGPT hier nicht erlaubt ist:

Hier der auszug aus dem Script was ich nutze

@echo off
rem Check if Adapter 1 (Internet) is active
for /f "tokens=3 delims=: " %%A in ('netsh interface show interface ^| find "Internet"') do set state=%%A

if "%state%"=="Enabled" (
echo deactivate adapter 1 (Internet) and activate adapter 2 (Fallback)...
netsh interface set interface "Internet" admin=disable
netsh interface set interface "Fallback" admin=enable
) else (
echo deactivate adapter 2 (Fallback) and activate adapter 1 (Internet)...
netsh interface set interface "Fallback" admin=disable
netsh interface set interface "Internet" admin=enable
)
pause

Wichtig ist nur: Name von deinen Adaptern musst du anpassen oder halt entsprechend so in der BAT abändern, entweder guckst du in deinen Netzwerkeinstellungen von windows wie die adapter heißen oder aber per CMD als admin (glaube man braucht admin)

netsh interface show interface

Das Erstellte Batchscript als admin ausführen -> Fertig
 
  • Gefällt mir
Reaktionen: Azghul0815
Ich möchte mein internes Netzwerk vom öffentlichen Netzwerk strikt trennen. Eigentlich stimmt es - ich will die beiden Adapter aktivieren und trennen.

Windows 11 Enterprise
 
Das macht bei mir der Router. @Horstmond

Kannst Du das mal näher erklären?
 
Es kann auch auf die Systemsprache ankommen, auf meinem "deutschen" System wo ich nur zock funktionierte das ganze nicht, musste den krempel überarbeiten.


So sollte es eigtl. klappen wenn du deine Netze "Heimnetz" und "Arbeit" nennst.
@echo off
:: Netzwerkadapter-Namen festlegen
set "Adapter1=Heimnetz"
set "Adapter2=Arbeit"

:: Debug-Informationen anzeigen
echo ==== DEBUG: Adapter-Namen ====
echo Adapter1: %Adapter1%
echo Adapter2: %Adapter2%
echo ===============================

:: Status von Adapter1 prüfen
echo Überprüfe den Status von "%Adapter1%"...
netsh interface show interface name="%Adapter1%" | findstr /i "Aktiviert"
if %errorlevel%==0 (
echo "%Adapter1%" ist aktiv. Schalte auf "%Adapter2%" um...
echo Deaktiviere "%Adapter1%"...
netsh interface set interface name="%Adapter1%" admin=disabled
echo Aktiviere "%Adapter2%"...
netsh interface set interface name="%Adapter2%" admin=enabled
echo Umschaltung abgeschlossen. "%Adapter2%" ist jetzt aktiv.
) else (
echo "%Adapter1%" ist nicht aktiv. Schalte auf "%Adapter1%" um...
echo Deaktiviere "%Adapter2%"...
netsh interface set interface name="%Adapter2%" admin=disabled
echo Aktiviere "%Adapter1%"...
netsh interface set interface name="%Adapter1%" admin=enabled
echo Umschaltung abgeschlossen. "%Adapter1%" ist jetzt aktiv.
)

:: Debug-Status am Ende prüfen
echo ==== DEBUG: Status überprüfen ====
netsh interface show interface
echo ===============================
pause
 
Horstmond schrieb:
Ich möchte mein internes Netzwerk vom öffentlichen Netzwerk strikt trennen. Eigentlich stimmt es - ich will die beiden Adapter aktivieren und trennen.
Muß das dann auch über ein Gerät erfolgen, daß es Zugriff auf beide Netze hat?
 
Zurück
Oben