Come assegnare ip statico a Raspberry pi con Ubuntu Server 21.10

All’interno della rete Lan domestica gli ip, generalmente, vengono assegnati in modo automatico ad ogni device tramite il servizio DHCP – Dynamic Host Configuration Protocol.

Gli ip se settati in modo dinamico possono cambiare continuamente ad ogni riavvio. Per questo motivo è utile assegnare un ip statico ad un device, quando vogliamo configurare un server od un servizio.

Nell’esempio andremo a modificare l’ip, da dinamico a statico, per raggiungere in qualsiasi momento il servizio Nextcloud attivo sulla nostra Raspberry pi 4.

Per prima cosa ci colleghiamo alla Raspberry pi 4 da remoto.

Successivamente verifichiamo le impostazioni di rete in esecuzione sul nostro device digitando:

ip addr

risultato comando ip address

Nell’immagine sono presenti tre interfacce:

  1. lo: è l’indirizzo di loopback
  2. eth0: connessione Lan
  3. wlan0: connessione wifi

In base alla connessione con la quale abbiamo realizzato con la Raspberry pi 4, leggeremo le informazioni del punto due o tre.

Nel nostro esempio siamo connessi con il cavo lan per cui guardiamo il dettaglio del punto due eth0.

L’indirizzo ip dinamico è 192.168.1.42

L’idea è di impostare l’ip statico per visualizzare il servizio Nextcloud all’interno della nostra rete Lan con un indirizzo libero ossia 192.168.1.50. In questo modo quando vogliamo collegarci a NextCloud sappiamo di dover digitare sempre l’indirizzo 192.168.1.50.

Il vantaggio di questa operazione è di non dover cercare ad ogni riavvio della Raspberry l’indirizzo ip che il servizio DHCP gli assegnerà. Per questo motivo il nostro indirizzo ip rimarrà sempre lo stesso.

Creiamo adesso un file di configurazione che andrà a sostituire il file attuale.

Per farlo digitiamo:

sudo vi /etc/netplan/50-my-init.yaml

Una volta entrato nell’editor, il file sarà ovviamente vuoto. Digitare i per iniziare ad inserire il testo ed Esc della tastiera quando avete terminato, infine per uscire e salvare digitare :wq che significa w = write e q = quit ovvero salva ed esci.

In questo esempio (immagine precedente) vediamo che stiamo configurando l’interfaccia di rete eth0.

Addresses conterrà l’indirizzo ip che abbiamo scelto.

Gateway è il router

Addresses all’ultima riga si ripete l’indirizzo ip statico e il relativo dns che nell’esempio è stato demandato al gateway. Possiamo scegliere anche i dns di google 8.8.8.8 oppure 8.8.4.4 o qualsiasi altro di vostra preferenza.

Una volta salvato il file, sarà necessario lanciare il comando che consentirà di rendere questa configurazione la predefinita.

Il file di configurazione precedente è consigliabile non eliminarlo ma avere sempre una copia nel server per cui lo rinominiamo in _old lanciamo quindi il comando:
mv 10-rpi-ethernet-eth0.yaml 10-rpi-ethernet-eth0.yaml_old

Nel nostro esempio il file creato ha il nome 50-my-init.yaml_old per cui prima di applicare dovremmo rinominare anche il file creato in 50-my-init.yaml come si vede dall’immagine in basso:

Se tutti i comandi saranno svolti in modo corretto ci troveremo un questa situazione:

Adesso rendiamo la configurazione predefinita 50-my-init.yaml digitando il seguente comando: sudo netplan apply
netplan apply
Controlliamo adesso la configurazione per verificare la correttezza dei dati. Digitiamo:

ip addr

Come si vede dall’immagine precedente l’indirizzo è stato settato a 192.168.1.50 come volevamo.

Per essere certi che la modifica sia di tipo permanente possiamo riavviare il device e verificare nuovamente l’indirizzo ip se resta immutato.

Per riavviare il dispositivo vi ricordo che il comando è il seguente:

sudo reboot