Ricerca nel sito web

13 Configurazione della rete Linux e comandi per la risoluzione dei problemi


I computer sono collegati in rete per scambiare informazioni o risorse tra loro. Due o più computer sono collegati tramite un supporto di rete chiamato rete di computer. Esistono numerosi dispositivi o supporti di rete coinvolti per formare una rete di computer.

Anche un computer dotato del sistema operativo Linux può far parte di una rete, piccola o grande che sia, per la sua natura multitasking e multiutente. Mantenere il sistema e la rete attivi e funzionanti è un compito del lavoro dell'amministratore di sistema/rete.

In questo articolo, esamineremo la configurazione di rete utilizzata di frequente e risolveremo i problemi dei comandi in Linux.

1. Comando ifconfig

Il comando ifconfig (configuratore dell'interfaccia) viene utilizzato per inizializzare un'interfaccia, assegnare l'indirizzo IP all'interfaccia e abilitare o disabilita l'interfaccia su richiesta.

Con questo comando è possibile visualizzare l'indirizzo IP e l'Hardware/indirizzo MAC assegnato all'interfaccia e anche l'MTU (Dimensione massima dell'unità di trasmissione).

ifconfig

eth0      Link encap:Ethernet  HWaddr 00:0C:29:28:FD:4C
          inet addr:192.168.50.2  Bcast:192.168.50.255  Mask:255.255.255.0
          inet6 addr: fe80::20c:29ff:fe28:fd4c/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:6093 errors:0 dropped:0 overruns:0 frame:0
          TX packets:4824 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:6125302 (5.8 MiB)  TX bytes:536966 (524.3 KiB)
          Interrupt:18 Base address:0x2000

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:16436  Metric:1
          RX packets:8 errors:0 dropped:0 overruns:0 frame:0
          TX packets:8 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:480 (480.0 b)  TX bytes:480 (480.0 b)

Il comando ifconfig con interfaccia (eth0) mostra solo dettagli specifici dell'interfaccia come indirizzo IP, indirizzo MAC, ecc. con L'opzione -a mostrerà tutti i dettagli dell'interfaccia disponibile anche se è disabilitata.

ifconfig eth0

eth0      Link encap:Ethernet  HWaddr 00:0C:29:28:FD:4C
          inet addr:192.168.50.2  Bcast:192.168.50.255  Mask:255.255.255.0
          inet6 addr: fe80::20c:29ff:fe28:fd4c/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:6119 errors:0 dropped:0 overruns:0 frame:0
          TX packets:4841 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:6127464 (5.8 MiB)  TX bytes:539648 (527.0 KiB)
          Interrupt:18 Base address:0x2000

Imposta l'indirizzo IP e il gateway in Linux

Assegnazione immediata di un indirizzo IP e di un Gateway all'interfaccia. L'impostazione verrà rimossa in caso di riavvio del sistema.

ifconfig eth0 192.168.50.5 netmask 255.255.255.0

Abilita o disabilita l'interfaccia specifica

Per abilitare o disabilitare un'interfaccia specifica, utilizziamo il comando di esempio come segue.

Abilita eth0
ifup eth0
Disabilita eth0
ifdown eth0

Impostazione della dimensione MTU

Per impostazione predefinita, la dimensione MTU è 1500. Possiamo impostare la dimensione MTU richiesta con il comando seguente. Sostituisci XXXX con la dimensione.

ifconfig eth0 mtu XXXX

Imposta l'interfaccia in modalità promiscua

L'interfaccia di rete ha ricevuto solo pacchetti appartenenti a quella particolare NIC. Se metti l'interfaccia in modalità promiscua riceverà tutti i pacchetti. Ciò è molto utile per acquisire pacchetti e analizzarli in seguito. Per questo, potresti aver bisogno dell'accesso come superutente.

ifconfig eth0 - promisc

Aggiornamento: il comando ifconfig è sostituito dal comando IP nella maggior parte delle moderne distribuzioni Linux.

2. Comando Ping

Il comando Ping (Packet INternet Groper) è il modo migliore per testare la connettività tra due nodi. Che si tratti di Local Area Network (LAN) o di Wide Area Network (WAN).

Ping utilizza ICMP (Internet Control Message Protocol) per comunicare con altri dispositivi. Puoi eseguire il ping del nome host o dell'indirizzo IP utilizzando i comandi seguenti.

ping 4.2.2.2

PING 4.2.2.2 (4.2.2.2) 56(84) bytes of data.
64 bytes from 4.2.2.2: icmp_seq=1 ttl=44 time=203 ms
64 bytes from 4.2.2.2: icmp_seq=2 ttl=44 time=201 ms
64 bytes from 4.2.2.2: icmp_seq=3 ttl=44 time=201 ms

OR

# ping linux-console.net

PING linux-console.net (50.116.66.136) 56(84) bytes of data.
64 bytes from 50.116.66.136: icmp_seq=1 ttl=47 time=284 ms
64 bytes from 50.116.66.136: icmp_seq=2 ttl=47 time=287 ms
64 bytes from 50.116.66.136: icmp_seq=3 ttl=47 time=285 ms

Nel comando ping Linux continua l'esecuzione finché non interrompi. Il ping con l'opzione -c esce dopo N numero di richieste (risposta riuscita o errore).

ping -c 5 linux-console.net

PING linux-console.net (50.116.66.136) 56(84) bytes of data.
64 bytes from 50.116.66.136: icmp_seq=1 ttl=47 time=285 ms
64 bytes from 50.116.66.136: icmp_seq=2 ttl=47 time=285 ms
64 bytes from 50.116.66.136: icmp_seq=3 ttl=47 time=285 ms
64 bytes from 50.116.66.136: icmp_seq=4 ttl=47 time=285 ms
64 bytes from 50.116.66.136: icmp_seq=5 ttl=47 time=285 ms

--- linux-console.net ping statistics ---
5 packets transmitted, 5 received, 0% packet loss, time 4295ms
rtt min/avg/max/mdev = 285.062/285.324/285.406/0.599 ms

3. Comando Traceroute

traceroute è un'utilità di risoluzione dei problemi di rete che mostra il numero di salti necessari per raggiungere una destinazione e determina anche il percorso di viaggio dei pacchetti. Di seguito stiamo tracciando il percorso verso l'indirizzo IP del server DNS globale e in grado di raggiungere la destinazione mostra anche il percorso che sta viaggiando quel pacchetto.

traceroute 4.2.2.2

traceroute to 4.2.2.2 (4.2.2.2), 30 hops max, 60 byte packets
 1  192.168.50.1 (192.168.50.1)  0.217 ms  0.624 ms  0.133 ms
 2  227.18.106.27.mysipl.com (27.106.18.227)  2.343 ms  1.910 ms  1.799 ms
 3  221-231-119-111.mysipl.com (111.119.231.221)  4.334 ms  4.001 ms  5.619 ms
 4  10.0.0.5 (10.0.0.5)  5.386 ms  6.490 ms  6.224 ms
 5  gi0-0-0.dgw1.bom2.pacific.net.in (203.123.129.25)  7.798 ms  7.614 ms  7.378 ms
 6  115.113.165.49.static-mumbai.vsnl.net.in (115.113.165.49)  10.852 ms  5.389 ms  4.322 ms
 7  ix-0-100.tcore1.MLV-Mumbai.as6453.net (180.87.38.5)  5.836 ms  5.590 ms  5.503 ms
 8  if-9-5.tcore1.WYN-Marseille.as6453.net (80.231.217.17)  216.909 ms  198.864 ms  201.737 ms
 9  if-2-2.tcore2.WYN-Marseille.as6453.net (80.231.217.2)  203.305 ms  203.141 ms  202.888 ms
10  if-5-2.tcore1.WV6-Madrid.as6453.net (80.231.200.6)  200.552 ms  202.463 ms  202.222 ms
11  if-8-2.tcore2.SV8-Highbridge.as6453.net (80.231.91.26)  205.446 ms  215.885 ms  202.867 ms
12  if-2-2.tcore1.SV8-Highbridge.as6453.net (80.231.139.2)  202.675 ms  201.540 ms  203.972 ms
13  if-6-2.tcore1.NJY-Newark.as6453.net (80.231.138.18)  203.732 ms  203.496 ms  202.951 ms
14  if-2-2.tcore2.NJY-Newark.as6453.net (66.198.70.2)  203.858 ms  203.373 ms  203.208 ms
15  66.198.111.26 (66.198.111.26)  201.093 ms 63.243.128.25 (63.243.128.25)  206.597 ms 66.198.111.26 (66.198.111.26)  204.178 ms
16  ae9.edge1.NewYork.Level3.net (4.68.62.185)  205.960 ms  205.740 ms  205.487 ms
17  vlan51.ebr1.NewYork2.Level3.net (4.69.138.222)  203.867 ms vlan52.ebr2.NewYork2.Level3.net (4.69.138.254)  202.850 ms vlan51.ebr1.NewYork2.Level3.net (4.69.138.222)  202.351 ms
18  ae-6-6.ebr2.NewYork1.Level3.net (4.69.141.21)  201.771 ms  201.185 ms  201.120 ms
19  ae-81-81.csw3.NewYork1.Level3.net (4.69.134.74)  202.407 ms  201.479 ms ae-92-92.csw4.NewYork1.Level3.net (4.69.148.46)  208.145 ms
20  ae-2-70.edge2.NewYork1.Level3.net (4.69.155.80)  200.572 ms ae-4-90.edge2.NewYork1.Level3.net (4.69.155.208)  200.402 ms ae-1-60.edge2.NewYork1.Level3.net (4.69.155.16)  203.573 ms
21  b.resolvers.Level3.net (4.2.2.2)  199.725 ms  199.190 ms  202.488 ms

4. Comando Netstat

Il comando Netstat (Statistica di rete) mostra le informazioni sulla connessione, le informazioni sulla tabella di routing, ecc. Per visualizzare le informazioni sulla tabella di routing utilizzare l'opzione come -r.

netstat -r

Kernel IP routing table
Destination     Gateway         Genmask         Flags   MSS Window  irtt Iface
192.168.50.0    *               255.255.255.0   U         0 0          0 eth0
link-local      *               255.255.0.0     U         0 0          0 eth0
default         192.168.50.1    0.0.0.0         UG        0 0          0 eth0

Per ulteriori esempi di comando Netstat, leggi il nostro articolo precedente su 20 esempi di comandi Netstat in Linux.

Aggiornamento: il comando netstat è sostituito dal comando ss (socket Statistics) nella maggior parte delle moderne distribuzioni Linux.

5. Comando di scavo

Dig (domain information groper) interroga informazioni relative al DNS come A Record, CNAME , MX Record, ecc. Questo comando viene utilizzato principalmente per risolvere i problemi delle query relative al DNS.

dig linux-console.net; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.10.rc1.el6 <<>> linux-console.net
;; global options: +cmd
;; Got answer:
;; ->>HEADER<

Per ulteriori esempi di Dig Command, leggi l'articolo su 10 comandi Dig di Linux per interrogare il DNS.

6. Comando Nslookup

Il comando nslookup viene utilizzato anche per trovare query correlate al DNS. I seguenti esempi mostrano il record A (indirizzo IP) di linux-console.net.

nslookup linux-console.net
Server:         4.2.2.2
Address:        4.2.2.2#53

Non-authoritative answer:
linux-console.net canonical name = linux-console.net.
Name:   linux-console.net
Address: 50.116.66.136

Per ulteriori informazioni sul comando Nslookup, leggi l'articolo su 8 esempi di comandi Nslookup per Linux.

7. Comando di percorso

Il comando route mostra e manipola anche la tabella di routing ip. Per visualizzare la tabella di routing predefinita in Linux, digita il seguente comando.

route

Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
192.168.50.0    *               255.255.255.0   U     0      0        0 eth0
link-local      *               255.255.0.0     U     1002   0        0 eth0
default         192.168.50.1    0.0.0.0         UG    0      0        0 eth0

Aggiunta, eliminazione di percorsi e gateway predefinito con i seguenti comandi.

Aggiungi percorso in Linux
route add -net 10.10.10.0/24 gw 192.168.0.1
Elimina percorso in Linux
route del -net 10.10.10.0/24 gw 192.168.0.1
Aggiungi gateway predefinito in Linux
route add default gw 192.168.0.1

8. Comando dell'ospite

Comando host per trovare un nome su IP o IP per nominare in IPv4 o IPv6 e interrogare anche i record DNS.

host www.google.com

www.google.com has address 173.194.38.180
www.google.com has address 173.194.38.176
www.google.com has address 173.194.38.177
www.google.com has address 173.194.38.178
www.google.com has address 173.194.38.179
www.google.com has IPv6 address 2404:6800:4003:802::1014

Utilizzando -t un'opzione per scoprire i record di risorse DNS come CNAME, NS, MX, SOA , ecc.

host -t CNAME www.redhat.com

www.redhat.com is an alias for wildcard.redhat.com.edgekey.net.

9. Comando Arp

ARP (Address Risoluzione Protocol) è utile per visualizzare/aggiungere il contenuto delle tabelle ARP del kernel. Per visualizzare la tabella predefinita utilizzare il comando as.

arp -e

Address                  HWtype  HWaddress           Flags Mask            Iface
192.168.50.1             ether   00:50:56:c0:00:08   C                     eth0

10. Comando Ethtool

ethtool sostituisce mii-tool. Serve per visualizzare, impostare la velocità e il duplex della tua scheda di interfaccia di rete(NIC). Puoi impostare il duplex in modo permanente in /etc/sysconfig/network-scripts/ifcfg-eth0 con la variabile ETHTOOL_OPTS.

ethtool eth0

Settings for eth0:
        Current message level: 0x00000007 (7)
        Link detected: yes

11. Comando Iwconfig

Il comando iwconfig in Linux viene utilizzato per configurare un'interfaccia di rete wireless. Puoi visualizzare e impostare i dettagli Wi-Fi di base come il canale SSID e la crittografia. Puoi fare riferimento alla pagina man di iwconfig per saperne di più.

iwconfig [interface]

12. Comando nome host

Il nome host serve per identificare in una rete. Esegui il comando hostname per vedere il nome host del tuo box. Puoi impostare il nome host in modo permanente in /etc/sysconfig/network. È necessario riavviare il box una volta impostato il nome host corretto.

hostname 

linux-console.net

13. Strumenti Nmcli e Nmtui

Gli strumenti Nmcli e Nmtui vengono utilizzati per configurare le impostazioni di rete e anche per gestire i dispositivi di rete, creare, modificare, attivare/disattivare ed eliminare le connessioni di rete nei sistemi Linux.

nmcli
nmtui

Questo articolo può essere utile per l'uso quotidiano degli amministratori di rete Linux nei sistemi operativi Linux/simili a Unix. Si prega di condividere attraverso la nostra casella dei commenti se ci siamo persi.