Stupied network - Why can't it be friendly?

Dan Williams dcbw at redhat.com
Tue Oct 12 14:13:04 UTC 2004


On Tue, 2004-10-12 at 12:55 +0200, Perra wrote:
> Cool, I assume it's independant of X running too. Can it handle local 
> crossover links as well?

There are really three parts to NetworkManager:

1) root daemon manages network, depends on glib, hal, and dbus.  Its NOT
gnome specific, and was written to be independent.

2) User side daemon to shovel preferences to the root daemon and throw
up dialogs when necessary (ie, asking for a WEP key when needed).
Current implementation is gnome specific (ie uses GTK and GConf), but
since the API with NetworkManager is dbus-based, there could be KDE or
other implementations too.

3) Notification area applet, shows network devices and wireless networks
and allows you to choose your connection if you like.  Also gnome
specific, but could be reimplemented for KDE since again, the API with
NetworkManager is dbus based.

For your local crossover links question, NM supports static IP addresses
that you've configured with system-config-network (NetworkManager pulls
config info from /etc/sysconfig/network-scripts/ifcfg-* files), so if
you have that set up, your crossover connection between two computers
should work fine.

> I don't wanna disable the network interfaces during startup since I run 
> rc.local services that needs net access (net provider login & NTP time 
> sync). This might not be a problem if NetworkManager allows having 
> programs to be run when link goes up/down. Then I usually get my 
> hostname during this step and starting x before the hostname is set 
> isn't a very good idea...

NetworkManager will not disrupt a wired/Ethernet connection that's
currently active when it is started up.  It will blow away any wireless
connection you have up though.  So, I don't think you'd have a problem
here, since NM will respect the wired connection that the 'network'
scripts setup when you booted.

NetworkManager also attempts to preserve the hostname that exists before
it activates a specific device, which was done to prevent X from
crapping out when your hostname changes due to DHCP.

Whenever NetworkManager deactivates a device, it sends a
"DeviceNoLongerActive" signal out to the bus, and when it activates a
device, it sends a "DeviceNowActive" signal.  There's a daemon called
NetworkManagerDispatcher that watches for these signals, and runs any
script in /etc/NetworkManager.d.  So you could, for example, run a VPN
setup script whenever a device becomes active, and always have a VPN
connection up and running no matter where you are.

Dan





More information about the test mailing list