Chapter 15. Wireless and orinoco drivers

Revision History
Revision 0.22002-07-20JN
Modification to take care of Bering 1.2 somewhat different setup: wireless.opts not needed anymore !
Revision 0.12002-04-14JN
initial revision

Table of Contents

Step 1: declare the appropriate packages
Step 2: declare the appropriate modules
Step 3: configure ppp
Step 4: configure pcmcia and wireless
Step 5: configure your interfaces file
Step 6: configure Shorewall
Tips and tricks


We want here so setup an internal wireless network that will share an internet access through a Bering firewall. We assume here that your external interface to the internet (eth0) is connected to your ISP via a standard NIC whereas your internal interface (eth1) to your network is connected through a wireless NIC.

What follows has not been tested by the author which does not have the corresponding hardware. Bob Pocius did the testing using an Orinoco Gold PCMCIA card connected to a PC through an ISA/PCMCIA adpater. Thanks to Bob for his help!

The most complete information on wireless under Linux can be found on Jean Tourrilhes web site. Jean is the developper of the wireless tools. He has also a very detailed page on Linux Orinoco drivers.

Henry Psenicka and Bob Pocius have described their use of Bering for the wireleness network of a local government in an article published in the February 2003 of the Sysadmin Journal. Check their paper available on their Wireless LEAF/Bering Project Web page.

Comments on this section should be addressed to its maintainer: Jacques Nilo .

Step 1: declare the appropriate packages

First of all download the pcmcia_orinoco.lrp package from the Bering packages area and rename it pcmcia.lrp. This package is derived from the standard Bering pcmcia.lrp package and includes the orinoco drivers.

You then need to download the wireless.lrp package. Starting with Bering 1.2 you do not need libm.lrp anymore.

Depending on your ISP connection and your network hardware, declare the appropriate packages. For example:

  • ppp, pppoe, and pcmcia if you connect through an ADSL/PPPoE connection and have a wireless NIC connected through a PCMCIA adapter.

  • pcmcia if you connect through a fixed IP cable-modem ISP and have a wireless NIC connected through a PCMCIA adapter.

  • pump, pcmcia if you connect through a dynamic IP cable-modem ISP and have a wireless NIC connected through a PCMCIA adapter.

  • none of the above if you connect through a fixed IP cable-modem ISP and have a PCI native wireless card.

In the first case your syslinux.cfg file will look like (adapt to your own case):

display syslinux.dpy
timeout 0
default linux initrd=initrd.lrp init=/linuxrc rw root=/dev/ram0 boot=/dev/fd0u1680:msdos
	PKGPATH=/dev/fd0u1680 LRP=root,etc,local,modules,iptables,ppp,pppoe,pcmcia,wireless,keyboard,shorwall,ulogd,dnscache,weblet


The last two lines ("default linux ... dnscache,weblet") must be typed as a single one in syslinux.cfg

Step 2: declare the appropriate modules

Declare the modules needed by the packages you are using: network modules and - if necessary - ppp modules.

The network and ppp modules are declared through the modules package configuration menu. Refer to the Bering installation guide.

The pcmcia modules are stored in the /lib/modules/pcmcia directory of the pcmcia package and loaded by the cardmgr program. Refer to the pcmcia section of the Bering user's guide.


Do not declare the pcmcia modules in the /etc/modules file. They will be automatically loaded from the /lib/modules/pcmcia directory by the /etc/init.d/pcmcia script.

Then backup the modules.lrp package and - if necessary - the pcmcia.lrp package.

Step 3: configure ppp

If your connection with your ISP needs PPP please refer to the Serial Modem section of this user's guide to learn how to configure your ppp package.

Step 4: configure pcmcia and wireless

The following modules are provided with the pcmcia_orinoco.lrp package:

