Il Linux ip command è una potente utility per la gestione della rete. Sostituisce i vecchi comandi di rete come ifconfig, routee arp, che fornisce un set di strumenti unificato per configurare, monitorare e risolvere i problemi delle impostazioni di rete sui sistemi Linux. È comunemente utilizzato per impostare e gestire indirizzi IP, percorsi e interfacce di rete.
Utilizzo delle chiavi e sintassi del ip Comando #
Migliori ip il comando segue una sintassi strutturata:
ip [OPTIONS] OBJECT COMMAND
- VERSIONI includere flag per ulteriori personalizzazioni, come -4 per IPv4 o -6 per IPv6.
- OGGETTO rappresenta l'elemento di rete che vuoi gestire, ad esempio link (interfaccia), addr (indirizzo), route, ecc.
- COMANDO è l'azione che vuoi eseguire, come aggiungere, mostrare attraverso le sue creazioni, delete, o set.
ip Tabella dei comandi #
| Comando | Descrizione |
ip link show |
Elenca tutte le interfacce di rete |
ip addr show |
Mostra gli indirizzi IP per tutte le interfacce |
ip addr add <IP>/<subnet> dev <iface> |
Aggiungere l'indirizzo IP a un'interfaccia |
ip addr del <IP>/<subnet> dev <iface> |
Rimuovere l'indirizzo IP da un'interfaccia |
ip route show |
Visualizza tutte le voci della tabella di routing |
ip route add <dest> via <gateway> |
Aggiungi un nuovo percorso |
ip route del <dest> |
Elimina un percorso esistente |
ip neigh show |
Visualizza la cache del vicino (tabella ARP) |
ip rule show |
Mostra tutte le regole di routing |
ip rule add from <IP>/<prefix> table <table-id> |
Aggiungere una regola per instradare da una fonte specifica utilizzando una tabella |
ip rule del from <IP>/<prefix> table <table-id> |
Elimina una regola basata sull'IP di origine |
Migliori ip addr sottocomando #
Migliori ip addr Il comando visualizza e gestisce gli indirizzi IP per le interfacce di rete.
Show #
ip addr show
Esempio di uscita #
Questo comando elenca ogni interfaccia di rete con dettagli quali indirizzo IP, subnet mask, indirizzo di broadcast e stato del collegamento. Ecco un esempio:
2: enp0s3: mtu 1500 qdisc pfifo_fast stato UP gruppo predefinito qlen 1000 link/ether 08:00:27:1a:02:50 brd ff:ff:ff:ff:ff:ff inet 192.168.1.10/24 brd 192.168.1.255 ambito globale dinamico enp0s3 valid_lft 86320sec preferred_lft 86320sec inet6 fe80::a00:27ff:fe1a:250/64 ambito collegamento valid_lft per sempre preferred_lft per sempre
Spiegazione dell'output #
- Informazioni sull'interfaccia: La riga che inizia con
2: enp0s3mostra il nome dell'interfaccia di rete (enp0s3), insieme a bandiere comeBROADCAST,MULTICAST,UP,LOWER_UP, indicando che l'interfaccia supporta broadcast e multicast ed è attiva e funzionante. - Indirizzo MAC: Il
link/etherla riga visualizza l'indirizzo MAC (08:00:27:1a:02:50) dell'interfaccia. - Indirizzo IPv4: Il
inetla riga fornisce l'indirizzo IPv4 (192.168.1.10/24) assegnato all'interfaccia, con/24indicando la maschera di sottorete. - Indirizzo IPv6: Il
inet6la riga elenca l'indirizzo IPv6 (fe80::a00:27ff:fe1a:250), se disponibile.
Questo comando è essenziale per controllare gli indirizzi IP delle interfacce di rete e il loro stato.
Aggiungi #
Assegnare un indirizzo IP a un'interfaccia di rete
ip addr add 192.168.1.100/24 dev enp0s3
Uscita
Questo comando non fornisce output se ha successo, cosa comune in Linux per i comandi di configurazione. Se c'è un problema (ad esempio, un conflitto IP), verrà visualizzato un messaggio di errore.
Elimina #
Rimuovere un indirizzo IP da un'interfaccia
ip addr del 192.168.1.100/24 dev enp0s3
Uscita
Simile a add, questo comando è silenzioso in caso di successo. Vedrai l'output solo se l'indirizzo IP non è assegnato all'interfaccia specificata o se c'è un altro errore.
Lavare #
Cancella tutti gli indirizzi IP da un'interfaccia
ip addr flush dev enp0s3
Uscita
Questo comando non fornisce alcun output in caso di successo. Viene solitamente utilizzato per reimpostare la configurazione IP di un'interfaccia.
Migliori ip route sottocomando #
Migliori ip route Il comando gestisce le voci di routing nella tabella di routing IP del kernel, specificando dove devono essere inoltrati i pacchetti.
Show #
Visualizza la tabella di routing
ip route show
Esempio di uscita
predefinito tramite 192.168.1.1 dev enp0s3 proto statico 192.168.1.0/24 dev enp0s3 proto ambito kernel link src 192.168.1.10
Spiegazione dell'output
- predefinito tramite: Indica il percorso predefinito, che punta all'IP del gateway (
192.168.1.1) per il traffico in uscita. - 192.168.1.0/24 sviluppatore enp0s3: Mostra un percorso verso la subnet locale, gestito dal
enp0s3interfaccia con192.168.1.10come indirizzo sorgente.
Aggiungi #
Crea un nuovo percorso
ip route add 10.0.0.0/24 via 192.168.1.1 dev enp0s3
Uscita
Questo comando aggiunge un percorso al 10.0.0.0/24 subnet, instradamento del traffico attraverso 192.168.1.1 via enp0s3In caso di successo non verrà visualizzato alcun output.
Elimina #
Rimuovi un percorso
ip route del 10.0.0.0/24
Uscita
Rimuove il percorso specificato, senza generare alcun output in caso di esito positivo.
Lavare #
Cancella voci tabella di routing
ip route flush dev enp0s3
Uscita
Svuota tutti i percorsi per enp0s3, solitamente utilizzato per la riconfigurazione o la risoluzione dei problemi.
Migliori ip rule sottocomando #
Show #
Elenca tutte le regole di routing
ip rule show
Esempio di uscita
0: da tutte le ricerche locali 32766: da tutte le ricerche principali 32767: da tutte le ricerche predefinite
Spiegazione dell'output
Ogni riga mostra una regola con un numero di priorità (ad esempio, 0, 32766). Queste regole determinano quale tabella di routing (local, main, o default) da utilizzare per diversi tipi di traffico.
Aggiungi #
Definisci una nuova regola di routing
ip rule add from 192.168.1.100/32 table 100
Uscita
Questa regola indirizza il traffico proveniente da 192.168.1.100 consultare la tabella 100 per il routing. Non c'è output se il comando riesce.
Elimina #
Rimuovi una regola specifica
ip rule del from 192.168.1.100/32 table 100
Uscita
Elimina la regola specificata, senza generare alcun output in caso di successo.
Migliori ip link sottocomando #
Show #
Visualizza informazioni sul livello di collegamento
ip link show
Esempio di uscita
2: enp0s3: mtu 1500 qdisc pfifo_fast stato UP modalità DEFAULT gruppo predefinito qlen 1000 link/ether 08:00:27:1a:02:50 brd ff:ff:ff:ff:ff:ff
Spiegazione dell'output
- Informazioni sull'interfaccia: Mostra il nome dell'interfaccia (
enp0s3), bandiere (comeUP), e altri parametri come MTU (1500). - collegamento/etere: Visualizza l'indirizzo MAC (
08:00:27:1a:02:50).
Impostato: Configurare i parametri dell'interfaccia #
ip link set dev enp0s3 up
Uscita
Imposta l'interfaccia enp0s3 a up, attivandolo senza visualizzare alcun output in caso di successo.
Aggiungi #
Creare un collegamento virtuale (ad esempio, VLAN)
ip link add link enp0s3 name enp0s3.10 type vlan id 10
Uscita
Crea una VLAN con ID 10 associato enp0s3Nessun output indica che il comando è riuscito.
Elimina: Rimuovi un collegamento virtuale #
ip link del dev enp0s3.10
Uscita
Elimina il collegamento virtuale specificato (enp0s3.10) senza alcun output se l'operazione ha esito positivo.
Esempi di utilizzo di ip Comando #
Visualizza informazioni dettagliate sull'interfaccia #
Per visualizzare tutte le interfacce di rete disponibili con i relativi indirizzi IP, stati e dettagli aggiuntivi:
ip addr show
Questo mostra informazioni come indirizzo IP, subnet mask, indirizzo di broadcast e stato dell'interfaccia. Puoi specificare un'interfaccia particolare, come ip addr show eth0, per visualizzare i dettagli di una singola interfaccia.
Aggiungere e rimuovere indirizzi IP #
Per assegnare un indirizzo IP a un'interfaccia di rete:
ip addr add 192.168.1.10/24 dev eth0
Questo comando assegna l'IP 192.168.1.10 con una subnet mask di /24 a eth0Ciò è utile per configurare interfacce o aggiungere IP virtuali su un bilanciatore del carico per un'elevata disponibilità.
Per rimuovere un indirizzo IP da un'interfaccia:
ip addr del 192.168.1.10/24 dev eth0
Configurazione di un percorso statico #
Per aggiungere una rotta statica, essenziale per indirizzare il traffico verso reti specifiche:
ip route add 192.168.2.0/24 via 192.168.1.1
Questo stabilisce un percorso per il 192.168.2.0/24 rete, indirizzando i pacchetti attraverso la 192.168.1.1 porta.
Configurazione delle voci IP Neighbor (tabella ARP) #
Per aggiungere una voce permanente alla tabella ARP:
ip neigh add 192.168.1.5 lladdr 00:11:22:33:44:55 dev eth0
Questo mappa manualmente l'indirizzo IP 192.168.1.5 all'indirizzo MAC 00:11:22:33:44:55 on eth0.
Per eliminare una voce ARP:
ip neigh del 192.168.1.5 dev eth0
utilizzando ip rule per routing avanzato #
Migliori ip rule oggetto in ip comando viene utilizzato per il routing basato su policy, consentendo di impostare regole che indirizzano i pacchetti in modo diverso in base all'origine, alla destinazione o ad altri attributi del pacchetto. Ciò è particolarmente utile nelle configurazioni di rete avanzate in cui sono richieste più tabelle di routing, come configurazioni multi-homed o policy di routing specifiche per determinati intervalli IP.
Ad esempio, per aggiungere una regola che instrada tutti i pacchetti da un IP sorgente specifico (192.168.1.100) utilizzando una tabella di routing personalizzata (table 100):
ip rule add from 192.168.1.100/32 table 100
Per instradare il traffico verso una destinazione specifica utilizzando una tabella diversa:
ip rule add to 10.10.0.0/24 table 100
Per visualizzare tutte le regole:
ip rule show
Usando il ip Comando con RELIANOID Load Balancer #
In RELIANOIDambiente di bilanciamento del carico, il ip Il comando può essere fondamentale per la configurazione e l'ottimizzazione della rete. Ecco come puoi usarlo in modo efficace:
Assegnazione di IP virtuali #
In un RELIANOID load balancer, gli indirizzi IP virtuali sono essenziali per la distribuzione del carico e l'alta disponibilità. Utilizzare quanto segue per assegnare un VIP:
ip addr add 10.10.10.1/24 dev eth0
In questo modo viene creato un IP virtuale sull'interfaccia primaria, aiutando a distribuire le richieste dei client su più server backend.
Gestione del percorso per la comunicazione back-end #
Per garantire che il bilanciatore del carico inoltri il traffico ai server back-end su una subnet specifica, configurare una route statica:
ip route add 10.10.20.0/24 via 10.10.10.2
Questa configurazione garantisce il traffico destinato a 10.10.20.0/24 viene instradato correttamente attraverso il gateway specificato.
Monitoraggio delle statistiche dell'interfaccia di rete #
Controllare le statistiche dell'interfaccia è utile per monitorare il carico del traffico e risolvere i problemi. Ad esempio:
ip -s link show eth0
Questo comando fornisce statistiche in tempo reale sulla trasmissione dei pacchetti, sugli errori e sulle perdite eth0 interfaccia, che può aiutare a monitorare il carico e a regolare le impostazioni di bilanciamento in base alle necessità.
Usando il ip comando, RELIANOIDIl bilanciatore di carico di è in grado di mantenere una configurazione di rete efficiente, gestire dinamicamente indirizzi IP e percorsi e fornire una solida base per una gestione del traffico sicura e ottimizzata.
Sintesi #
In sintesi, Linux ip command è uno strumento versatile ed essenziale per la configurazione e la gestione della rete, che consente un controllo dettagliato su interfacce, percorsi e policy. La sua flessibilità consente una gestione efficiente di configurazioni di rete complesse, come quelle negli ambienti di bilanciamento del carico, consentendo agli amministratori di gestire indirizzi IP, definire percorsi e implementare regole basate su policy. Per RELIANOID bilanciatori di carico, sfruttando l' ip Il comando garantisce una gestione solida del traffico, un routing ottimizzato e un'architettura resiliente pronta per un'elevata disponibilità e un'efficiente distribuzione del carico.