PCI Symphony Network Cards

I have finally found an affordable wireless solution that works with Linux.
What the Data Sheets Don't Explain

The Proxim data sheets did a fine job of describing the products and functionality for use in a Windows NT environment, but did not provide some of the gory technical details I needed. Proxim delivers a layer of peer-to-peer networking setup software to configure and operate their products that insulates the user from the Microsoft networking properties dialogs. My questions were:

  • Did these cards act like standard Ethernet interface cards to the operating system? Yes, the cards present a standard Ethernet interface to Windows and Linux. Under Win9x and NT, you use the standard Microsoft network property dialogs to set up and control the wireless network card.

  • Could standard network routing be used on a Linux server to eliminate the need for a costly Wireless Bridge to provide the connectivity to the rest of an installed Ethernet? Yes, once a Proxim wireless card is installed and set up on the Linux box, standard TCP/IP routing provides the connectivity to the other Ethernet hosts and the Internet.

Thanks to the Linux driver mail list, I had enough information to proceed.

Network Architecture

The existing network operates on the private class C network The Linux server provides IP masquerading for all systems on the internal network through an ipfwadm firewall and diald support for an ISDN connection to the Internet. I am currently running Debian 2.0 with kernel 2.0.34 on the server. I chose to use as the network number for the new wireless segment.

PC Card Installation on Windows

Installation of the Proxim drivers on the notebook is quite straightforward. Make a note of the Secid you use, since this will need to be used for the Linux driver and any other nodes that will be on the same wireless segment. After the Proxim installation is done, go to the “Microsoft Network Neighborhood | Properties” to bring up the Network dialog box. On the Configuration tab, select TCP/IP Symphony Cordless PC Card Adapter—Properties to set the network parameters, using the appropriate addresses for your system, as follows:

IP Address:
     IP address:
     Subnet Mask:
WINS Configuration:
     Enable WINS Resolution Add as a WINS server
     Add as a new gateway
DNS Configuration:
     Enable DNS
     Enter a Host name and your Domain name
     Enter one or more IP addresses of your DNS server(s)
     Add Domain Suffix Search Orders as desired

The “new gateway” entry will be the IP address of the eth1 interface on the Linux box.

I use the domain name of my ISP and their DNS servers. You will need to use entries that correspond to your network and ISP. With diald, the first DNS query for a new connection brings the line up to the ISP. I chose to use a different host name for the notebook, depending on whether the Symphony card is active or if the regular wired 10/100 PC Card is active. When on the wireless network, the notebook is on the 192.168.4 segment; when it is on the wired Ethernet, it's on the 192.168.1 segment. I use different host names so I can state them explicitly in the /etc/hosts table on the Linux server.

On the Identification tab, set the computer name, workgroup and an optional computer description. Use the same name you used in the DNS setting above, and the name of the workgroup for your Microsoft networking. This will allow you to browse the shares on your Linux Samba server if the workgroups match. Once again, I made sure that the notebook, when on the wireless interface, had a different name than when it was on the wired network, since its IP address will be different.

Linux Installation

First, you need to fetch the driver from the ftp.komacke.com/pub/rl2isa-drive site. If you are running a 2.0.3x kernel, I would recommend trying the rl2-1.5.1.tgz version. As of this writing, the latest version, rl2-1.5.3.tgz, had changes to support 2.2.x kernels, but broke for the older kernels. A kind soul from the driver mail list helped identify the version that worked for me. The Symphony driver is used as an installable module, so you must have module support compiled into your kernel.

Place the .tgz file in a suitable directory, and unpack it with:

tar -xvzf rl2-1.5.1.tgz

This will create a tree of directories under the current directory. I like to use /usr/src for source files, so I ended up with the driver source tree in /usr/src/rl2-1.5.1.

The rl2-version directory contains very good README files explaining the installation process. The examples and defaults are for Red Hat Linux, so I needed to answer several of the prompts differently for my Debian Linux host during the make config step.

For Debian, I answered as follows:

Module location?     /lib/modules/2.0.34/net
Executables?             /usr/local/bin
Man pages?               /usr/man
System header files?     /usr/src/kernel-source-2.0.34/include
CardType default []:     5
PC Card support? []:     n

Be especially careful with module location and system header files. Until I got them right, the driver module produced would not load. The README file gives the CardType values; 5 is PCI.

Next, do make modules followed by make modules_install. If the driver module compiles without error, you should be able to do an insmod rlmod and see the initialization message on the console and in /var/log.messages. You can confirm that the module has been loaded by doing lsmod. Since I used a PCI card, the I/O address and interrupt were set automatically when the driver module loaded.



Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.

Re: Product Review: PCI Symphony Network Cards

Anonymous's picture

Hi, I found it very interesting report, the world become Linux, and wireless Linux, inexpensive wireless Linux, so,
I appreciate a lot this info, thank you Denny

Geek Guide
The DevOps Toolbox

Tools and Technologies for Scale and Reliability
by Linux Journal Editor Bill Childers

Get your free copy today

Sponsored by IBM

8 Signs You're Beyond Cron

Scheduling Crontabs With an Enterprise Scheduler
On Demand
Moderated by Linux Journal Contributor Mike Diehl

Sign up now

Sponsored by Skybot