Configurare la rete da riga di comando

Ecco un semplice file batch per configurare la rete su windows al volo, in base a parametri
preimpostati, qualora ci si trovi a doversi spostare spesso da una parte all’altra
e si abbiano diverse configurazioni statiche o combinazioni di ip statico/dhcp.
Il batch (funziona su Win 2K, Xp) prende l’input dall’utente e, nell’esempio comprende due possibili scelte.
La prima scelta consente di configurare la rete staticamente, la seconda
via dhcp, tanto per avere esempi di entrambe le situazioni.
L’input utente viene processato grazie a SET /P
Per maggiori informazioni sul comando NETSH che esegue le modifiche alla
configurazione di rete, vai qui.
“Connessione alla rete locale” va sostituito con la denominazione della connessione di rete per cui dovete modificare i parametri.
I commenti nel codice dovrebbero essere abbastanza esplicativi :)

—————————————————————————————————–
@ECHO OFF
CLS
:LOOP
ECHO Scegli come configurare la rete:
ECHO – A per la rete XXXXXXX
ECHO – B per la rete YYYYYYY
ECHO – Q per terminare

REM “SET /P” per definire la variabile in base all’input dell’utente

SET Choice=
SET /P Choice=Scrivi la lettera e premi ENTER:

REM Estraggo la scelta prendendo una stringa lunga 1 carattere
REM a partire dalla posizione 0

IF NOT ‘%Choice%’==” SET Choice=%Choice:~0,1%
ECHO.

REM Uso /I perchè la scelta sia case insensitive

IF /I ‘%Choice%’==’A’ GOTO ItemA
IF /I ‘%Choice%’==’B’ GOTO ItemB
IF /I ‘%Choice%’==’Q’ GOTO End

ECHO Hai scelto “%Choice%”: non ci siamo, le scelte sono A, B o Q. Vedi sopra.
ECHO.

GOTO Loop

:ItemA
set varip=indirizzo.ip.da.assegnare
set varsm=subnet.mask
set vargw=indirizzo.ip.del.gateway
set vardns1=indirizzo.ip.del.dns.primario
set vardns2=indirizzo.ip.del.dns.secondario

ECHO Sto configurando IP e Subnet Mask
netsh int ip set address name = “Connessione alla rete locale” source = static addr = %varip% mask = %varsm%

ECHO Sto configurando il Gateway
netsh int ip set address name = “Connessione alla rete locale” gateway = %vargw% gwmetric = 1

ECHO Sto configurando il Primary DNS
netsh int ip set dns name = “Connessione alla rete locale” source = static addr = %vardns1%

ECHO Sto configurando il Secondary DNS
netsh int ip add dns name = “Connessione alla rete locale” addr = %vardns2%

GOTO Again

:ItemB
ECHO Sto configurando la rete via DHCP
netsh int ip set address name = “Connessione alla rete locale” source = dhcp
netsh int ip set dns name = “Connessione alla rete locale” source = dhcp
GOTO Again

:Again
PAUSE
CLS
GOTO Loop
:End

Annunci

Rispondi

Inserisci i tuoi dati qui sotto o clicca su un'icona per effettuare l'accesso:

Logo WordPress.com

Stai commentando usando il tuo account WordPress.com. Chiudi sessione / Modifica )

Foto Twitter

Stai commentando usando il tuo account Twitter. Chiudi sessione / Modifica )

Foto di Facebook

Stai commentando usando il tuo account Facebook. Chiudi sessione / Modifica )

Google+ photo

Stai commentando usando il tuo account Google+. Chiudi sessione / Modifica )

Connessione a %s...

%d blogger hanno fatto clic su Mi Piace per questo: