Qual è la differenza tra Network Manager e 'ifconfig' 'ifup', ecc?


53

Ubuntu sembra fornire almeno due "set di strumenti" di rete (per mancanza di un termine migliore). Sto incontrando conflitti tra questi due.

Mi imbatto spesso in conflitti tra questi diversi set di strumenti. Ad esempio, sto eseguendo Ubuntu Desktop a casa e sto usando software come KVM / libvirt che mi consiglia di disabilitare Network Manager , ma la disabilitazione di Network Manager causa altre cose.

Qual è la differenza tra Network Manager e gli strumenti di rete tradizionali? Queste due suite possono funzionare fianco a fianco o devo restare con l'una o l'altra? Esiste un documento che sintetizza la differenza tra questi diversi strumenti? Non sono stato in grado di trovarne uno.

(Perdona la vaghezza di questa domanda. Ho cercato e cercato una risposta, ma ho trovato solo molte risposte vaghe che non sembrano rilevanti per Ubuntu 10.04 / Lucid, e potrei non comprendere appieno lo scopo di NetworkManager. , questa sembra essere una domanda frequente. Se hai dei consigli per chiarire questa domanda, pubblica un commento.)

Risposte:


53

NetworkManagere ifconfignon sono (per impostazione predefinita) compatibili ( NetworkManagernon configureranno le interfacce elencate in /etc/network/interfaces). NetworkManagerè una sorta di demone delle impostazioni che assicura che più utenti possano modificare le connessioni di rete, questo è molto intelligente in un ambiente desktop (specialmente su laptop che potrebbero spostarsi tra reti wireless diverse). Fondamentalmente NetworkManagerè un frontend iproute, dhclient, wpa_supplicante ppp.

ifconfig è uno strumento generale per la configurazione delle interfacce di rete, ad esempio puoi fare così:

ifconfig eth1 10.0.0.1 netmask 255.0.0.0 hw ether 10:10:10:10:10:10
ifconfig eth1 down

per impostare il tuo indirizzo IP, la maschera di rete e l'indirizzo MAC di eth1, quindi giù (disabilita / spegni) la tua interfaccia. ifconfignon legge alcun file di configurazione e fa solo esattamente ciò che viene detto.

ifupe ifdownsono programmi di supporto che utilizzano ifconfigper configurare un'interfaccia di rete in conformità con /etc/network/interfacesquesto assicureranno che se ci sono script su, giù, pre-up, pre-down, post-up, post-down che devono essere eseguiti essere.

Ok, allora c'è wpa_supplicante dhclient. dhclientè un client DHCP - ifuplo userà se un'interfaccia di rete è configurata per DHCP, come farà NetworkManager. wpa_supplicantè uno strumento per configurare la crittografia su reti wireless.

La maggior parte di questi strumenti ha pagine man, ad esempio il file interfaces ha una sua manpage che descrive il formato di quel file di configurazione.

man interfaces
man ifconfig
man ifup

Quindi, detto questo, ti consiglio di rimuovere (o disabilitare) NetworkManager, non credo che nulla rimuoverà dalla rimozione, NetworkManagertranne gli strumenti gui per la configurazione della rete. Se si desidera configurare il wireless senza che NetworkManagersi desideri guardare questo .


8

Questi set di strumenti sono complementari, non si escludono a vicenda.

FWIW, ifconfigè solo uno strumento tra gli altri *configstrumenti che vengono utilizzati per configurare le interfacce di rete.

Gli strumenti ifup(8)e ifdown(8)sono uno strato sopra gli *configstrumenti. Puoi pensarli come strumenti di aiuto.

Allo stesso modo, NetworkManager è un livello sopra gli strumenti ifup(8)e ifdown(8). Per mancanza di un termine migliore, NetworkManager è in grado di orchestrare gli strumenti (ets) dai livelli sottostanti al fine di realizzare attività di livello superiore come la Condivisione connessione Internet con facilità aggiuntiva rispetto al semplice utilizzo degli strumenti dai livelli sottostanti.


Se desideri ulteriori dettagli lascia un commento e io lo obbligherò.
Li Lo

2
@Li Lo: Sì, si prega di fornire ulteriori dettagli. Ho pensato che ifup / ifdown avrebbe modificato gli host in / etc / network / interfaces e Network Manager avrebbe ignorato tutte le interfacce in / etc / network / interfaces. (Vedi la domanda "d. Perché Network Manager non gestisce le mie reti?" In FAQ / Problemi comuni /
Insidie

Ehm, ifup / ifdown usa / etc / network / interfaces e sono separati da NetworkManager. NetworkManager non scherza affatto con / etc / network / interfaces, tranne per la lettura predefinita di un elenco di interfacce da ignorare.
user1338062

Ha votato in negativo questa risposta poiché è stata dichiarata chiaramente errata e non c'è risposta dal poster. Quindi presumo che l'accusa sia vera.
Penghe Geng,

0

Network Manager è un programma GUI utilizzato quando si ha a che fare con Ubuntu come sistema operativo per workstation installato sul desktop / laptop.

Le utility di tipo ifconfig sono basate sulla riga di comando e vengono utilizzate quando si ha a che fare con Ubuntu come sistema operativo server, quando non si dispone di un'interfaccia grafica disponibile (ad esempio, quando si avvia un'istanza Amazon EC2 basata su Ubuntu) . Sono in genere utilizzati su una connessione ssh.


6
Sì, una volta ho usato il ifdowncomando su una connessione ssh. Non ha funzionato troppo bene per me.
Igor Zinov'yev,

5
Network Manager non è solo una GUI. Esiste anche un demone del gestore della rete, che è un pacchetto diverso dall'applet GUI del gestore della rete. Qual è la differenza tra il gestore della rete e gli strumenti di rete tradizionali?
Stefan Lasiewski,

1
NetworkManager funziona su supplicant di wpa che è / un altro / strumento per configurare la rete. / etc / network / interfaces può anche effettuare chiamate a supplente wpa
maco

1
In realtà NetworkManager non è uno strumento solo per GUI. puoi usarlo anche con la riga di comando.
LittleByBlue,

Questa risposta è sbagliata. ifconfigè solo un vecchio strumento per il networking.
LittleByBlue,

0

Se rimuovi il gestore di rete suppongo che devi configurare / etc / network / interface per far funzionare le interfacce.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.