# ls -la /lib/modules/pcmcia
drwxr-xr-x    2 root     root         4096 May 25 08:22 ./
drwxrwxrwt   27 root     root         4096 May 25 07:52 ../
-rw-r--r--    1 root     root        11520 May 11 19:08 ds.o
-rw-r--r--    1 root     root         7960 May 11 19:08 hermes.o
-rw-r--r--    1 root     root        38488 May 11 19:08 i82365.o
-rw-r--r--    1 root     root        43668 May 11 19:08 orinoco.o
-rw-r--r--    1 root     root         7888 May 11 19:08 orinoco_cs.o
-rw-r--r--    1 root     root        57393 May 11 19:08 pcmcia_core.o

Check that the PCMCIA modules provided in the pcmcia_orinoco.lrp package fit your needs. If not, download the appropriate modules from the Bering PCMCIA modules download area in the /lib/modules/pcmcia directory. Refer to the Bering installation guide to learn how to do that.

Enter the LEAF Package configuration menu and choose pcmcia. The following menu will appear

                        pcmcia configuration files

        1) pcmcia card local configuration file
        2) pcmcia default parameters
        3) pcmcia card configuration database

  q) quit

Entry 1) allows to edit the /etc/pcmcia/config.opts file. The default file provided in the pcmcia.lrp package is the one provided in the pcmcia-cs package. It looks like:

# System resources available for PCMCIA devices
include port 0x100-0x4ff, port 0x800-0x8ff, port 0xc00-0xcff
include memory 0xc0000-0xfffff, memory 0xa0000000-0xa0ffffff, memory 0x60000000-0x60ffffff
# Resources we should not use, even if they appear to be available
# First built-in serial port
exclude irq 4
# Second built-in serial port
exclude irq 12
# First built-in parallel port
exclude irq 7

Refer to the PCMCIA How-to for the explanation of the different options. In most cases you won't need to edit this file.

Entry 2) allows to edit the /etc/default/pcmcia file which defines the pcmcia parameters that will be used by the cardmgr program and the /etc/init.d/pcmcia script.

In our practical example (an Orinoco gold card) this file will contain:



You may need to specify something like: PCIC_OPTS=i365_base=0x3e2 if you are using an ISA/PCMCIA adapter.

Entry 3) allows to edit the /etc/pcmcia/config file which contains the configuration database for common cards using the orinoco driver. If your card is not present declare it either in the config of in the config.opts file.

Step 5: configure your interfaces file

Trough the LEAF configuration menu type 1 to access to the network configuration menu and 1 again to edit your /etc/network/interfaces file. Enter the following information:

auto lo eth0

iface lo inet loopback

iface eth0 inet dhcp

iface eth1 inet static
	masklen 24
	wireless_mode Ad-Hoc
	wireless_channel 1
	wireless_rate 10M
	wireless_essid Home

We assume here that you get a dynamic IP from your ISP through pump. The corresponding interface (eth0) is brought up automatically at boot time (eth0 is in the auto statement). The wireless NIC is connected to eth1 and is assigned the local address. This interface is NOT brought up automatically at boot time. The pcmcia package will start cardmgr through the /etc/init.d/pcmcia script executed at boot time. The cardmgr program will then call the /etc/pcmcia/network script which will in turn execute the ifup eth1 command.

The wireless commands have to be declared in the iface section with the wireless_ prefix. Those commands are described in the iwconfig man page.

Backup the etc.lrp package.

Step 6: configure Shorewall

Check the Shorewall configuration as explained in the installation guide. The Bering default setup should be OK fo the above example.

Tips and tricks

ISA/PCMCIA adapters appear more stable for wireless cards than PCI/PCMCIA adapters. That is a good news for LEAF users who tend to use an old machine to setup their router.

If you do not succeed to activate your PCMCIA card while using it through a PCI/PCMCIA adpater you might give a try to the i82365.o patched module.

The wavelan2_cs Lucent driver for the orinoco card is also available in the Bering modules/pcmcia download section and can be used instead of the MPL/GPL orinoco_cs driver.