Cos'è l'instradamento dei pacchetti di rete?
Il processo di instradamento del pacchetto di rete è la trasmissione di un pacchetto IP da un punto all'altro sulla rete, ad esempio Internet. Quando invii un'e-mail a qualcuno, stai effettivamente trasferendo una serie di pacchetti IP o datagrammi dal tuo computer all'altro nodo di rete o PC. I pacchetti inviati dal tuo computer passano attraverso diversi gateway o router per raggiungere il sistema del computer di destinazione. Lo stesso approccio si applica a tutti i protocolli Internet come HTTP, IRC, FTP, ecc.
In tutti i sistemi Linux e UNIX, le informazioni sull'inoltro dei pacchetti IP sono archiviate in una struttura del kernel. Queste strutture sono chiamate tabelle di instradamento. Se si desidera che il sistema comunichi con altri computer, è necessario configurare queste tabelle di routing. Ma prima, è importante come visualizzare queste tabelle di routing sul tuo sistema Linux.
Comandi trattati in questo articolo
In questo articolo, spiegheremo come visualizzare la tabella di routing in Debian usando i seguenti tre comandi popolari
- Il comando IP
- Il comando di rotta
- Il comando netstat route
Abbiamo testato i comandi di questo articolo su un sistema Debian 10 Buster.
Usiamo la riga di comando di Debian, il terminale, per eseguire i comandi precedenti. È possibile aprire il terminale utilizzando la ricerca di avvio dell'applicazione come segue:
L'Application Launcher può essere avviato tramite il tasto Super/Windows sulla tastiera.
Come utilizzare il comando ip per visualizzare i percorsi di rete
Ultimo ma non meno importante, ecco il modo più consigliato per stampare le informazioni sulla tabella di routing in Linux. Hets è come usare questo comando:
$ ip route
Sebbene queste informazioni non siano molto facili da leggere come quelle dei comandi menzionati in precedenza, è comunque sufficiente per configurare il percorso.
Questi erano alcuni comandi per visualizzare le informazioni sulla tabella di routing su Debian. Sebbene il comando ip route non abbia un aspetto ordinato, è comunque il modo più consigliato per cercare informazioni rilevanti sulla tabella di routing. Gli altri comandi sono considerati obsoleti ma possono comunque essere utili per ricavare ciò che è necessario estrarre.
Visualizza la tabella di instradamento utilizzando il comando route
Il comando route rientra anche nella categoria dei comandi un tempo ampiamente utilizzati ma ora obsoleti per visualizzare le tabelle di routing. La pagina di manuale di questo comando menziona anche che il comando è ora sostituito dal comando ip route.
Attraverso questo comando, puoi visualizzare esattamente le stesse informazioni che potresti, tramite il comando netstat. Ecco come puoi usarlo:
$ sudo route -n
-n Questo flag viene utilizzato per visualizzare solo gli indirizzi numerici
Il formato di output è in qualche modo simile a quello del comando netstat.
Usa il comando netstat per visualizzare la tabella di routing
Il comando netstat è sempre stato un metodo ampiamente utilizzato per stampare le informazioni sulla tabella di routing in Linux. Tuttavia, è ufficialmente sostituito dal comando ip route. Lo stiamo includendo comunque poiché è ancora un approccio per recuperare le informazioni richieste
Ecco come puoi usare questo comando:
$ netstat -rn
-r Questo flag viene utilizzato per visualizzare le tabelle di routing del kernel
-n Questo flag viene utilizzato per visualizzare gli indirizzi numerici
Questo è ciò che indica l'output:
Destinazione | Questa colonna indica la rete di destinazione |
Gateway | Questa colonna indica il gateway definito per la rete. Se vedi un * in questa colonna, significa che non è necessario alcun gateway di inoltro per la rete specificata. |
Maschera genomica | Questa colonna indica la netmask della rete. |
Bandiere | L'output U in queste colonne significa che il percorso è attivo. L'output G indica che il gateway specificato deve essere utilizzato per questa route. D sta per installato dinamicamente, M sta per modificato e R significa reintegrato. |
MSS | Questa colonna indica la dimensione massima del segmento (MSS) predefinita per le connessioni TCP per questa route. |
Finestra | Questa colonna indica la dimensione della finestra predefinita per le connessioni TCP su questo percorso. |
irtt | Questa colonna indica il tempo di andata e ritorno iniziale per questo percorso. |
Iface | La colonna Iface mostra l'interfaccia di rete. Se avessi più di un'interfaccia, vedresti lo (per loopback), eth0 (primo dispositivo Ethernet) e eth1 (per il secondo dispositivo Ethernet), e così via per il numero di interfacce installate. |