Linux NetworkManager a Solid Tool with New Features - page 2
What is NetworkManager?
For my money, the most interesting feature in 0.8.1 is nmcli, a command line interface for NetworkManager. Though NetworkManager has been a major leap forward for managing network connections, it took a bit of a step backwards from the old-fashioned way of managing network connections by neglecting a command line interface. What's wrong with just having a GUI to configure network connections?
Several things. Some users may not be using a desktop environment or window manager that easily supports one of the NetworkManager applets. Or they may not be using a GUI environment at all. Users might also want to write scripts to manage the network interfaces, which is hard to do when the only controller available is a GUI.
Finally, NetworkManager has its very own CLI tool, nmcli. Using nmcli users can query the status of network connections and manage the connections. The tool is still a bit primitive, but the syntax is relatively simple and shouldn't be too hard to pick up for anyone who actually needs to work with NetworkManager at the CLI. For example, to list the network interfaces on the system just run:
nmcli dev list
This will display something like the output below:
- Device: eth0 ----------------------------------------------------------------- Type 802-3-ethernet Driver pcnet32 State connected Default no HW Address 00:0C:29:C3:87:30 Capabilities: Carrier Detect yes Wired Properties Carrier on IPv4 Settings: Address 172.16.146.140 Prefix 24 (255.255.255.0) Gateway 172.16.146.2 DNS 172.16.146.2
If you want to take a connection down, you'd use something like nmcli con down id id, where id is the connection ID. It's not quite as full-featured or flexible as ifconfig yet, but it's a start.
Of course, NetworkManager isn't "finished" and probably never will be. There will always be new devices to support and features to add. And, while NetworkManager makes life simpler for many users by streamlining standard networking configurations, it doesn't adapt as well to unusual configurations.
But, overall, NetworkManager is already one of the killer features of the Linux desktop. If you've never had to think about how complicated it is to manage all the network connections between your home, office, and travel, then you can thank NetworkManager for making life simpler.