Windows: come cambiare IP tramite script

Ogni volta che dobbiamo cambiare indirizzo IP del proprio PC con Windows è davvero scocciante aprire le configurazioni della connessione di rete e impostare ogni volta tutti i parametri! Per semplificarci le vita creiamo 2 file eseguibili e con un click cambiamo le impostazioni di rete.

Supponiamo di voler configurare la scheda di rete per due scenari: rete domestica con indirizzo statico e rete aziendale gestita da un server DHCP.

Prima di iniziare, fate attenzione al nome che Windows assegna alla scheda di rete (visibile in 'Proprietà della rete') che usualmente è "Connessione alla rete locale". Io ho rinominato tale connessione in "Connessione alla rete locale (LAN)".




Creiamo un file chiamato IPCasa.bat

Con questo semplice script impostiamo IP, SubnetMask, Gateway, metrica e DNS server in modo statico:
@Echo On
Rem Configurazione della rete per uso domestico:
netsh interface ip set address "Connessione alla rete locale (LAN)" static 192.168.1.2 255.255.255.0 192.168.1.1 1
netsh interface ip add dns "Connessione alla rete locale (LAN)" 208.67.222.222
netsh interface ip add dns "Connessione alla rete locale (LAN)" 208.67.220.220

Benchè sia molto semplice lo script, esplicito il significato delle righe:
netsh interface ip set address "LAN" static 192.168.0.15 255.255.255.0 192.168.0.1 1
Nome connessione Configurazione statica Indirizzo IP SubNetMask Gateway predefinito Metrica
netsh interface ip add dns "Connessione alla rete locale (LAN)" 208.67.222.222
netsh interface ip add dns "Connessione alla rete locale (LAN)" 208.67.220.220
Aggiunta di un primo DNS ed aggiunta di un secondo DNS [gli indirizzi di DNS si riferiscono a quelli di OpenDNS.com]

Ora, invece, creiamo un file chiamato IPLavoro.bat

Adesso impostiamo IP, SubnetMask, Gateway, metrica e DNS server in modo dinamico in virtù della presenza di un server DHCP
@Echo On
Rem Configurazione della rete per ambito lavorativo:
netsh interface ip set address "LAN" dhcp
netsh interface ip set dns "LAN" dhcp
In questo caso il significato delle 2 (!!) righe di configurazione è elementare, in quanto definiamo che tutti i parametri della configurazione devono essere rilasciati da un DHCP.