GuideNetworking.it

Approfondimenti, tutorial ed esperienze sulle reti informatiche

Configurare una scheda di rete in linux: guida completa

Lavorando con le reti molto spesso ci capiterà di utilizzare un sistema operativo Linux (molti server WEB utilizzano Linux, oppure ad esempio il nostro centralino telefonico IP potrebbe essere basato su Linux).Vediamo in questo post alcuni comandi e tecniche per la configurazione di una interfaccia di rete (ethernet) con questo sistema operativo.

Come appena detto per configurare una scheda di rete è necessario che il nostro PC sia connesso, appunto, ad una rete. Una rete è formata da diversi dispositivi che comunicheranno fra di loro utilizzando la propria scheda di rete.

Configurare una interfaccia di rete ethernet significa innanzitutto assegnare un  indirizzo IP (Internet Protocol).

Per eseguire queste configurazioni il comando più utilizzato in un sistema operativo Linux è il comando ifconfig (interface configurator) del quale possiamo trovare un comando molto simile nei sistemi Windows: ipconfig.

Anche se nella maggior parte dei casi ad un PC corrisponde una sola scheda di rete, in realtà possiamo avere dispositivi con due o più interfacce di rete (router, firewall, server, ma anche PC). In questi casi (più ethernet disponibili) il sistema operativo Linux assegna ad ogni interfaccia, nomi tipo: “eth0“, “eth1” etc. oviamente ognuna con il suo indirizzo Ip.

Ogni interfaccia di tipo ethernet potrà avere un suo alias cioè un “soprannome”, in modo da avere più nomi per la stessa interfaccia ad esempio l’interfaccia eth0 si potrà chiamare anche “eth0:1” oppure “eth0:2” etc.

In realtà il comando ifconfig non è utilizzato solo per il settaggio delle configurazione delle schede di rete ma anche per la verifica delle configurazioni permettendoci di visualizzare numerose informazioni sullo stato della nostra interfaccia di rete.

Ad esempio se sul prompt dei comandi di linux proviamo a digitare l’istruzione:

ifconfig

Vedremo un risultato di questo tipo:

eth0 Link encap:Ethernet HWaddr 42:29:CA:9B:EC:E2
inet addr:192.168.1.254 Bcast:192.168.1.255 Mask:255.255.255.0
inet6 addr: fe80::4029:caff:fe9b:ece2/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:18985362 errors:0 dropped:0 overruns:0 frame:0
TX packets:12648515 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:3092543800 (2.8 GiB) TX bytes:2773776115 (2.5 GiB)

lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host
UP LOOPBACK RUNNING MTU:65536 Metric:1
RX packets:11180043 errors:0 dropped:0 overruns:0 frame:0
TX packets:11180043 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:2096695560 (1.9 GiB) TX bytes:2096695560 (1.9 GiB)

Descriviamone il significato delle linee che vengono visualizzate dopo aver inviato il comando. Innanzitutto abbiamo:

eth0 Link encap:Ethernet HWaddr 42:29:CA:9B:EC:E2

qui abbiamo due informazioni fondamentali:

  1. la tipologia di hardware utilizzato: Ethernet significa che il dispositivo utilizza il protocollo Ethernet.
  2. il MAC address (Media Access Control address) possiamo dire che è il nome fisico della scheda di rete ogni interfaccia di rete ha un indirizzo MAC assegnato dal costruttore del dispositivo (la prima metà identifica proprio il costruttore), è un “nome” univoco con cui può essere identificata la scheda. L’indirizzo MAC è chiamato anche indirisso Ethernet perchè fa parte del protocollo di rete chiamato appunto Ethernet. Per approfondimenti sui protocolli di rete puoi
    1. leggere l’articolo sulle reti di computer
    2. oppure scaricare la nostra guida di base sulle reti

La seconda riga:

inet addr:192.168.1.254 Bcast:192.168.1.255 Mask:255.255.255.0

specifica:

  • l’indirizzo IPv4 della scheda, è “il nome” della scheda utilizzando la notazione richiesta nel protocollo IP
  • l’indirizzo di broadcast, è l’indirizzo che permette di inviare un messaggio a tutti gli host della rete contemporaneamente
  • la maschera di rete, è utilizzato per identificare l’indirizzo della rete che stiamo utilizzando.

Successivamente troviamo le informazioni riguardanti IPv6:

inet6 addr: fe80::4029:caff:fe9b:ece2/64 Scope:Link

