
Il comando IP fa parte del pacchetto iproute installato per impostazione predefinita nelle distribuzioni Modern Linux. In Linux, il comando IP viene utilizzato per gestire e visualizzare le interfacce di rete, gli indirizzi IP, la tabella di routing IP e le voci IP adiacenti. Viene comunemente utilizzato per assegnare un indirizzo IP a un'interfaccia di rete e configurare le impostazioni dell'interfaccia di rete.
In questo tutorial impareremo il comando IP Linux con esempi di utilizzo.
Come usare il comando IP di Linux
Quella che segue è la sintassi del comando IP.
$ ip [ OPTIONS ] OBJECT { COMMAND | help }
$ ip help

OGGETTO è il tipo di oggetto che vuoi gestire che include:
- link (l):Visualizza e modifica le interfacce di rete.
- indirizzo (a):Visualizza e modifica gli indirizzi IP.
- route (r):Visualizza e altera la tabella di routing.
- neigh (n):Visualizza e modifica la tabella ARP.
È possibile utilizzare la forma completa o abbreviata per eseguire il comando. Ad esempio, utilizzando ip addr
o ip address
visualizzerà lo stesso output.
1. Visualizza e gestisci gli indirizzi IP
Il comando ip addr consente di mostrare, assegnare, eliminare l'indirizzo IP in un sistema Linux. L'oggetto ip addr utilizza la seguente sintassi.
ip addr [ COMMAND ] ADDRESS dev IFNAME
Utilizzare il comando di aiuto per ulteriori informazioni sui comandi di indirizzo.
ip addr help

Visualizza un elenco di tutte le interfacce di rete
L'ip addr mostra l'elenco dei comandi di tutte le interfacce di rete e gli indirizzi IP assegnati.
Ad esempio:
ip addr show

Per visualizzare l'output solo per IPv4 o IPv6, utilizzare il comando seguente.
To display IPv4 ip addressip -4 addr
To display IPv6 ip addressip -6 addr
Visualizza informazioni su un'interfaccia di rete specifica
Per visualizzare le informazioni su un'interfaccia specifica, utilizza la seguente sintassi.
ip addr show dev [Device Name]
Ad esempio, per visualizzare informazioni su ens33, digitare quanto segue.
ip addr show dev ens33

Assegna un indirizzo IP a un'interfaccia
Usa il comando ip addr add per assegnare un indirizzo IP a un'interfaccia.
Sintassi:
ip addr add [ ADDRESS ] dev [Interface Name]
[INDIRIZZO] è l'indirizzo che si desidera assegnare al [Nome interfaccia].
Ad esempio, per aggiungere l'indirizzo 192.168.239.140 con subnet mask 24 al dispositivo ens33:
ip addr add 192.168.239.140/24 dev ens33
Non viene visualizzato alcun output se l'indirizzo IP viene aggiunto al dispositivo o viene visualizzato un errore.
Aggiungi più indirizzi IP a un'interfaccia
Per aggiungere più indirizzi IP a un'interfaccia, è necessario utilizzare più volte lo stesso comando di cui sopra.
Ad esempio, per aggiungere gli indirizzi 192.168.239.140 e 192.168.239.135 con subnet mask 24 al dispositivo ens33, digitare quanto segue.
ip addr add 192.168.239.140/24 dev ens33
ip addr add 192.168.239.135/24 dev ens33
Elimina l'indirizzo IP da un'interfaccia
Per eliminare un indirizzo IP da un'interfaccia, utilizzare la seguente sintassi.
ip addr del [ ADDRESS ] dev [ Interface Name ]
Ad esempio, per eliminare l'indirizzo 192.168.30.12 con subnet mask 24 dal dispositivo ens33, digitare quanto segue.
ip addr del 192.168.239.140/24 dev ens33
Non viene visualizzato alcun output se l'indirizzo IP viene eliminato dal dispositivo o viene visualizzato un errore.
2. Visualizza e gestisci le interfacce di rete
Il comando ip link viene utilizzato per gestire e mostrare lo stato di tutte le interfacce di rete. È possibile impostare i valori dell'interfaccia di rete dello stack TCP/IP come txqueuelen, interfaccia su/giù e MTU. Possiamo usare ip link set
comando per questo.
Per visualizzare un elenco di comandi dell'oggetto collegamento, è possibile utilizzare il comando della guida come segue.
$ ip link help

Ottieni informazioni sull'interfaccia di rete
Il comando ip link mostra le informazioni di visualizzazione per tutte le interfacce di rete.
$ ip link show

Per visualizzare le informazioni su un dispositivo specifico, utilizzare la seguente sintassi.
$ ip link show dev [Device Name]
Ad esempio, per visualizzare le informazioni di rete su ens33 dovresti usare quanto segue.
$ ip link show dev ens33

