Netsh E’ un comando della shell che funziona sia in modalità interattiva che batch e permette di gestire tutte le impostazioni del networking di Windows.
Vediamo come utilizzare questo utile comando per automatizzare il cambio di indirizzo IP della scheda di rete.
Supponiamo di avere un portatile che debba lavorare in due diversi ambienti: in uno l’indirizzo IP viene servito da un server DHCP, quindi le impostazioni devono essere “Ottieni indirizzo IP automaticamente”, nell’altro ambiente di rete è necessario impostare tutti i parametri dell’IP in modo statico. Nesth ci viene in aiuto: è possibile creare due files batch per attivare le modifiche con un semplice doppio click.
Lanciamo un prompt dei comandi e come prima cosa procuriamoci il nome dell’interfaccia di rete, tramite il comando netsh interface show interface. Nella colonna Nome interfaccia identifichiamo il valore che ci serve, supponiamo che sia “Connessione alla rete locale (LAN)”.
Adesso creiamo un file dhcp.bat con il seguente contenuto:
netsh interface ip set address name="Connessione alla rete locale (LAN)" source=dhcp
netsh interface ip set dns name="Connessione alla rete locale (LAN)" source=dhcp
netsh set wins name="Connessione alla rete locale (LAN)" source=dhcp
(Vanno scritti su tre righe solamente)
L’ultima riga serve solo se la rete usa un servizio WINS.
Creiamo anche un file ip_statico.bat con:
netsh interface ip set address name="Connessione alla rete locale (LAN)" source=static addr=a.a.a.a mask=b.b.b.b gateway=c.c.c.c gwmetric=0
netsh interface ip set dns "Connessione alla rete locale (LAN)" static d.d.d.d Primary
netsh add dns "Connessione alla rete locale (LAN)" addr=e.e.e.e index=2
(Anche questi vanno scritti su tre sole righe)
dove:
a.a.a.a = indirizzo IP statico da assegnare
b.b.b.b = subnet mask
c.c.c.c = indirizzo del gateway
d.d.d.d = indirizzo del DNS primario
e.e.e.e = indirizzo del DNS secondario (se avete solo il primario, omettete questa riga)
A questo punto basta lanciare il .bat con la configurazione desiderata per cambiare al volo la configurazione della rete.
Tags: TCP/IP, TecnicaRelated posts
Print This Post
51 Commenti
Scrivi un commento
Additional comments powered by BackType

