1. Concetto di routing
Oggi ci immergiamo ancora più a fondo: configureremo i percorsi, analizzeremo le connessioni di rete e impareremo a gestire le porte. È qui che inizia la vera magia dell'amministrazione di rete: capiremo dove e come corrono i pacchetti, e perché è importante essere il "capo dei percorsi".
Il routing non è solo qualcosa che suona complicato, è la base delle basi della rete moderna. Immagina: il tuo computer è un turista che vuole arrivare a un altro computer (un hotel), e i percorsi sono le strade e i segnali stradali. Se non ci sono percorsi, il turista vagherà, chiederà indicazioni ai passanti (che potrebbero essere server DNS, ma non ne parliamo ora) o magari resterà a casa.
Perché servono i percorsi
Ogni dispositivo nella rete deve sapere come raggiungere gli altri dispositivi. Per esempio, se il tuo computer vuole inviare una richiesta al sito example.com, deve sapere:
- Dove inviare i pacchetti.
- Attraverso quale gateway o interfaccia farlo.
I percorsi si dividono in due tipi:
- Percorsi locali: istruzioni per i dispositivi nella tua sottorete (ad esempio, il tuo computer e la stampante).
- Percorsi esterni: istruzioni per i dispositivi al di fuori della tua sottorete (ad esempio, per una risorsa su Internet).
2. Tabella di routing
La tabella di routing è una tabella con regole che determinano dove inviare i pacchetti in base agli indirizzi IP. È come Google Maps per il tuo computer: "Se vuoi andare lì, passa per questo gateway".
Prova a visualizzare la tua tabella di rotte:
ip route show
Esempio di output:
default via 192.168.1.1 dev eth0 proto dhcp metric 100
192.168.1.0/24 dev eth0 proto kernel scope link src 192.168.1.100 metric 100
Cosa significa:
default via 192.168.1.1: se al pacchetto non è specificato dove deve andare, invialo tramite il gateway con l'indirizzo192.168.1.1.dev eth0: usiamo l'interfacciaeth0.192.168.1.0/24: questa è una rotta per l'intera sottorete192.168.1.0/24. I pacchetti restano "a casa" nella rete locale.protoemetric– parametri aggiuntivi, ne parleremo tra poco.
3. Comando ip route
Visualizzare i percorsi
Per vedere la tabella di routing abbiamo già utilizzato ip route show. Puoi aggiungere dei filtri, ad esempio, per determinare il percorso solo per la rete locale:
ip route show match 192.168.1.0/24
Aggiungere percorsi
Puoi aggiungere un percorso statico – è come mettere un cartello stradale da solo. Per esempio, per reindirizzare tutte le richieste alla subnet 10.0.0.0/24 attraverso un determinato gateway:
sudo ip route add 10.0.0.0/24 via 192.168.1.1 dev eth0
Spieghiamo:
10.0.0.0/24– subnet di destinazione.via 192.168.1.1– gateway attraverso il quale i pacchetti vengono inviati.dev eth0– interfaccia attraverso la quale i pacchetti passano.
Eliminare percorsi
Se non vuoi più che un percorso esista, lo elimini con il comando:
sudo ip route del 10.0.0.0/24
4. Pratica: Configurazione di una rotta statica
- Assicurati di avere accesso a un'altra sottorete.
- Aggiungi una rotta:
sudo ip route add 192.168.2.0/24 via 192.168.1.1 dev eth0
- Verifica la tabella delle rotte:
ip route show
- Elimina la rotta, se non serve più.
5. Comando netstat
Quando si tratta di analizzare le connessioni attuali, netstat è un vecchio e affidabile amico degli amministratori di sistema (anche se ora c'è un'alternativa più moderna – ss, di cui parleremo dopo).
Verifica delle connessioni attive
netstat -tun
Che significa:
-t– mostra connessioni TCP.-u– mostra connessioni UDP.-n– usa indirizzi numerici (invece dei nomi host).
Esempio di output:
Proto Recv-Q Send-Q Local Address Foreign Address State
tcp 0 0 192.168.1.100:22 192.168.1.50:50240 ESTABLISHED
Che significa:
- Indirizzo locale
192.168.1.100:22– il tuo computer sta ascoltando sulla porta 22 (SSH). - Indirizzo remoto
192.168.1.50:50240– è l'host remoto collegato alla tua porta. ESTABLISHED– connessione attiva, dati in trasferimento.
Porte in ascolto
Per vedere quali porte stanno "ascoltando" sul tuo computer:
netstat -ltn
Il flag -l mostra solo le porte in ascolto, e -t e -n li abbiamo già discussi.
6. Comando ss
Se netstat è un dinosauro, allora ss è come una DeLorean del futuro: è più veloce e fornisce più informazioni.
Controllare le connessioni attive
ss -tun
L'output è simile a netstat, ma con maggiore velocità e più dettagli.
Ascoltare le porte
ss -tln
Tutto come con netstat, ma lavorare con ss è più comodo e moderno.
7. Monitoraggio delle connessioni
- Usa
netstatossper vedere quali porte sta ascoltando il tuo computer. - Apri una connessione SSH su un altro dispositivo e verifica se appare nell'elenco delle connessioni.
- Prova a interpretare l'output dei comandi.
Ci siamo immersi nel mondo del routing e del monitoraggio delle connessioni: ora puoi usare ip route per gestire la tabella delle rotte, e netstat/ss per analizzare le connessioni di rete. Questi strumenti sono il tuo coltellino svizzero per risolvere i problemi di rete più intricati. Vuoi aiutare un amico che si lamenta perché "internet non funziona"? Sfodera le tue nuove abilità e fai vedere di cosa sei capace!
La prossima lezione sarà ancora più interessante: esploreremo il DNS e la sua magia. Nel frattempo, esercitati con ip route e dai un'occhiata a come i pacchetti trovano la strada di casa.
GO TO FULL VERSION