CodeGym /Corsi /Docker SELF /Basi del lavoro con la rete: comandi ping, ip addr, ifcon...

Basi del lavoro con la rete: comandi ping, ip addr, ifconfig

Docker SELF
Livello 4 , Lezione 0
Disponibile

Basi del lavoro con la rete: comandi ping, ip addr, ifconfig

1. Introduzione ai concetti di rete: un po' di teoria

Nella lezione di oggi daremo un’occhiata alle basi degli strumenti di rete su Linux. Imparerai come controllare la disponibilità dei nodi di rete, analizzare lo stato delle interfacce di rete e la loro configurazione, e lavorare con le impostazioni di rete.

Le reti sono il sistema nervoso del mondo IT. Se ti sei mai chiesto come il tuo browser apre una pagina web, ecco una risposta breve: grazie alla rete. Qualunque sia il ruolo che vorrai ricoprire (sviluppatore, amministratore o ingegnere), capire le basi della rete è una skill fondamentale.

Ma cos'è una rete? È un insieme di computer collegati per scambiare dati. Nel contesto di Linux, l’amministrazione della rete inizia con la comprensione di concetti base:

  • Indirizzo IP: è un identificatore univoco del dispositivo nella rete. Immagina che sia l’indirizzo di casa del tuo computer.
  • Sottorete: un raggruppamento logico di dispositivi nella rete. È come un quartiere dove vivono case con indirizzi.
  • Gateway: è una "porta verso il mondo", attraverso cui i dispositivi nella tua rete locale possono accedere a Internet o connettersi ad altre sottoreti.

Ci sono due tipi di indirizzi IP: IPv4 (ad esempio, 192.168.1.1) e IPv6 (ad esempio, 2001:0db8:85a3:0000:0000:8a2e:0370:7334). IPv4 è più semplice, ed è quello con cui lavoreremo in questa lezione. IPv6 è uno standard figo e di lungo termine, ma lo studieremo più avanti.


2. Comando ping: verifichiamo la disponibilità di un nodo

Cosa fa ping?

ping è un'utility che controlla se un altro nodo nella rete è disponibile. Invia una piccola "nota di benvenuto" al server di destinazione (richiesta ICMP) e aspetta una risposta. Se il nodo risponde, tutto è a posto; se no, qualcosa potrebbe essere andato storto (o il server ha deciso di ignorarti, maleducato!).

Come usare ping?

Proviamo ad usare il comando ping. Apri il terminale e inserisci il seguente comando:

ping 8.8.8.8

Questo comando invierà richieste al server DNS pubblico di Google. Vedrai qualcosa simile a questo:

PING 8.8.8.8 (8.8.8.8) 56(84) bytes of data.
64 bytes from 8.8.8.8: icmp_seq=1 ttl=117 time=10.4 ms
64 bytes from 8.8.8.8: icmp_seq=2 ttl=117 time=10.2 ms
64 bytes from 8.8.8.8: icmp_seq=3 ttl=117 time=10.3 ms

Ecco cosa significano queste righe:

  • icmp_seq: il numero della richiesta inviata.
  • ttl: "tempo di vita" del pacchetto (quanti "salti" di rete può fare).
  • time: il tempo (in millisecondi) necessario per inviare e ricevere una risposta.

Per limitare il numero di richieste inviate, puoi usare il flag -c:

ping -c 4 8.8.8.8

Questo comando invierà solo 4 richieste invece di un flusso infinito.

Pratica: controlliamo la connessione con il localhost e internet

Prova ping con l'indirizzo IP del tuo router (di solito è qualcosa tipo 192.168.1.1) e con 8.8.8.8. Questo ti aiuterà a capire se la rete locale funziona e se c'è accesso a internet.


3. Comando ip addr: verifichiamo le interfacce di rete

Che cos'è un'interfaccia di rete?

Un'interfaccia di rete è ciò attraverso cui il tuo computer "comunica" con la rete. Questo può essere un'interfaccia per Ethernet (connessione cablata), WLAN (connessione wireless) o interfacce virtuali create per compiti specifici.

Il comando ip addr mostra la configurazione corrente delle interfacce di rete. Proviamolo:

ip addr

Il risultato sarà simile a questo:

1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
    inet 127.0.0.1/8 scope host lo
    inet6 ::1/128 scope host 
2: enp0s3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
    inet 192.168.1.100/24 brd 192.168.1.255 scope global dynamic enp0s3
    inet6 fe80::1a2b:3c4d:5e6f:f7g8/64 scope link

Cosa vediamo qui:

  • lo — questa è l'interfaccia locale (localhost). Il suo indirizzo è sempre 127.0.0.1.
  • enp0s3 — questo è il nome dell'interfaccia di rete del tuo adattatore Ethernet.
  • inet — indirizzo IPv4 dell'interfaccia.
  • inet6 — indirizzo IPv6 dell'interfaccia.

Come configurare temporaneamente un indirizzo IP?

Se hai i diritti di superutente (tramite sudo), puoi configurare temporaneamente un indirizzo IP:

sudo ip addr add 192.168.1.101/24 dev enp0s3

Questo indirizzo IP sarà attivo fino al riavvio.


4. Comando ifconfig: un vecchio strumento ancora popolare

In passato per gestire le interfacce di rete si usava ifconfig. Ora sta pian piano uscendo dall'uso (è stato sostituito da ip addr), ma a volte lo si trova ancora in vecchie distribuzioni.

Controllo dello stato delle interfacce

Per vedere lo stato delle interfacce con ifconfig, esegui:

ifconfig

Il risultato sarà simile all'output del comando ip addr.

Abilitare/disabilitare un’interfaccia

Puoi abilitarla o disabilitarla con:

sudo ifconfig enp0s3 down
sudo ifconfig enp0s3 up

Di nuovo, ricorda che ifconfig non funziona su tutte le distribuzioni moderne. Se il comando non viene trovato, prova a installare il pacchetto net-tools, oppure passa direttamente a ip addr.


5. Esempio: verifichiamo la disponibilità e la rete

Adesso mettiamo insieme le conoscenze acquisite con un piccolo esempio pratico.

  1. Verifica la disponibilità dell'interfaccia locale:

    ping 127.0.0.1
    
  2. Controlla l'indirizzo IP della tua rete:

    ip addr
    
  3. Prova a configurare temporaneamente un nuovo indirizzo IP:

    sudo ip addr add 192.168.1.102/24 dev enp0s3
    ip addr show enp0s3
    
  4. Verifica la disponibilità di un nodo pubblico:

    ping -c 3 8.8.8.8
    
  5. Se usi una distribuzione vecchia, prova a riavviare l'interfaccia:

    sudo ifconfig enp0s3 down
    sudo ifconfig enp0s3 up
    

Ora sei preparato con gli strumenti base per la diagnostica della rete in Linux. I comandi ping, ip addr e ifconfig sono i tuoi primi passi nel mondo dell'amministrazione di rete. E il meglio deve ancora venire!

Commenti
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION