Section 8.4. Networking


8.4. Networking

Networking is required for almost all machines today, and Linux supports almost every networking option available. Here I am going to show only a few of the wide variety that are present.

For all networking options, including different drivers, the main network configuration option must be enabled:

 Networking     [*] Networking support 

The TCP/IP option should also be selected so that the machine can talk to other machines on the Internet:

 Networking     [*] Networking support           Networking options               [*] TCP/IP networking 

8.4.1. Netfilter

The Netfilter portion of the Linux kernel is a framework for filtering and manipulating all network packets that pass through the machine. It is commonly used if you wish to enable a firewall on the machine to protect it from different systems on the Internet, or to use the machine as a proxy for other machines on the network. For more details on what Netfilter is good for, please see the entry for NETFILTER in Chapter 11.

  1. To enable the main Netfilter option:

     Networking     [*] Networking support           Networking options               [*] Network packet filtering (replaces ipchains) 

  2. It is recommended that you enable the Netfilter netlink interface and Xtables support when using netlink:

     Networking     [*] Networking support           Networking options               [*] Network packet filtering (replaces ipchains)                     Core Netfilter Configuration                         [*] Netfilter netlink interface                         [*] Netfilter Xtables support (required for ip_tables) 

  3. The different protocols that you wish to filter should also be selected:

     Networking     [*] Networking support           Networking options               [*] Network packet filtering (replaces ipchains)                     IP: Netfilter Configuration                         [M] Connection tracking (required for masq/NAT)                         [ ]   Connection tracking flow accounting                         [ ]   Connection mark tracking support                         [ ]   Connection tracking events (EXPERIMENTAL)                         [ ]   SCTP protocol connection tracking support (EXPERIMENTAL)                         [M]   FTP protocol support                         [ ]   IRC protocol support                         [ ]   NetBIOS name service protocol support (EXPERIMENTAL)                         [M]   TFTP protocol support                         [ ]   Amanda backup protocol support                         [ ]   PPTP protocol support                         [ ]   H.323 protocol support (EXPERIMENTAL) 

8.4.2. Network Drivers

Linux supports a wide array of different network devices. The most common one is a PCI network device, into which an Ethernet cable can be plugged. To determine whether you have a PCI network device on the system, and what type it is, run the following command:

 $ /usr/sbin/lspci | grep Ethernet 03:0c.0 Ethernet controller: D-Link System Inc RTL8139 Ethernet (rev 10) 03:0e.0 Ethernet controller: Intel Corporation 82545GM Gigabit Ethernet Controller (rev 04) 

Note that your response will probably not be identical; what is important is that the command shows some PCI Ethernet devices.

  1. Enable PCI support for the kernel:

     Bus options (PCI, PCMCIA, EISA, MCA, ISA) [*] PCI Support 

  2. Enable basic network device support:

     Device Drivers     Network device support         [*] Network device support 

  3. Then comes the fun task of finding the specific device drivers for your hardware. The most common place to find Ethernet devices for modern hardware is in the gigabit section of the driver selection:

     Device Drivers     Network device support         [*] Network device support             Ethernet (1000 Mbit) 

    Some older ethernet devices will be found in the 10- and 100-Mbit section:

     Device Drivers     Network device support         [*] Network device support             Ethernet (10 or 100Mbit) 

    Look through those sections to find the proper driver for your specific devices.

8.4.3. IrDA

IrDA is an infrared protocol used by a number of laptops and PDAs to communicate over very short distances. It is prevalent on older hardware, with newer hardware using Bluetooth to communicate instead. See the later section, "Bluetooth," for configuring Bluetooth.

  1. IrDA is a network protocol, so it can be found under the networking main menu:

     Networking     [*] Networking support     [*]   IrDA (infrared) subsystem support 

  2. A number of different IrDA protocols can be selected, depending on the type of device you wish to communicate with and the program used to do the communication:

     Networking     [*] Networking support         --- IrDA (infrared) subsystem support         ---   IrDA protocols         [*]   IrLAN protocol (NEW)         [*]   IrCOMM protocol (NEW)         [*]   Ultra (connectionless) protocol (NEW) 

  3. There are a wide range of different types of IrDA devices, some serial, some PCI, and others based on USB. To select the specific type of IrDA device you have, choose it under the driver submenu for IrDA:

     Networking     [*] Networking support         --- IrDA (infrared) subsystem support               Infrared-port device drivers               --- SIR device drivers               [ ] IrTTY (uses Linux serial driver)               --- Dongle support               --- Old SIR device drivers               --- Old Serial dongle support               --- FIR device drivers               [ ] IrDA USB dongles               [ ] SigmaTel STIr4200 bridge (EXPERIMENTAL)               [ ] NSC PC87108/PC87338               [ ] Winbond W83977AF (IR)               [ ] Toshiba Type-O IR Port               [ ] SMSC IrCC (EXPERIMENTAL)               [ ] ALi M5123 FIR (EXPERIMENTAL)               [ ] VLSI 82C147 SIR/MIR/FIR (EXPERIMENTAL)               [ ] VIA VT8231/VT1211 SIR/MIR/FIR 

