[Batch/VBS/COM] WLAN IP in einem Ad-Hock in manuelle festgelegte IP vergeben

Sonbird

Stammgast
Hallo zusammen.

Ich habe folgende Frage:

Ich habe immerwieder ein Ad-Hock Netzwerk mit einer Festgelegten IP Adresse (192.168.137.1)

Wenn ich in einer Infrastruktur mich verbinde, bleibt diese Adresse vorhanden... Ich muss dann immer in die Netzwerkeinstellungen und denn auf Automatische IP Abfrage... Ich finde dies ziemlich müssam.

Jetzt meine eig. Frage dazu.
Wie kann ich diese Arbeit mit einem Batch/VBS erledigen?

Mfg

Sonbird
 
Ist schon ein wenig älter, aber falls jemand anderes mal gerne dasselbe haben möchte, hier ein Batch-Script welches ich mir vor 3 Jahren mal geschrieben und immer wieder mal angepasst habe.

So sieht es aus, Code weiter unten:


Code:
rem // Grundlegende Skripteinstellungen
ECHO off

rem // Ein paar Informationen für den Titel
setlocal
set $version=1.5
set $date=26-01-2012
set $author="Michel Eichelberger"

rem // Titelleistenausgabe
title Network Address Change Script %$version% (%$date%) - %$author%

rem // Konsolenfarbe ändern
color 0A

rem // Charset/CodePage ändern für die Darstellung von Umlauten (WinLatin1 = 1252)
CHCP 1252

rem // Gib hier die möglichen Netzwerkadapter an. Die Namen der Adapter sind wichtig! Du musst exakt dieselben Adapternamen verwenden, die auch im Netzwerkcenter angezeigt werden.
set Adapter1=Drahtlosnetzwerkverbindung
set Adapter2=LAN-Verbindung


set CurrentAdapterSelection=%Adapter1%


:SelectMode
rem // Auswahlmodus
CLS

@echo.
@echo   Sie haben die Wahl zwischen nachfolgenden Netzwerkumgebungen:
@echo.
@echo     {IP-Vorlagen}:
@echo        [0] - DHCP (Standard)
@echo        [1] - AdHoc (Static-IP: 192.168.137.1)
@echo        --------------------------------------------------------
@echo     {IPCONFIG ausführen}:
@echo        [i] - 'ipconfig'
@echo        [I] - 'ipconfig /all'
@echo        [f] - 'ipconfig /flushdns'
@echo        [r] - 'ipconfig /release'
@echo        [R] - 'ipconfig /renew'
@echo        --------------------------------------------------------
@echo     {Erweiterte Möglichkeiten}:
@echo        [M] - Manuelle IP vergeben
@echo        [a] - Zu konfigurierenden Adapter wählen
@echo              Aktueller Adapter: "%CurrentAdapterSelection%"
@echo        --------------------------------------------------------
@echo     {Script beenden}:
@echo        [x] - EXIT
@echo.
@echo ________________________________________________________________________________
@echo.
@echo.

rem // Auswahl
set choice=
set /p choice=Modus:   
if not "%choice%" == "" set choice=%choice:~0,1%
cls
if "%choice%" == "0" goto DHCP
if "%choice%" == "1" goto AdHoc

if "%choice%" == "M" goto ManualIP

if "%choice%" == "i" goto IPconfig
if "%choice%" == "I" goto IPconfigAll
if "%choice%" == "f" goto IPconfigFlushDns
if "%choice%" == "r" goto IPconfigRelease
if "%choice%" == "R" goto IPconfigRenew

if "%choice%" == "a" goto Adapter

if "%choice%" == "x" goto Exit
if "%choice%" == "X" goto Exit

@echo.
@echo.
@echo     "%choice%" steht nicht zur Auswahl...
@echo.
pause
goto SelectMode


:DHCP
rem // Setzt den Netzwerkadapter auf DHCP.
NETSH INTERFACE IP SET ADDRESS NAME="%CurrentAdapterSelection%" SOURCE=dhcp
NETSH INTERFACE IP SET ADDRESS NAME="%CurrentAdapterSelection%" GATEWAY=dhcp GWMETRIC=0
NETSH INTERFACE IP SET DNSSERVERS NAME="%CurrentAdapterSelection%" SOURCE=dhcp

goto SelectMode


:AdHoc
rem // Stellt die IP auf den Minecraft Server um, der auch extern verfügbar ist.
NETSH INTERFACE IP SET ADDRESS NAME="%CurrentAdapterSelection%" SOURCE=static ADDR=192.168.137.1 MASK=255.255.255.0 GATEWAY=192.168.137.1 GWMETRIC=0
NETSH INTERFACE IP SET DNSSERVERS NAME="%CurrentAdapterSelection%" static 192.168.137.1 PRIMARY


:IPconfig
IPCONFIG

PAUSE

goto SelectMode


:IPconfigAll
IPCONFIG /ALL

PAUSE

goto SelectMode


:IPconfigFlushDns
IPCONFIG /FLUSHDNS

PAUSE

goto SelectMode


:IPconfigRelease
IPCONFIG /RELEASE

PAUSE

goto SelectMode


:IPconfigRenew
IPCONFIG /RENEW

PAUSE

goto SelectMode


:ManualIP
set IP=
set /p IP=IP Adresse:                
set Subnet=
set /p Subnet=Subnetz Maske:             
set Gateway=
set /p Gateway=Standard Gateway:          
set DNS1=
set /p DNS1=Primary DNS:               
cls

if "%Subnet%" == "" goto SetStdSubnet
if "%Gateway%" == "" goto SetStdGateway
if "%DNS1%" == "" goto SetStdDNS1
goto SetIP

:SetStdSubnet
set Subnet=255.255.255.0
if "%Gateway%" == "" goto SetStdGateway
if "%DNS1%" == "" goto SetStdDNS1
goto SetIP

:SetStdGateway
set Gateway=%IP%
if "%DNS1%" == "" goto SetStdDNS1
goto SetIP

:SetStdDNS1
set DNS1=%IP%
goto SetIP

:SetIP
NETSH INTERFACE IP SET ADDRESS NAME="%CurrentAdapterSelection%" SOURCE=static ADDR=%IP% MASK=%Subnet% GATEWAY=%Gateway% GWMETRIC=0
NETSH INTERFACE IP SET DNSSERVERS NAME="%CurrentAdapterSelection%" static %DNS1% PRIMARY

goto SelectMode


:Adapter
@echo.
@echo   Wählen Sie den zu konfigurierenden Adapter:
@echo        --------------------------------------------------------
@echo        [0] - Drahtlosnetzwerkverbindung
@echo        [1] - LAN-Verbindung
@echo        --------------------------------------------------------

set AdapterChoice=
set /p AdapterChoice=Adapter:   
if not "%AdapterChoice%" == "" set AdapterChoice=%AdapterChoice:~0,1%
cls
if "%AdapterChoice%" == "0" set CurrentAdapterSelection=%Adapter1%
if "%AdapterChoice%" == "1" set CurrentAdapterSelection=%Adapter2%

goto SelectMode


:Exit
EXIT


Ich habe das Script auf deine Bedürfnisse angepasst. Wenn du das Script anpassen willst, musst du zwingend die Kommentare lesen, ansonsten klappts vermutlich nicht wenn du etwas aus lässt. Das Script wurde unter Windows 7 geschrieben und verwendet. Aus Erfahrung weiss ich, dass unter Windows 8 das Script nicht ganz richtig funktioniert, weil einige Parameter nicht mehr gleich sind.

Bei Fragen einfach nochmals melden.
 
Oben