Tools to analyze and monitor
Linux comes with many tools to monitor networking tasks.
ifconfig
We used the ifconfig
command above to see the
status of the ethernet card. However, ifconfig
can configure devices as well as report on them. Suppose you want to set
up a temporary network configuration for testing. You could edit the
configuration through the distribution tool, but you would need to note
all of the settings to put it back when you're done. By using ifconfig
, we can configure the card quickly without
touching the saved settings:
ifconfig eth0 192.168.13.13 netmask 255.255.255.0 up
The command above will set eth0 to the address 192.168.13.13 with a Class C IP address and make sure that it is up.
ifconfig eth0 down
The command above will shut down the eth0 device. See the info ifconfig
page for full details on using ifconfig
.
ifup/ifdown
To activate and deactivate network devices using their saved
configurations, use ifup
and ifdown
, respectively.
# Bring up eth0 using the saved configuration
ifup eth0
# Shut down eth0
ifdown eth0
netstat
Use the netstat
console command to print
network connections, routing tables, interface statistics, masquerade
connections, and multicast memberships. netstat
has several command line switches to control
its function. Here are some of the common ones:
Printing network status
netstat -p | Shows the PID and name of the program to which each socket belongs |
netstat -a | Shows both listening and non-listening sockets |
netstat -t | Shows TCP connections |
netstat -u | Shows UDP connections |
netstat -e | Displays additional information; use this option twice for maximum detail |
Here's an example of netstat -tp
:
|
I use netstat
most often to view connections
that are in the LISTEN or ESTABLISHED states. LISTEN are the services on
your system that are accepting connections from other machines.
ESTABLISHED are the active connections between your machine and others.
Make sure you know all of the LISTEN programs that are running. If you
see something you don't recognize, it could be a security concern. netstat
has many options. Type info netstat
at the command line for details.
route
The route
console command lets you show
and manipulate the IP routing table.
|
Running route
with no switches will show the
current routing table. You can make very elaborate changes to the routing
table using route
.
route add default gw 10.10.10.1
The above command adds a default route (which will be used if no other route matches). All packets using this route will be gatewayed through "10.10.10.1". The device that will actually be used for that route depends on how we can reach "10.10.10.1" -- the static route to "10.10.10.1" will have to be set up before.
route add -net 192.56.76.0 netmask 255.255.255.0 dev eth0
The above command adds a route to the network 192.56.76.x via "eth0." The Class C netmask modifier is not really necessary here because 192.* is a Class C IP address. The word "dev" can be omitted here.
Routing is a very deep subject. Full information about the route
options is available with info route
.
Summary
Linux was designed for networking from the start. It has built into it
sophisticated functions that were previously found only on high-end
enterprise offerings. However, even
with all of this power, configuration of Linux networking is no
more complex than configuration in Windows. Tools such as Webmin,
redhat-config-network, and YAST allow graphical configuration. Tools such
as ifconfig
and route
allow viewing and modification of network
parameters from the console or scripts. Tools such as netstat
allow viewing of individual network
connections and show their relationships to running processes.
View Windows-to-Linux roadmap: Part 7. Networking Discussion
Page: 1 2 3 4 Next Page: Resources