xlthlx — Il 19/09/2005 alle 07:34
comodissimo, grazie di averne parlato
Tambu — Il 19/09/2005 alle 08:17
bene. mi sono appena comprato il portatile e devo attaccarlo a 3 reti… ho installato un programma carrozzone per fare sto lavoro, che però mi fa già schifo, ma questo cambia tutto
silentman.it — Il 19/09/2005 alle 08:41
non si finisce mai di imparare!
CyberGigi — Il 19/09/2005 alle 14:00
Davvero utilissimo questo articolo.
Ad un mio amico che non sapeva come fare, gli insegnai a cambiare manualmente le impostazioni.
yellowpeppers — Il 19/09/2005 alle 16:02
oh.. e io che quasi pensavo fosse una leggenda metropolitana!!! GRAZIE
)
ono-sendai — Il 19/09/2005 alle 21:04
esite un modo ugualmente “easy” per cambiare al volo il grupo di lavoro?
bob — Il 19/09/2005 alle 23:15
te lo detto
sei un informatico illuminista
senza mezze misure
cose della prima enciclopedia
un amichevole fai da te
Carlo — Il 27/09/2005 alle 15:12
veramente un comando utile.
Gestire un portatile in 5 uffici è risultato molto più semplice… un doppio click e sono a posto!
Perfetto!
mario — Il 01/10/2005 alle 13:27
poichè ho la linea adsl con libero con um modem router mi da sempre lo stesso indirizzo IP e cioè 10.0.0.2 ma nn riesco a giocare in rete con un mio amico lui riesce a connettersi mentre io no ( il suo IP pur avendo la mia stessa linea ADSL ma con meodm diverso nn è come l’ho io) infine vorrei sapere come fare per cambiare il mio IP grazie mille
Andrea — Il 01/10/2005 alle 18:06
Mario: eeeeeh?
Panfilo — Il 06/10/2005 alle 17:13
Forse la tecnica che faccio seguire potrebbe essere equivalente ma per chi ha poca voglia di scrivere come me
risulta essere più veloce.
Dopo avere configurato le poprietà del Protocollo Internet di Windows, aprire la finestra dei comandi DOS e digitare il comando:
>netsh -c interface dump>configurazione_IP.txt
tale comando crea un file configurazione.txt nella cartella indicata nel percorso dei comandi DOS. In tale fle vi sono tutte le info di configurazione IP (indirizzo IP, Netmask, Default Gateway, DNS e Wins). Ogni qual volta si vogliono caricare si può digitare il seguente comando
>netsh -f configurazione_IP.txt
Salùt!
Simone — Il 12/10/2005 alle 16:04
Ottima chicca. Volevo sapere anche un’altra cosa: sempre con un file .bat è possibile configurare i parametri per la connessione internet attraverso la Lan? (server proxy, scrip di configurazione automatica, rileva automaticamente impostazioni, ecc…) Grazie in anticipo. Simone.
Andrea — Il 12/10/2005 alle 23:05
Simone: tramite netsh puoi fare di tutto e di più.
Simone — Il 13/10/2005 alle 10:53
E quali righe di comando dovrei utilizzare?
Andrea — Il 13/10/2005 alle 11:32
Simone:
http://www.google.it/search?q=netsh+site%3Amicrosoft.com
Simone — Il 13/10/2005 alle 12:43
Ci ho già smanettato sopra a quel sito… Ma nn riesco a trovare nulla!
Simone — Il 18/10/2005 alle 08:50
Pronto???
andrea — Il 28/10/2005 alle 16:38
Prima di tutto grazie per i tuoi sempre ottimi e preziosi
consigli, penso che nella procedura ip_statico.bat la riga giusta per il dns secondario sia:
netsh interface ip add dns “Connessione alla rete locale (LAN)” e.e.e.e index=2
.:: Maurizio Pelizzone ::. » Blog Archive » NetSetMan 2.1 — Il 29/10/2005 alle 10:36
[...] Per risolvere questo problema il buon Andrea Beggi aveva pubblicato un howto che facendo uso di netsh permetteva il salvataggio ed il ripristino delle configurazioni tramite file di testo, ma per la mia pigrizia era ancora troppo macchinoso. [...]
riccardo — Il 03/11/2005 alle 09:25
io ho il problema di gestire due IP su una stessa macchina…ma creando il file .bat l’utente (che come tale non ha gli stessi diritti dell’amministratore) non riesce a cambiare gli indirizzi IP.
Naturalmente provando lato admin il tutto funziona regolarmente…
potresti aiutarmi a risolvere il mio problema?
grazie
Andrea — Il 03/11/2005 alle 10:58
Riccardo: gli utenti non amministratori non hanno i privilegi sufficienti per modificare le impostazioni della scheda di rete. Ed è un bene. E’ così “by design”, non ci puoi fare molto, a meno di non modificare i permessi.
Matteo — Il 09/11/2005 alle 13:12
Ciao a tutti,
il mio problema è: si può riuscire ad utilizzare il comando netsh non conoscendo “interface ip set address name”?
Ciao e grazie
Dome — Il 18/11/2005 alle 14:35
Argomento molto interessante, se posso propongo una curiosità .
scenario due reti:
(rete A)scheda di rete con ip fisso classe IP C 192.168.x.y
(rete B)scheda di rete con ip dinamico classe IP A 10.1.x.y l’assegnazione è con DHCP.
E’ possibile nel momento in cui il sistema carica la configurazione di rete intercettare tale caricamento e scegliere la configurazione di rete opportuna?
Emanuele — Il 22/11/2005 alle 11:21
Ciao,ho letto la guida sulla netshell di windows abbastanza esaustiva ,…ma mi chiedevo se è possibile ottenere il nome della connessione utilizzata da un utente in remoto…anche perchè se un utente cambia il proprio nome della connessione non è più possibile applicare le modifiche alla scheda di rete tramite tale comando. Inoltre volevo sapere come posso andare a settare il proxy server di windows con tale comando o con un altro equivalente come proxycfg ad esempio…
Grazie mille!
Aspetterò con ansia notizie in merito,
A presto.
Andrea — Il 22/11/2005 alle 16:15
Emanuele, io non lo so. Prova con San Google.
Mau — Il 24/12/2005 alle 15:50
Ciao, di ringraziamenti te ne meriti una valigia. Passo al problema: ho un pc(A)con xp pro sempre connesso ad internet con connessione alice sul quale ho montato una scheda per connessioni wifi.In maniera esclusiva uso un portatile (B) con xp pro con cui navigo usando un getaway. Vorrei giocare con (B) in multiplayer ma ovviamente i pc dei miei amici non mi ‘vedono’ e con la maggioranza dei giochi io non ‘vedo’ loro. Assieme ad un amico abbiamo provato a smanettare con NAT ma con pochi risultati, potreste aiutarmi?
andrea — Il 10/01/2006 alle 10:24
ciao quondo faccio il file bath quando poi ritorno e avvio explorel non mi riconosce le nuove impostazioni come posso fare
Matteo — Il 25/01/2006 alle 12:55
Vorrei configurare con degli indirizzi la LAN e con altri (diversi) la scheda WIRELESS.E’ possbile?Grazie!!
Silvestro — Il 23/03/2006 alle 12:18
Un grazie di cuore ad Andrea Beggi, e a tutti quelli che hanno aggiunto commenti (Panfilo ad esempio)
ho utilizzato il comando netsh e lo trovo davvero fantastico!
continuate così
saluti
Silvestro
Salvatore — Il 24/03/2006 alle 10:11
GRAZIE !!!!!
Mi hai risolto un bel problema, visto che per lavoro devo spesso cambiare configurazione di rete.
marco — Il 01/06/2006 alle 16:09
sto configurando il portatile per poterlo utilizzare in diverse reti senza dover maneggiare le proprietà di rete.
sto testando le tue indicazioni preziosissime.
una correzione:
per cambiate il dns il comando corretto e’ :
netsh interface ip set dns “nome della connessione” static x.x.x.x primary
ciao e grazie per l’aiuto
marco
Eugenio — Il 14/07/2006 alle 11:26
Grazie,
davvero molto utile
Ciao
Carlomag — Il 31/07/2006 alle 08:41
Grazie; suggerimento utilissimo. Vado con il mio portatile presso aziende diverse e, prima, era una pizza dover sistemare manualmente le connessioni.
Ciao
PS: lo hanno già segnalato anche altri, ma la riga del dns secondario deve essere scritta un po’ diversamente (hai fatto 30, …)
Grazie di nuovo
alam — Il 23/08/2006 alle 18:00
very important about netsh and tcp/ip, thanks.
Fabio — Il 15/09/2006 alle 17:54
difatti mi dà un problema nell’aggiungere il dns secondario.
come si deve fare?
EmanueleDG — Il 21/09/2006 alle 17:26
W lo sviluppo del TCP/IP!
La riga di comando corretta per aggiornare il DNS secondario su Windows XP è:
netsh interface ip add dns NOMECONNESSIONE e.e.e.e index=2
EmanueleDG — Il 21/09/2006 alle 17:57
Ho creato un filetto batch di questo tipo, alcuni colleghi sono subito andati in tilt (!):
echo off
cls
cd\
cls
echo Programma di configurazione della scheda Wireless per l’ufficio di Roma.
echo —————————–
echo Le impostazioni di “Connessione alla rete senza fili” verranno modificate nel pannello di controllo.
pause
netsh interface ip set address name=”Connessione alla rete locale (LAN)” source=static addr=a.a.a.a mask=255.255.255.0 gateway=c.c.c.c
netsh interface ip set dns “Connessione alla rete locale (LAN)” static d.d.d.d Primary
netsh interface ip add dns “Connessione alla rete locale (LAN)” e.e.e.e index=2
pause
exit
ihihih
Dino — Il 25/09/2006 alle 15:00
Grazie mille, davvero utile e poi mi hai evitato una grossa “rogna” con qualcuno a me caro…
Comuque ti scrivo per dirti che una volta creato il file.bat con le indicazioni da te forniteci non riesco a caricare il DNS alternativo.
Sono ignorante perché non so bene a cosa serve visto che la rete funziona lo stesso però visto che c’era prima…sarà il caso di lasciarlo?
Franco — Il 13/10/2006 alle 15:46
Avendo due schede di rete vorrei poterne disabilitare una abilitando l’altra e viceversa con uno script. Hai qualche suggerimento? Grazie.
RobyWan — Il 05/02/2007 alle 10:17
Grande Grande Grande Grande Grande Grande Grande
maurizio bronzetti — Il 08/03/2007 alle 12:25
grazie per aver messo a disposizione queste specifiche mi hanno risolto un problema con un cliente.
Motley Crue — Il 19/03/2007 alle 21:35
Miticoooooooooooooooooooooooooooo !!!!!!!!!!
Thanks
Giovanni — Il 28/03/2007 alle 10:46
Ciao Andrea,
grazie prima di tutto per le valide indicazioni.
Io sto scrivendo un programmino che testa la presenza di una connessione di rete locale, quindi permette di ottenere un indirizzo IP mediante DHCP oppure mediante configurazione a manina dei valori, quindi perfettamente in linea con le indicazioni che dai.
Uso il “netsh interface show interface” sia per ottenere il nome della connessione di rete che per testarne lo stato di abilitazione, guardando il campo “Admin State” (corretto?), che normalmente vedo Enabled. Per fare una prova sul mio PC ho provato a disabilitare la Local Area Connection dal pannello “Network and Dial-up connections” per vedere se sarebbe cambiato qualcosa (fisicamente si’, ovviamente non vedo piu’ la connessione di rete ed internet), ma rilanciando il netsh interface show interface vedo sempre Enabled nell’Admin State della riga della Local Area Connection. Sai perchè? Sbaglio qualcosa?
Grazie mille
Giovanni
Andrea — Il 23/04/2007 alle 22:02
Un voto da uno a 10….30 e lode…grande
fabio — Il 09/05/2007 alle 10:27
netsh è veramente potente. con xp , dovendo gestire due connessioni diverse, una con dhcp e una statica è possibile lasciare la configurazione dhcp (ottieni automaticamente indirizzo) e settare i parametri statici dell’altra connessione nell’area configurazione manuale.
è abbastanza rudimentale e limitato ma tuttavia funziona
Emanuele — Il 10/05/2007 alle 23:19
Per chi non ha tanta dimestichezza con file batch e righe di comando consiglio questo programma NETSETMAN (http://www.netsetman.com/) che nella versione Freeware può configurare fino a 5 profili di rete.
Andrea — Il 04/07/2007 alle 14:35
Grande!!!
E’ possibile anche settare il DNS alternativo
graziano — Il 13/02/2008 alle 17:20
Ho trovato quello che avevo bisogno
spero di riuscire afarlo funzionare
quello descritto è proprio il mio caso
Grazie molte
Corrado — Il 17/04/2008 alle 13:27
Ciao a tutti, il comando netsh è veramente figo, tuttavia aggiungo un altro livello di dubbio: ho due linee hdsl, 1 per navigazione, 1 per backup.
Quando la linea di navigazione è giu’ (grazie Telecom…), sarebbe bellissimo poter lanciare da group policy di dominio uno script netsh per variare gli indirizzi dei client, tuttavia la variazione deve essere SOLO per il GATEWAY (ed evt. anche per i DNS), mentre gli indirizzi statici dovrebbero rimanere gli stessi….
Marco — Il 22/01/2009 alle 10:34
Ciao, è possibile lanciare netsh (o qualcosa d’altro) per vedere il gruppo (amministratori power user..) a cui appartiene l’utente attualmente in uso?
Grazie Marco
KLEIN — Il 12/05/2009 alle 09:39
Complimenti Andrea Beggi per i contenuti del tuo spazio web. A chi potesse essere utile volevo suggerire: http://www.milnersolutions.com/netprofiles/ consente di creare diversi profili di rete, ed è completamente freeware. Occorre installare il Framework .NET però…
saluti KLEIN