use the ifconfig
command at the shell prompt or Fedora's graphical network configuration tools, such as system-config-network,
to edit your system's network device information or to add or remove network devices on your system. Hundreds of networking commands and utilities are included with Fedora — far too many to cover in this chapter and more than enough for coverage in two or three volumes.
Nearly all ethernet cards can be used with Linux, along with many PCMCIA wired and wireless network cards. The great news is that many USB wireless network devices also work just fine with Linux, and more will be supported with upcoming versions of the Linux kernel. Check the Linux USB Project at http://www.linux-usb.org/ for the latest developments or to verify support for your device.
After reading this chapter, you might want to learn more about other graphical network clients for use with Linux. The GNOME ethereal
client, for example, can be used to monitor all traffic on your LAN or specific types of traffic. Another client, NmapFE, can be used to scan a specific host for open ports and other running services.
Advanced Wireless Networking
As stated earlier, Linux has had support for wireless networking since the first standards were developed in the early 1990s. With computers getting smaller and smaller, the uses for wireless networking have increased; meanwhile, the transmission speeds also are increasing all the time. There are several different ways to create a wireless network. The following sections introduce you to several Linux commands you can use to initialize, configure, and manage wireless networking on your Fedora system.
Support for Wireless Networking in Fedora
The Linux kernel that ships with Fedora provides extensive support for wireless networking. Related wireless tools for configuring, managing, or displaying information about a wireless connection include the following:
> iwconfig
— Sets the network name, encryption, transmission rate, and other features of a wireless network interface
> iwlist
— Displays information about a wireless interface, such as rate, power level, or frequency used
> iwpriv
— Uses i to set optional features, such as roaming, of a wireless network interface
> iwspy
— Shows wireless statistics of a number of nodes
Support varies for wireless devices — most likely in the form of a PCMCIA adapter — although some USB wireless devices now work with Linux. In general, Linux wireless device software (usually in the form of a kernel module) supports the creation of an ethernet device that can be managed by traditional interface tools such as ifconfig
— with wireless features of the device managed by the various wireless software tools.
For example, when a wireless networking device is first recognized and initialized for use, the driver will most likely report a new device:
wvlan_cs: WaveLAN/IEEE PCMCIA driver v1.0.6
wvlan_cs: (c) Andreas Neuhaus <[email protected]>
wvlan_cs: index 0x01: Vcc 3.3, irq 3, io 0x0100-0x013f
wvlan_cs: Registered netdevice eth0
wvlan_cs: MAC address on eth0 is 00 05 5d f3 1d da
This output (from the dmesg
command) shows that the eth0
device has been reported. If DHCP is in use, the device should automatically join the nearest wireless subnet and be automatically assigned an IP address. If not, the next step is to use a wireless tool such as iwconfig
to set various parameters of the wireless device. The iwconfig
command, along with the device name (eth0
in this example), shows the status:
# iwconfig eth0
eth0 IEEE 802.11-DS ESSID:'GreyUFO' Nickname:'Prism I'
Mode:Managed Frequency:2.412GHz Access Point: 00:02:2D:2E:FA:3C
Bit Rate:2Mb/s Tx-Power=15 dBm Sensitivity:1/3
RTS thr:off Fragment thr:off
Encryption key:off
Power Management:off
Link Quality:92/92 Signal level:-11 dBm Noise level:-102 dBm
Rx invalid nwid:0 Rx invalid crypt:0 Rx invalid frag:0
Tx excessive retries:0 Invalid misc:4 Missed beacon:0
This example shows a 2Mbps connection to a network named GreyUFO
. To change a parameter, such as the transmission rate, use a command-line option with the iwconfig
command, like so:
# iwconfig eth0 rate 11M
Other options supported by the iwconfig
command include essid, used to set the NIC to connect to a specific network by named; mode
, used to enable the NIC to automatically retrieve settings from an access point or connect to another wireless host; or freq
, to set a frequency to use for communication. Additional options include channel, frag, enc
(for encryption), power
, and txpower
. Details and examples of these options are in the iwconfig
manual page.
You can then use the ifconfig
command or perhaps a graphical Fedora tool to set the device networking parameters, and the interface will work as on a hardwired LAN. One handy output of the iwconfig
command is the link quality output, which can be used in shell scripts or other graphical utilities for signal monitoring purposes (refer to Chapter 15, 'Remote Access with SSH,' for an example).
TCP/IP Addressing
To understand networking with Linux, you need to know the basics of TCP/IP addressing. Internet IP addresses are assigned (for the United States and some other hosts) by the American Registry for Internet Numbers, available at http://www.arin.net/. The agency assigns
You will quickly recognize the current form of TCP/IP addressing, known as IPv4 (IP version 4). In this method, a TCP/IP address is expressed of a series of four decimal numbers — a 32-bit value expressed in a format known as dotted-decimal format, such as 192.168.120.135. Each set of numbers is known as an octet (eight ones and zeros, such as 10000000 to represent 128) and ranges from 0 to 255.
The first octet usually determines what
> Class A — Consists of networks with the first octet ranging from 1 to 126. There are only 126 Class A networks — each composed of up to 16,777,214 hosts. (If you are doing the math, there are potentially 16,777,216 addresses, but no host portion of an address can be all zeros or 255s.) The '10.' network is reserved for local network use, and the '127.' network is reserved for the