Introduzione
ifconfig
(configurazione dell'interfaccia) è uno strumento di gestione della rete. Viene utilizzato per configurare e visualizzare lo stato delle interfacce di rete nei sistemi operativi Linux. Con ifconfig
, puoi assegnare indirizzi IP, abilitare o disabilitare interfacce, gestire cache ARP, route e altro.
In questo articolo, esploreremo come utilizzare il comando ifconfig
.
Come installare ifconfig
Il comando ifconfig
è deprecato e sostituito con ip
e potrebbe non essere incluso nelle nuove distribuzioni Linux.
Se ricevi un messaggio di errore che dice "ifconfig: command not found
", significa che il pacchetto che contiene il comando non è installato sul tuo sistema.
Installare ifconfig su Ubuntu/Debian
Nelle distribuzioni Linux basate su Ubuntu e Debian, eseguire il comando seguente per installare ifconfig
:
sudo apt install net-tools -y
Installare ifconfig su Centos
Per installare ifconfig
su CentOS e altre distribuzioni Linux basate su RHEL, digitare:
sudo dnf install net-tools -y
Come usare il ifconfig comando
La sintassi di base del comando ifconfig
è mostrata di seguito:
ifconfig [-a] [-v] [-s] <interface> [[<AF>] <address>]
Dove:
interface
- è il nome dell'interfaccia di rete.address
- è l'indirizzo IP che si desidera assegnare.
Le configurazioni impostate con il comando ifconfig
non sono persistenti. Dopo un riavvio del sistema, tutte le modifiche vengono perse. Per rendere permanenti le modifiche, è necessario modificare i file di configurazione specifici della distribuzione o aggiungere i comandi a uno script di avvio.
Solo root o utenti con privilegi sudo possono configurare le interfacce di rete.
Visualizzare informazioni sulle interfacce di rete
Quando viene richiamato senza alcuna opzione, ifconfig
visualizza le informazioni di configurazione di tutte le interfacce di rete e l'indirizzo IP associato:
ifconfig -a
L'output include informazioni su tutte le interfacce di rete attive e inattive:
docker0 Link encap:Ethernet HWaddr 56:84:7a:fe:97:99
inet addr:172.17.42.1 Bcast:0.0.0.0 Mask:255.255.0.0
UP BROADCAST MULTICAST MTU:1500 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:0 (0.0 B) TX bytes:0 (0.0 B)
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:4198 errors:0 dropped:0 overruns:0 frame:0
TX packets:4198 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1
RX bytes:498729 (498.7 KB) TX bytes:498729 (498.7 KB)
eth0 Link encap:Ethernet HWaddr 4c:bb:58:9c:f5:55
inet addr:172.20.10.3 Bcast:172.20.10.15 Mask:255.255.255.240
inet6 addr: 2401:4900:1d65:40a1:4ebb:58ff:fe9c:f555/64 Scope:Global
inet6 addr: 2401:4900:1d65:40a1:f1c9:6a90:2d99:924e/64 Scope:Global
inet6 addr: fe80::4ebb:58ff:fe9c:f555/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:84110 errors:0 dropped:0 overruns:0 frame:0
TX packets:59727 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:70667629 (70.6 MB) TX bytes:20886290 (20.8 MB)
Per visualizzare le informazioni di configurazione di qualsiasi interfaccia di rete specifica, scrivi il nome dell'interfaccia dopo il comando:
ifconfig eth0
L'output sarà simile a questo:
eth0 Link encap:Ethernet HWaddr 4c:bb:58:9c:f5:55
inet addr:172.20.10.3 Bcast:172.20.10.15 Mask:255.255.255.240
inet6 addr: 2401:4900:1d65:40a1:4ebb:58ff:fe9c:f555/64 Scope:Global
inet6 addr: 2401:4900:1d65:40a1:f1c9:6a90:2d99:924e/64 Scope:Global
inet6 addr: fe80::4ebb:58ff:fe9c:f555/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:84110 errors:0 dropped:0 overruns:0 frame:0
TX packets:59727 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:70667629 (70.6 MB) TX bytes:20886290 (20.8 MB)
Assegnare un indirizzo IP e una maschera di rete a un'interfaccia di rete
Con il comando ifconfig
è possibile assegnare un indirizzo IP e una maschera di rete a un'interfaccia di rete.
Utilizzare la seguente sintassi per assegnare l'indirizzo IP e la maschera di rete:
ifconfig [interface-name] [ip-address] netmask [subnet-mask]
Ad esempio, per assegnare l'indirizzo IP 192.168.0.101
e la maschera 255.255.0.0
di rete all'interfaccia eth0
, dovresti eseguire:
ifconfig eth0 192.168.0.101 netmask 255.255.0.0
È inoltre possibile assegnare un indirizzo IP secondario a un'interfaccia di rete utilizzando l'aliasing dell'interfaccia:
ifconfig eth0:0 192.168.0.102 netmask 255.255.0.0
Abilitare e disabilitare un'interfaccia di rete
A volte, potrebbe essere necessario ripristinare l'interfaccia di rete. In questo caso, il comando ifconfig
può essere utilizzato per abilitare o disabilitare un'interfaccia di rete.
Per disabilitare un'interfaccia di rete attiva, inserire il nome del dispositivo seguito dal flag down
:
ifconfig eth0 down
Per abilitare un'interfaccia di rete inattiva, utilizzare il flag up
:
ifconfig eth0 up
Abilitare e disabilitare la modalità promiscua (Promiscuous Mode)
Promiscua consente a un'interfaccia di rete di accedere e visualizzare tutti i pacchetti in una rete. È possibile utilizzare il comando ifconfig
per abilitare e disabilitare il promiscuo su un dispositivo di rete specifico.
Per abilitare la modalità promiscua su un'interfaccia di rete, inserire il flag promisc
dopo il nome del dispositivo:
ifconfig eth0 promisc
Per disabilitare la modalità promiscua utilizzare il flag -promisc
ifconfig eth0 -promisc
Modificare MTU di un'interfaccia di rete
L'MTU “Maximum Transmission Unit” consente di limitare la dimensione dei pacchetti che vengono trasmessi su un'interfaccia.
È possibile modificare il valore MTU utilizzando la sintassi:
ifconfig [interface-name] mtu [mtu-value]
Ad esempio, imposta il valore MTU di un'interfaccia di rete eth0
su 500
, esegui il seguente comando:
ifconfig eth0 mtu 500
Modificare l'indirizzo MAC di un'interfaccia di rete
Il MAC "Media Access Control" è l'indirizzo fisico che identifica in modo univoco i dispositivi su una rete.
Per modificare l'indirizzo MAC di un'interfaccia di rete, utilizzare il flag hw ether
per impostare il nuovo indirizzo MAC:
ifconfig eth0 hw ether 00:00:2d:3a:2a:28
Conclusione
Ti abbiamo mostrato come utilizzare il comando ifconfig
per configurare e visualizzare le informazioni su un'interfaccia di rete. Per maggiori informazioni su ifconfig
, visita la pagina man del comando ifconfig.