The GNOME NetworkManager Applet
[Posted January 25, 2006 by cook]
Every once in a while, your author stumbles across a really useful
piece of software. It all started when I decided to do some
experimentation with 802.11g wireless networking. I procured a Linksys
WRT54G-v4 router, borrowed a Windows XP box to get the router going,
connected it to my LAN and was "on the air". This router happens to
allow uploading of open-source firmware, I plan on experimenting with
that after I become comfortable with the technology in its
native state.
The other end of my limited
wireless network involves a desktop PC with a D-Link Air Plus Xtreme G
DWL-G520 wireless card and a Hawking Technology directional antenna
with 7db of gain. The antenna is an optional accessory that is
useful for extending the range of the wireless connection.
The desktop machine also has a wired 100-T ethernet card.
The remote machine is running the Ubuntu "Breezy Badger" (5.10)
distribution and the GNOME desktop.
Ubuntu is fairly new to me, and I decided to see how far one could
get with the GUI-based networking tools. I was able to simply plug in the
D-Link card to the machine and boot, the card was auto-detected.
In a similar experiment with a Fedora Core 4 system, the card was not
detected.
The GNOME network configuration
tool is fairly straightforward, just click on the desired wireless
interface and tweak the properties. It is sufficient for connecting
the machine to a single wireless network, but becomes painful when
experimenting with connections to multiple networks.
Switching to a different network involves several minutes of waiting,
and the signal strength information is missing.
I want to be able to rotate my directional antenna in order to get the
best signal on distant networks.
The wireless-tools package contains the command line utility
iwlist,
which dumps out a bunch of information for each network that is in
reception range.
This can be useful for finding basic signal strengths, and seeing which
channels are in use in your area. I configured my Linksys box to
work on an unused channel.
Enter
NetworkManager.
The Ubuntu package description for NetworkManager says:
NetworkManager attempts to keep an active network connection available at all
times. It is intended only for the desktop use-case, and is not intended for
usage on servers. The point of NetworkManager is to make networking
configuration and setup as painless and automatic as possible. If using DHCP,
NetworkManager is _intended_ to replace default routes, obtain IP addresses
from a DHCP server, and change nameservers whenever it sees fit.
In other words, NetworkManager provides a higher level system on top
of the existing network utilities. It also provides a useful
desktop applet for displaying connection information and switching
between networks.
To connect to a wireless network, just left-click the mouse on the
network manager applet, and pick a network from the available list.
Right clicking the applet brings up a list of configuration options.
My neighborhood has an ever-changing number of wireless networks,
most of them are configured with keys, a few of them are wide open.
Keyed networks require you to enter the appropriate pass phrase.
After the network has been selected, the NetworkManager applet
lights up one, then two virtual LEDs to signal the steps in the
connection process. A progress bar and a fun spinning
comet are also displayed in the applet while connecting.
Networks with weak signal strengths will not connect, and both virtual
LEDs will not light up. Eventually, the connection attempt will time
out and the applet will display a not-connected icon.
Unlike the GNOME network configuration tool, NetworkManager allows
you to quickly abort a connection that is not succeeding, and switch
to another one.
Once you successfully connect to a network, the applet icon will change
into a set of four signal strength bars, these change up and down
with the signal strength. Placing the mouse over the applet also
displays a numerical signal strength value, I leave my mouse in
this position and slowly rotate the antenna for best results.
NetworkManager has the ability to detect and auto-switch to a wired
ethernet. This makes it especially useful for laptop users who frequently
move between home, work and the internet cafe.
Areas for improvement
While very useful, NetworkManager is also fairly experimental software.
The documentation is currently very sparse. It took a significant
amount of digging to figure out how to get the nm-applet to show up
on the desktop.
(Hint: System->Preferences->Sessions->Startup Programs->Add).
The signal strength display can be used for optimizing the
antenna direction, but it is just slow enough to make this process
painful. The update time is in the order of several seconds.
This may be a limitation of the hardware.
It would be nice if the channel number was displayed in the list
of networks.
Playing with the GNOME network configuration tool while
NetworkManager was running caused my machine to hang, this isn't
too surprising considering the various processes that are contending
for the same resources, but it is nonetheless a "bad behavior".
NetworkManager scores highly as a functional tool for automating
the process of switching between wired and wireless networks,
your editor plans on keeping this application around.
Addendum: RedHat Magazine published a very informative article
in January of 2005 entitled
Introducing NetworkManager.
(
Log in to post comments)