Imposta lo stato dell'interfaccia su SU o GIÙ
Per impostare l'interfaccia su o giù, utilizzare la seguente sintassi.
ip link set dev [ Device Name ] [ up/down ]
Ad esempio, per portare ens33 online, utilizzare il comando seguente.
ip link set dev ens33 up
Non viene visualizzato alcun output se il dispositivo è acceso o viene visualizzato un errore.
Allo stesso modo, per ridurre ens33, utilizzare il comando seguente.
ip link set dev ens33 down
Non viene visualizzato alcun output se il dispositivo viene spento o viene visualizzato un errore.
Cambia txqueuelen del dispositivo
Per modificare la coda di trasmissione di un dispositivo, utilizzare la seguente sintassi.
ip link set txqueuelen [ Number ] dev [ Interface Name ]
Ad esempio, per impostare la coda di trasmissione 5 del dispositivo ens33, utilizzare il comando seguente.
ip link set txqueuelen 5 dev ens33
Non viene visualizzato alcun output se la coda di trasmissione è impostata o viene visualizzato un errore.
Cambia MTU
Per modificare l'MTU (Maximum Transmit Unit), utilizzare la seguente sintassi.
ip link set mtu [ Number ] dev [ Interface Name ]
Ad esempio, impostare l'MTU del dispositivo ens33 su 1400, utilizzare il comando seguente.
ip link set mtu 1400 dev ens33
Non viene visualizzato alcun output se l'MTU viene modificato o viene visualizzato un errore se il nome del dispositivo non esiste o se l'MTU è impostato a un valore inferiore al minimo del dispositivo.
Cambia indirizzo MAC
Per modificare l'indirizzo MAC di un dispositivo, utilizzare la seguente sintassi.
ip link set dev [ Device Name ] address [ MAC ADDRESS ]
Elimina interfaccia virtuale
È possibile utilizzare il comando ip link delete per eliminare l'interfaccia virtuale. Ad esempio
ip link delete vip
Questo cancellerà l'interfaccia virtuale denominata vip.
Aggiungi bridge e interfaccia virtuale
L'aggiunta del collegamento ip consente di aggiungere bridge, macchina virtuale e vlan.
Sintassi:
ip link add [ link DEVICE ] type TYPE [ ARGS ]
TYPE := [ bridge | can | dummy | ifb | ipoib | macvlan | vcan | veth | vlan | vxlan |
ip6tnl | ipip | sit | gre | gretap | ip6gre | ip6gretap ]
Ad esempio:
ip link add br0 type bridge
Questo crea un ponte chiamato br0.
3. Visualizza e gestisci la tabella di routing IP
L'oggetto route viene utilizzato per visualizzare e gestire la tabella di routing IP.
Per visualizzare un elenco di comandi di instradamento IP, utilizzare il comando di aiuto come segue.
ip route help

Mostra tabella di instradamento
Per ottenere un elenco di tutte le voci di percorso, utilizzare uno qualsiasi dei seguenti comandi.
ip route
ip route list

L'output visualizzato sopra è tutte le voci di percorso nel kernel. Per restringere il campo, aggiungi l'oggetto SELECTOR come segue.
ip route list SELECTOR
Per visualizzare il routing per una rete specifica, utilizzare la seguente sintassi.
ip route list [ IP ADDRESS ]
Aggiungi un nuovo percorso
Per aggiungere una nuova route alla tabella di routing, utilizzare la seguente sintassi.
ip route add [ IP ADDRESS ] dev [ Interface Name ]
È possibile aggiungere un nuovo percorso tramite il gateway utilizzando la seguente sintassi.
ip route add [ IP ADDRESS ] via [ Gateway ]
Ad esempio, per aggiungere una nuova route 192.168.239.0/24 tramite il gateway 192.168.239.1, utilizzare il comando seguente.
ip route add 132.168.239.0/24 via 192.168.239.1
Elimina un percorso
Per eliminare una voce esistente nella tabella di routing, utilizzare la seguente sintassi.
ip route del [ IP ADDRESS ]
Per eliminare il percorso predefinito, utilizzare il comando seguente.
ip route del default
È possibile eliminare un percorso tramite il gateway utilizzando la seguente sintassi.
ip route del [ IP ADDRESS ] dev [ Interface Name ]
4. Visualizza e modifica le voci IP adiacenti
Per visualizzare e modificare le voci IP Neighbor, viene utilizzato un oggetto Neighbor. Per visualizzare un elenco di tutti i comandi vicini, utilizzare il comando di aiuto come segue.
ip neigh help

Visualizza la cache neighbor/arp
Per visualizzare una cache neighbor/arp, utilizzare il comando seguente.
ip neigh show

Aggiungi una voce ARP
Per aggiungere una voce ARP, utilizzare la seguente sintassi.
ip neigh add [ IP ADDRESS ] dev [ Interface Name ]
Ad esempio, per aggiungere 192.168.239.140 al dispositivo ens33, utilizzare il comando seguente.
ip neigh add 192.168.239.140 dev ens33
Elimina una voce ARP
Per aggiungere una voce ARP, utilizzare la seguente sintassi.
ip neigh del [ IP ADDRESS ] dev [ Interface Name ]
Ad esempio, per eliminare 192.168.239.140 dal dispositivo ens33, utilizzare il comando seguente.
ip neigh del 192.168.239.140 dev ens33
Svuota voce ARP
Il comando flush o f svuota la voce ARP. Per svuotare una voce ARP, utilizzare la seguente sintassi.
ip -s -s n flush [ IP ADDRESS ]
Ad esempio, per svuotare la voce arp per 192.168.239.140, utilizzare il comando seguente.
ip -s -s n flush 192.168.239.140
Conclusione
In questo tutorial, abbiamo trattato il comando IP di Linux con i suoi esempi di utilizzo. Per ulteriori informazioni, puoi trovare la pagina di manuale di ip command.
Grazie per la lettura, per favore fornisci il tuo feedback e suggerimenti.