Continuiamo, la riga:

UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1

fornisce informazioni su lo stato dell’interfaccia:

  • UP indica che l’interfaccia il sistema operativo ha caricato il driver dell’interfaccia, diversamente sarebbe DOWN
  • RUNNING indica che l’interfaccia ethernet è pronta a ricevere dati
  • MULTICAST significa che la scheda è abilitata al multicasting
  • le opzioni attivate, l’MTU (Maximum Transfer Unit), indica la dimensione del pacchetto di dati ricevuto dalla scheda, normalmente è fissato a 1500 per le schede di rete ethernet
  • e la Metrica (computo del costo di trasmissione), più il valore è basso e più la scheda ha priorità. Ad esempio se abbiamo due schede ethernet sullo stesso dispositivo i pacchetti verranno inviati sulla scheda che ha questo valore più basso. In realtà in ambito Linux questo può non essere vero perchè si agisce sulla tabella di routing, ma l’esempio è ottimo per capire il significato di questo parametro.

Nelle righe successive:

RX packets:11180043 errors:0 dropped:0 overruns:0 frame:0

TX packets:11180043 errors:0 dropped:0 overruns:0 carrier:0

Dove:

  • “RX” stà per ricezione mentre
  • “TX” stà per trasmissione

vengono visualizzati il numero totale di pacchetti ricevuti (RX) e trasmessi (TX), si nota anche che abbiamo informazioni sugli errori (zero), sui pacchetti persi (dropped:0) ed altre informazioni che in questa guida trascuriamo.

collisions:0 txqueuelen:0
RX bytes:2096695560 (1.9 GiB) TX bytes:2096695560 (1.9 GiB)

il parametro “collisions” può fornirci informazioni molto interessanti per la nostra rete. In genere deve valere 0. Se il valore è maggiore di 0, significa che nella nostra rete ci sono “collisioni” di pacchetti ethernet, questo è indice di congestione nella nostra rete LAN.

Ora che abbiamo visto le informazioni più importanti che possiamo visualizzare con il comando ifconfig, vediamo alcuni usi più comuni.

Per attivare una determinata interfaccia di rete Ethernet possiamo usare il comando:

ifconfig eth1 up

Per disattivare l’interfaccia:

ifconfig eth1 down

Per avere informazioni solo su di una interfaccia:

ifconfig eth1

Impostare l’indirizzo IP di una interfaccia:

ifconfig eth2 192.168.1.10

Impostare una maschera di rete:

ifconfig eth1 netmask 255.255.255.0

Possiamo usare un comando per impostare tutto contemporaneamente (aggiungiamo anche un indirizzo di broadcast):

ifconfig eth0 192.168.2.5 netmask 255.255.255.0 broadcast 192.168.2.7

Abbiamo visto come impostare l’indirizzo IP, e la netmask ad una interfaccia di rete Ethernet, ma per completare la configurazione di una interfaccia realmente utilizzabile in un ambiente di rete ci manca il Gateway!! Con il sistema operativo Linux possiamo aggiungere la configurazione del gateway di default per la nostra rete con questa istruzione:

route add default gw 192.168.1.1

Ci mancano solo i DNS server ed abbiamo finito:

echo “nameserver 8.8.8.8” > /etc/resolv.conf

L’ultima cosa che vediamo prima di chiudere questo post sulla configurazione di una interfaccia di rete Ethernet in Linux, è la configurazione di un alias di rete, potrebbe essere necessario, a volte, avere un secondo nome da usare per la stessa interfaccia, anche assegnando un indirizzo IP diverso. In questo modo possiamo avere una scheda di rete con due indirizzi IP differenti. in Linux la cosa è molto semplice:

ifconfig eth0:1 192.168.5.50 netmask 255.255.240.0

Se vogliamo disattivare questo alias creato possiamo farlo con il seguente comando:

ifconfig eth0:1 down

Con questo abbiamo terminato!! Chiaramente ci sarebbe molto altro da dire e cercheremo di farlo nei prossimi post, intanto segnalateci se l’argomento è interessante oppure avete suggerimenti e/o modifiche.

Se l’argomento vi è piaciuto potete iscrivervi alla nostra mailing list per ricevere esclusivamente aggiornamenti ed informazioni relative agli argomenti del blog!!

 

Lascia un commento

Questo sito usa Akismet per ridurre lo spam. Scopri come i tuoi dati vengono elaborati.