Raspberry Pi cambiare IP (e linux)
Sommario:
- Come utilizzare il comando ip
- Visualizzazione e modifica degli indirizzi IP
- Visualizza informazioni su tutti gli indirizzi IP
- Visualizza informazioni su una singola interfaccia di rete
- Assegnare indirizzi IP a un'interfaccia
- Assegna più indirizzi IP alla stessa interfaccia
- Rimuovi / Elimina un indirizzo IP dall'interfaccia
- Visualizzazione e modifica delle interfacce di rete
- Visualizza informazioni sulle interfacce di rete
- Modifica lo stato dell'interfaccia SU / GIÙ
- Visualizzazione e modifica della tabella di routing
- Visualizza la tabella di routing
- Aggiungi una nuova rotta
- Elimina un percorso
- Conclusione
Il comando
ip
è un potente strumento per la configurazione di interfacce di rete che qualsiasi amministratore di sistema Linux dovrebbe conoscere. Può essere utilizzato per attivare o disattivare le interfacce, assegnare e rimuovere indirizzi e route per gestire la cache ARP e molto altro.
In questo tutorial, ti mostreremo come utilizzare il comando
ip
attraverso esempi pratici e spiegazioni dettagliate delle opzioni più comuni.
Come utilizzare il comando ip
L'utilità
ip
fa parte del pacchetto iproute2 installato su tutte le moderne distribuzioni Linux.
La sintassi per il comando
ip
è la seguente:
ip OBJECT COMMAND
OBJECT è il tipo di oggetto che si desidera gestire. Gli oggetti (o sottocomandi) utilizzati più frequentemente sono:
-
link
(l
) - Visualizza e modifica le interfacce di rete.address
(a
) - Visualizza e modifica gli indirizzi IP.route
(r
) - Visualizza e modifica la tabella di routing.neigh
(n
) - Visualizza e manipola oggetti vicini (tabella ARP).
L'oggetto può essere scritto in forma completa o abbreviata (breve). Per visualizzare un elenco di comandi e argomenti per ciascun tipo di oggetto,
ip OBJECT help
. ogni sottocomando
Quando si configurano le interfacce di rete, è necessario eseguire i comandi come root o utente con privilegi sudo. Altrimenti il comando stamperà
RTNETLINK answers: Operation not permitted
Le configurazioni impostate con il comando
ip
non sono persistenti. Dopo il riavvio del sistema, tutte le modifiche vengono perse. Per impostazioni permanenti, è necessario modificare i file di configurazione specifici della distro o aggiungere i comandi a uno script di avvio.
Visualizzazione e modifica degli indirizzi IP
Quando si opera con l'oggetto
addr
, i comandi assumono la seguente forma:
ip addr ADDRESS dev IFNAME
I COMANDI più utilizzati dell'oggetto
addr
sono:
show
,
add
e
del
.
Visualizza informazioni su tutti gli indirizzi IP
Per visualizzare un elenco di tutte le interfacce di rete e l'indirizzo IP associato digitare il comando seguente:
ip addr show
L'output sarà simile al seguente:
1: lo: mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000 link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 inet 127.0.0.1/8 scope host lo valid_lft forever preferred_lft forever 2: eth0: mtu 1500 qdisc fq_codel state UP group default qlen 1000 link/ether 52:54:00:8c:62:44 brd ff:ff:ff:ff:ff:ff inet 192.168.121.241/24 brd 192.168.121.255 scope global dynamic eth0 valid_lft 2900sec preferred_lft 2900sec inet6 fe80::5054:ff:fe8c:6244/64 scope link valid_lft forever preferred_lft forever
1: lo: mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000 link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 inet 127.0.0.1/8 scope host lo valid_lft forever preferred_lft forever 2: eth0: mtu 1500 qdisc fq_codel state UP group default qlen 1000 link/ether 52:54:00:8c:62:44 brd ff:ff:ff:ff:ff:ff inet 192.168.121.241/24 brd 192.168.121.255 scope global dynamic eth0 valid_lft 2900sec preferred_lft 2900sec inet6 fe80::5054:ff:fe8c:6244/64 scope link valid_lft forever preferred_lft forever
1: lo: mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000 link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 inet 127.0.0.1/8 scope host lo valid_lft forever preferred_lft forever 2: eth0: mtu 1500 qdisc fq_codel state UP group default qlen 1000 link/ether 52:54:00:8c:62:44 brd ff:ff:ff:ff:ff:ff inet 192.168.121.241/24 brd 192.168.121.255 scope global dynamic eth0 valid_lft 2900sec preferred_lft 2900sec inet6 fe80::5054:ff:fe8c:6244/64 scope link valid_lft forever preferred_lft forever
Otterrai lo stesso output se digiti ometti il comando
show
e digita:
ip addr
.
Visualizza informazioni su una singola interfaccia di rete
Per ottenere informazioni su una specifica interfaccia di rete, utilizzare
ip addr show dev
seguito dal nome del dispositivo. Ad esempio, per eseguire una query su
eth0
, digitare:
Assegnare indirizzi IP a un'interfaccia
Per assegnare un indirizzo IP a un'interfaccia, utilizzare la sintassi seguente:
ip addr add ADDRESS dev IFNAME
Dove
IFNAME
è il nome dell'interfaccia e
ADDRESS
è l'indirizzo IP che si desidera assegnare all'interfaccia.
Per aggiungere l'indirizzo
192.168.121.45
con netmask 24 al dispositivo
eth0
, digitare:
sudo ip address add 192.168.121.45/24 dev eth0
In caso di successo, il comando non mostrerà alcun output. Se l'interfaccia non esiste, otterrai
Cannot find device "eth0"
.
Assegna più indirizzi IP alla stessa interfaccia
Con
ip
, puoi assegnare più indirizzi alla stessa interfaccia. Per esempio:
sudo ip address add 192.168.121.241/24 dev eth0
sudo ip address add 192.168.121.45/24 dev eth0
Per confermare che gli IP sono assegnati digitare
ip -4 addr show dev eth0
o
ip -4 a show dev eth0
:
2: eth0: mtu 1500 qdisc fq_codel state UP group default qlen 1000 inet 192.168.121.241/24 brd 192.168.121.255 scope global dynamic eth0 valid_lft 3515sec preferred_lft 3515sec inet 192.168.121.45/24 scope global secondary eth0 valid_lft forever preferred_lft forever
2: eth0: mtu 1500 qdisc fq_codel state UP group default qlen 1000 inet 192.168.121.241/24 brd 192.168.121.255 scope global dynamic eth0 valid_lft 3515sec preferred_lft 3515sec inet 192.168.121.45/24 scope global secondary eth0 valid_lft forever preferred_lft forever
Rimuovi / Elimina un indirizzo IP dall'interfaccia
La sintassi per rimuovere un indirizzo IP da un'interfaccia è la seguente:
ip addr dev ADDRESS dev IFNAME
IFNAME è il nome dell'interfaccia e ADDRESS è l'indirizzo IP che si desidera rimuovere dall'interfaccia.
Per rimuovere l'indirizzo
192.168.121.45/24
dal dispositivo eth0 digitare:
sudo ip address del 192.168.121.45/24 dev eth0
Visualizzazione e modifica delle interfacce di rete
Per gestire e visualizzare lo stato delle interfacce di rete, utilizzare l'oggetto
link
.
I comandi più comunemente usati quando si lavora con gli oggetti
link
sono:
show
,
set
,
add
e
del
.
Visualizza informazioni sulle interfacce di rete
Per visualizzare un elenco di tutte le interfacce di rete, digitare il comando seguente:
ip link show
1: lo: mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1000 link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 2: eth0: mtu 1500 qdisc fq_codel state UP mode DEFAULT group default qlen 1000 link/ether 52:54:00:8c:62:44 brd ff:ff:ff:ff:ff:ff
1: lo: mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1000 link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 2: eth0: mtu 1500 qdisc fq_codel state UP mode DEFAULT group default qlen 1000 link/ether 52:54:00:8c:62:44 brd ff:ff:ff:ff:ff:ff
1: lo: mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1000 link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 2: eth0: mtu 1500 qdisc fq_codel state UP mode DEFAULT group default qlen 1000 link/ether 52:54:00:8c:62:44 brd ff:ff:ff:ff:ff:ff
A differenza di
ip addr show
,
ip link show
non stamperà informazioni sugli indirizzi IP associati al dispositivo.
Per ottenere informazioni su una specifica interfaccia di rete, utilizzare
ip link show dev
seguito dal nome del dispositivo. Ad esempio, per eseguire una query su
eth0
digitare:
ip link show dev eth0
2: eth0: mtu 1500 qdisc fq_codel state UP mode DEFAULT group default qlen 1000 link/ether 52:54:00:8c:62:44 brd ff:ff:ff:ff:ff:ff
2: eth0: mtu 1500 qdisc fq_codel state UP mode DEFAULT group default qlen 1000 link/ether 52:54:00:8c:62:44 brd ff:ff:ff:ff:ff:ff
Modifica lo stato dell'interfaccia SU / GIÙ
Per attivare o disattivare le interfacce, utilizzare il
ip link set dev
seguito dal nome del dispositivo e dallo stato desiderato:
ip link set dev {DEVICE} up
Ad esempio, per portare l'interfaccia
eth0
online, digitare:
ip link set eth0 up
E da portare se offline
Visualizzazione e modifica della tabella di routing
Per assegnare, rimuovere e visualizzare la tabella di routing del kernel utilizzare l'oggetto
route
. I comandi più comunemente usati quando si lavora con gli oggetti route sono:
list
,
add
e
del
.
Visualizza la tabella di routing
Per ottenere un elenco delle voci della route del kernel, utilizzare uno dei seguenti comandi:
ip route ip route list ip route list SELECTOR
Se usato senza un
SELECTOR
il comando elencherà tutte le voci della rotta nel kernel:
ip route list
default via 192.168.121.1 dev eth0 proto dhcp src 192.168.121.241 metric 100 192.168.121.0/24 dev eth0 proto kernel scope link src 192.168.121.241 192.168.121.1 dev eth0 proto dhcp scope link src 192.168.121.241 metric 100
Per visualizzare solo il routing per una rete specifica, ad esempio
172.17.0.0/16
digitare:
ip r list 172.17.0.0/16
172.17.0.0/16 dev docker0 proto kernel scope link src 172.17.0.1 linkdown
Aggiungi una nuova rotta
Per aggiungere una nuova voce alla tabella di routing, utilizzare il comando
route add
seguito dal nome della rete o del dispositivo.
Aggiungi un percorso a 192.168.121.0/24 tramite il gateway a 192.168.121.1
ip route add 192.168.121.0/24 via 192.168.121.1
Aggiungi un percorso a 192.168.121.0/24 che può essere raggiunto sul dispositivo eth0.
ip route add 192.168.121.0/24 dev eth0
Per aggiungere un percorso predefinito, utilizzare la parola chiave
default
. Il comando seguente aggiungerà una route predefinita tramite il gateway locale
192.168.121.1
che è possibile raggiungere sul dispositivo
eth0
.
ip route add default via 192.168.121.1 dev eth0
Elimina un percorso
Per eliminare una voce dalla tabella di routing, utilizzare il comando
route add
, La sintassi per eliminare una route è la stessa di quando si aggiunge.
Il seguente comando eliminerà la route predefinita:
ip route del default
Elimina un percorso per 192.168.121.0/24 tramite il gateway in 192.168.121.1
ip route add 192.168.121.0/24 via 192.168.121.1
Conclusione
Ormai dovresti avere una buona conoscenza di come usare il comando
ip
Linux. Per ulteriori informazioni sulle altre opzioni
ip
visitare la pagina man del comando ip o digitare
man ip
nel proprio terminale.
Comando Eco in Linux con esempi

Il comando echo è uno dei comandi più basilari e usati di frequente in Linux. Gli argomenti passati a echo vengono stampati sull'output standard.
Comando Curl in Linux con esempi

Curl è un'utilità della riga di comando per il trasferimento di dati da o verso un server progettato per funzionare senza l'interazione dell'utente. In questo tutorial, ti mostreremo come utilizzare lo strumento arricciatura attraverso esempi pratici e spiegazioni dettagliate delle opzioni di arricciatura più comuni.
Comando di taglio Linux con esempi

Cut è un'utilità della riga di comando che consente di tagliare parti di linee da file specificati o dati di piping e stampare il risultato sull'output standard. In questo tutorial, ti mostreremo come utilizzare il comando di taglio di Linux attraverso esempi pratici e spiegazioni dettagliate delle opzioni di taglio più comuni.