8.4.4. Bluetooth

Bluetooth is a wireless technology that was created to replace IrDA to talk between devices over a very short distance. It is a short-range wireless technology that was designed as a replacement for cables, operates within a 10 meter radius, and is commonly used in mobile phones.

  1. Bluetooth is a network protocol, so it can be found under the networking main menu:

     Networking     [*] Networking support     [*]   Bluetooth subsystem support 

  2. There are two main protocol selections for Bluetooth. Both of these should be enabled in order to work with all types of Bluetooth devices:

     Networking     [*] Networking support         --- Bluetooth subsystem support         [*]   L2CAP protocol support         [*]   SCO links support 

  3. There are relatively few individual Bluetooth devices drivers available, because almost all of these devices follow the Bluetooth specification detailing how devices should operate. The drivers marked in the following list must be selected in order for Bluetooth to work with the device:

     Networking     [*] Networking support         --- Bluetooth subsystem support             Bluetooth device drivers                 [M] HCI USB driver                 [*]   SCO (voice) support                 [ ] HCI UART driver                 [M] HCI BCM203x USB driver                 [M] HCI BPA10x USB driver                 [ ] HCI BlueFRITZ! USB driver                 [ ] HCI DTL1 (PC Card) driver                 [ ] HCI BT3C (PC Card) driver                 [ ] HCI BlueCard (PC Card) driver                 [ ] HCI UART (PC Card) device driver                 [ ] HCI VHCI (Virtual HCI device) driver 

8.4.5. Wireless

Wireless networking is very popular, with almost all modern laptops having a built-in wireless network device. Linux supports a wide range of wireless drivers, with more being added every week. To determine whether you have a PCI wireless device on the system, and what type it is, run the following command:

 $ /usr/sbin/lspci | grep -i wireless 06:05.0 Network controller: Intel Corporation PRO/Wireless 2915ABG MiniPCI Adapter (rev 05) 

Note that your response will probably not be identical; what is important is that the command shows some PCI wireless devices.

  1. To enable wireless support in Linux, the IEEE 802.11 network configuration option must be enabled. (802.11 is the number of the wireless specification that all these devices follow.)

     Networking     [*] Networking support     [*]   Generic IEEE 802.11 Networking Stack 

  2. Also enable the different 802.11 protocol options and the Software MAC option to provide full support for all different types of wireless devices in Linux:

     Networking     [*] Networking support     [*]   Generic IEEE 802.11 Networking Stack     [*]     IEEE 802.11 WEP encryption (802.1x)     [M]     IEEE 802.11i CCMP support     [M]     IEEE 802.11i TKIP encryption     [M]     Software MAC add-on to the IEEE 802.11 networking stack 

  3. Support for the different PCI types of wireless network devices is found under the Network driver section of the configuration:

     Device Drivers     Network device support         Wireless LAN (non-hamradio)             [*] Wireless LAN drivers (non-hamradio) & Wireless Extensions             [*]   Wireless Extension API over RtNetlink 

    There is a wide range of different PCI drivers in this section. Select the proper one depending on the device you have.

The USB wireless networking device drivers are in a different section of the configuration:

 Device Drivers     USB Support         USB Network Adapters 



Linux Kernel in a Nutshell
Linux Kernel in a Nutshell (In a Nutshell (OReilly))
ISBN: 0596100795
EAN: 2147483647
Year: 2004
Pages: 113

flylib.com © 2008-2017.
If you may any questions please contact us: flylib@qtcs.net