È possibile utilizzare il comando ip per visualizzare lo stato di un'interfaccia, configurare le proprietà di rete o per eseguire il debug o l'ottimizzazione della rete. Il comando ip sostituisce ifconfig comando, che è deprecato. La sintassi dell'utilità ip segue:
# ip [OPTIONS] OBJECT {COMMAND | help}
Il comando ip fornisce una serie di OBJECT argomenti, come:
– link :dispositivo di rete
– indirizzo (o indirizzo) :indirizzo IPv4 o IPv6 su un dispositivo
– percorso :Voce della tabella di instradamento
Fornisce inoltre una serie di COMANDI per ogni OGGETTO, ad esempio:
– aggiungi, modifica, elimina, mostra, altro
Di seguito sono riportati alcuni degli esempi di comandi ip più comunemente usati in Linux.
Il sottocomando ip addr
1. Mostra la configurazione di rete corrente
Usa l'indirizzo IP oggetto per mostrare e gestire l'indirizzo IPv4 o IPv6 su un dispositivo. L'esempio seguente mostra lo stato IP di tutti i dispositivi attivi. Il comando mostra è l'impostazione predefinita.
# ip addr show
2. Assegna un indirizzo IPv4 a un'interfaccia di rete
L'esempio seguente usa l'argomento add per aggiungere l'indirizzo IPv4 172.31.29.90/20 all'interfaccia eth0. L'argomento show viene fornito in seguito per visualizzare il risultato. L'argomento show viene fornito in seguito per visualizzare il risultato. Questo esempio presuppone che all'interfaccia siano già assegnati 172.31.124.62/20.
# ip addr add 172.31.29.90/20 dev eth0
# ip addr show eth0 2: eth0: [BROADCAST,MULTICAST,UP,LOWER_UP] mtu 9001 qdisc pfifo_fast state UP qlen 1000 link/ether 06:e6:41:84:10:48 brd ff:ff:ff:ff:ff:ff inet 172.31.124.62/20 brd 172.31.127.255 scope global dynamic eth0 valid_lft 3311sec preferred_lft 3311sec inet 172.31.29.90/20 scope global eth0 valid_lft forever preferred_lft forever inet6 fe80::4e6:41ff:fe84:1048/64 scope link valid_lft forever preferred_lft forever
3. Elimina l'indirizzo IPv4 da un'interfaccia
Utilizzare l'argomento del per eliminare l'indirizzo IPv4. Esempio:
# ip addr del 172.31.29.90/20 dev eth0
# ip addr show eth0 2: eth0: [BROADCAST,MULTICAST,UP,LOWER_UP] mtu 9001 qdisc pfifo_fast state UP qlen 1000 link/ether 06:e6:41:84:10:48 brd ff:ff:ff:ff:ff:ff inet 172.31.124.62/20 brd 172.31.127.255 scope global dynamic eth0 valid_lft 3248sec preferred_lft 3248sec inet6 fe80::4e6:41ff:fe84:1048/64 scope link valid_lft forever preferred_lft forever
4. Svuota tutti gli indirizzi IPv4 assegnati a un'interfaccia
Utilizzare l'argomento flush per rimuovere tutti gli indirizzi IPv4 assegnati a un'interfaccia. Esempio:
# ip addr flush dev eth0Nota :tutte le impostazioni configurate per le interfacce di rete tramite IP non vengono mantenute durante i riavvii del sistema. Per rendere permanenti le modifiche, impostare le proprietà nel file /etc/sysconfig/network-scripts/ifcfg-[interface].
Il sottocomando ip link
Utilizzare l'oggetto ip link per mostrare e gestire lo stato dei dispositivi di interfaccia di rete sul sistema. Di seguito sono riportati alcuni degli usi comuni del sottocomando ip link.
1. Controlla lo stato dei dispositivi di rete
L'esempio seguente mostra lo stato di tutti i dispositivi attivi. L'argomento show è l'impostazione predefinita. Si noti che l'output è simile a quello del comando ip addr, ma senza le informazioni sull'indirizzo IP.
# ip link show
2. Su/Giù l'interfaccia di rete
Utilizzare l'argomento set per modificare gli attributi del dispositivo. Il rialzo e basso gli argomenti cambiano lo stato del dispositivo. L'esempio seguente riporta l'interfaccia eth0 verso il basso e quindi esegue il backup. L'argomento show mostra i risultati dell'argomento set.
# ip link set eth0 down
# ip link show eth0 2: eth0: [BROADCAST,MULTICAST] mtu 9001 qdisc pfifo_fast state DOWN mode DEFAULT qlen 1000
# ip link set eth0 up
# ip link show eth0 2: eth0: [BROADCAST,MULTICAST,UP,LOWER_UP] mtu 9001 qdisc pfifo_fast state UP mode DEFAULT qlen 1000 link/ether 06:e6:41:84:10:48 brd ff:ff:ff:ff:ff:ff
3. Modifica l'attributo MTU
L'esempio seguente usa l'argomento set per modificare l'attributo MTU su 1000:
# ip link set eth0 mtu 1000
# ip link show eth0 2: eth0: [BROADCAST,MULTICAST,UP,LOWER_UP] mtu 1000 qdisc pfifo_fast state UP mode DEFAULT qlen 1000 link/ether 06:e6:41:84:10:48 brd ff:ff:ff:ff:ff:ff
sottocomando ip neigh per amministrare la tabella ARP
ARP risolve un indirizzo IP nell'indirizzo MAC. L'indirizzo MAC è un indirizzo hardware fisico a 48 bit, che viene masterizzato nella scheda di interfaccia di rete (NIC). Le applicazioni di rete utilizzano l'indirizzo IP per comunicare con un altro dispositivo, ma l'indirizzo MAC è necessario per garantire la consegna dei pacchetti di rete.
Usa 'ip nitrito ' sottocomando per visualizzare la tabella ARP, per eliminare una voce ARP o per aggiungere una voce alla tabella. Il sottocomando ip neigh sostituisce il comando arp, che è deprecato. La tabella ARP è anche conosciuta con un altro nome, la tabella IP neighbor .
I comandi dell'oggetto ip neigh sono riassunti come segue:
Sottocomando | Descrizione e compito |
---|---|
ip neigh add | Aggiungi una nuova voce vicina. |
cambiamento ip neigh | Modifica una voce esistente. |
ip nitrito sostituisci | Aggiungi una nuova voce o modifica una voce esistente. |
ip neigh elimina | Elimina una voce vicina. |
Spettacolo di ip neigh | Elenca le voci vicine. |
ip neigh flush | Svuota le tabelle vicine. |
1. Visualizza la tabella ARP
L'esempio seguente mostra la tabella ARP. Il comando mostra è l'impostazione predefinita.
# ip neigh 172.31.112.1 dev eth0 lladdr 06:75:25:15:b5:ba REACHABLE
2. Cancella tutte le voci della tabella ARP
L'esempio seguente cancella tutte le voci nella tabella ARP con dettaglio:
# ip -s -s neigh flush all 172.31.112.1 dev eth0 lladdr 06:75:25:15:b5:ba ref 1 used 33/0/29 probes 1 REACHABLE *** Round 1, deleting 1 entries *** *** Flush is complete after 1 round ***
3. Rimuovi le voci della tabella ARP solo per un'interfaccia specifica
L'esempio seguente rimuove le voci nella tabella ARP sul dispositivo eth0:
# ip neigh flush dev eth0
sottocomando ip route
L'utility ip route visualizza o manipola la tabella di routing IP. Il suo utilizzo principale è impostare percorsi statici verso host o reti specifici tramite un'interfaccia di rete.
1. Visualizzazione della tabella di instradamento
Utilizzare il comando ip route per visualizzare la tabella di routing. Esempio:
# ip route default via 172.31.112.1 dev eth0 proto static metric 100 172.31.112.0/20 dev eth0 proto kernel scope link src 172.31.124.62 metric 100
Puoi anche usare il vecchio buon comando 'netstat -r' per visualizzare la tabella di routing.
# netstat -r Kernel IP routing table Destination Gateway Genmask Flags MSS Window irtt Iface default gateway 0.0.0.0 UG 0 0 0 eth0 172.31.112.0 0.0.0.0 255.255.240.0 U 0 0 0 eth0
2. Aggiunta di un percorso
Utilizzare il comando ip route add per aggiungere una route statica. L'esempio seguente aggiunge un percorso predefinito, che viene utilizzato se nessun altro percorso corrisponde. Tutti i pacchetti di rete che utilizzano questo percorso sono "gateway" tramite l'indirizzo IP 172.31.112.1:
# ip route add default via 172.31.112.1 dev eth0 proto static
L'esempio seguente aggiunge una route statica a un indirizzo host tramite un'interfaccia di rete specifica.
# ip route add 192.0.2.1 via 10.150.36.2 dev eth0
3. Elimina un percorso
Utilizzare il comando ip route delete per eliminare una voce dalla tabella di routing, ad esempio:
# ip route delete default via 172.31.112.1 # ip route delete 192.0.2.1
4. Configurazione di percorsi statici permanenti
Eventuali modifiche apportate alla tabella di routing utilizzando ip route non vengono mantenute durante i riavvii del sistema. Per rendere permanenti le route statiche, configurarle per ciascuna interfaccia. La configurazione del percorso statico è memorizzata in un /etc/sysconfig/network-scripts/route-interface file. Ad esempio, le route statiche per l'interfaccia eth0 verrebbero archiviate in /etc/sysconfig/network-scripts/route-eth0 file.
Il file di interfaccia di percorso ha due formati:
- Argomenti del comando IP
- Direttive di rete/maschera di rete
Il formato degli argomenti del comando IP utilizza la seguente sintassi:
x.x.x.x/x via x.x.x.x dev interface
Usa il termine predefinito per creare un gateway predefinito, ad esempio:
default via x.x.x.x dev interface
L'esempio seguente crea una route statica alla sottorete 192.168.2.0/24 tramite un'interfaccia eth0 (10.10.10.1):
# cat /etc/sysconfig/network-scripts/route-eth0 198.168.2.0/24 via 10.10.10.1 dev eth0
Puoi anche utilizzare la rete/maschera di rete formato delle direttive per i file di interfaccia di percorso. Il formato è il seguente:
ADDRESS0=X.X.X.X NETMASK0=X.X.X.X GATEWAY0=X.X.X.X
L'esempio seguente mostra l'uso degli argomenti del comando IP per definire la stessa voce:
ADDRESS0=198.168.2.0 NETMASK0=255.255.255.0 GATEWAY0=10.10.10.1
Inizia da 0 (come mostrato) e incrementa di uno per ogni percorso statico aggiuntivo.