ifconfig
proviene da net-tools
, che non è stato in grado di tenere il passo con lo stack di rete Linux per molto tempo. Inoltre utilizza ancora ioctl
per la configurazione di rete, che è un modo brutto e meno potente di interagire con il kernel.
Molte modifiche al codice di rete di Linux e molte nuove funzionalità non sono accessibili utilizzando net-tools
:multipath routing, policy routing (vedi RPDB). route
ti consente di fare cose stupide come aggiungere più percorsi alla stessa destinazione, con la stessa metrica.
Inoltre:
ifconfig
non riporta l'indirizzo hardware corretto per alcuni dispositivi.- Non puoi configurare
ipip
,sit
,gre
,l2tp
, ecc. tunnel statici nel kernel. - Non puoi creare
tun
otap
dispositivi. - Anche il modo di aggiungere più indirizzi a una data interfaccia ha una semantica scadente.
- Non puoi nemmeno configurare il sistema di controllo del traffico di Linux usando
net-tools
o.
Vedi anche ifconfig
fa schifo.
MODIFICA :Rimossa asserzione su net-tools
cessando lo sviluppo che ormai ho dimenticato dove ho preso questo post. net-tools
' su cui si è lavorato dal iproute2
è stato rilasciato, sebbene si tratti principalmente di correzione di bug e miglioramenti e funzionalità minori, come l'internazionalizzazione.
ifconfig
è un comando tradizionale per visualizzare informazioni sulle interfacce di rete e modificare alcune impostazioni. In particolare, può portare le interfacce su e giù. Esiste sulla maggior parte delle varianti unix.
Su Linux, il ifconfig
il comando non si è evoluto da molto tempo. Va ancora perfettamente bene per quello che fa. Se stai usando ifconfig
per qualcosa, non c'è motivo di fermarsi.
Linux fornisce anche ip
comando dalla suite di strumenti iproute2. Il ip
command combina diversi comandi classici e altri, incluso ifconfig
, route
e arp
. ip
può fare molto di più di ifconfig
. D'altra parte, ip
non è sempre presente, specialmente su sistemi embedded (e mai su varianti unix diverse da Linux).
Analisi ifconfig
L'output di fa schifo. Analisi ip
L'output di fa schifo. Nessun vincitore lì.
Solo per aggiungere alcuni bit alla risposta di pilona. Intorno al 2005 è stato introdotto un nuovo meccanismo per il controllo dello stack di rete:i netlink socket.
Per configurare l'interfaccia di rete iproute2
fa uso di quel meccanismo di socket netlink full-duplex, mentre ifconfig
si basa su un ioctl
chiamata di sistema. Ecco 2 documenti principali sulla motivazione dietro netlink e l'utilizzo di rtnetlink.