A Heterogeneous Linux/Windows 95 Home Network

 in
Share resources such as printers, CD-ROM drives and data connections to the Internet.

With more than one computer common in many households, the need to network all machines and provide Internet access is important. Linux offers a stable network environment that can enable different operating systems (UNIX, Windows and Macintosh) to work together, and is quite easy to set up and administer. Such networks facilitate convenient file and print sharing and centralized backups. I will describe my home network configuration (see Figure 1) which is a mixture of Linux and Windows systems.

Figure 1. Network Configuration

I will assume you have basic knowledge of Linux installation and administration, and that PPP is set up on your Linux box. I will explain in detail how to network the Windows 95 machine named “ancho” with the Linux server named “serrano”. Adding other machines to the network is essentially a repetition of this process. I will also briefly discuss setting up the Linux client and NFS.

The Linux machine serrano is the file and print server for the Windows 95 and Linux clients, and connects to the outside world through a PPP dial-up connection. It also acts as a firewall; all other machines can reach the outside world through it. The CD-ROM drive on serrano is also available to the other machines on the network.

Hardware

My hardware consists of 486 DX2/66 machines with 32MB RAM, and a Pentium 100 notebook which is used both on and off the network. I use NE2000 network cards (Realtek PnP, about $15) and coaxial 10Base-2 cables. If you have PCI boards (and I certainly hope you do), setup is easier, but the networking particulars still apply.

The Linux kernel probes address 0x300 for NE2000 cards, so the jumpers on the card are set for this I/O address on the Linux machine. On the Windows 95 machines, the network card jumpers are set for Plug-and-Play mode. When you network the machines with coaxial cables, make sure you use 50-ohm terminators (about $3 at Radio Shack) at the ends.

Software Installation and Configuration

I installed Red Hat Linux 5.2 off a CD. Installing everything took about 500MB of disk space. I have used Linux for a while now, so this part was painless. I was able to get X working nicely, PPP configured and a printer set up.

If you have a machine with a CD-ROM drive, Windows 95 installation should also be easy. I had to install Windows 95 from a parallel port CD-ROM drive. That was tricky, and took several tries.

The first goal in the networking effort is to establish communication between the Linux machine serrano and the Win95 machine ancho.

All the network configurations on serrano can be done from the Red Hat control panel (Network Configurator). Read the Net-3.HOWTO for more information on Linux networking. Basically, you need to have the eth0 interface with IP 192.168.1.1 (or something like that) attached to it. To do this manually, execute the following command as root:

/sbin/ifconfig eth0 192.168.1.1 netmask\
255.255.255.0 up

The IP addresses chosen correspond to class C addresses. Typically, these are used for intranet networks. I had to explicitly put in a route:

route add -net 192.168.1.0 eth0
This routing command says all packets to the 192.168.1.0 network should be sent to the eth0 interface. This line is appended to the /etc/rc.local file, so that the route is set up at boot time.

On serrano, set up the host table /etc/hosts in a manner similar to this:

192.168.1.1     serrano    loghost
192.168.1.3     jalapeno   #Linux machine
192.168.1.100   piquin     #Linux/Windows
192.168.1.2     ancho      #Windows machine
127.0.0.1       localhost

To confirm that the eth0 interface is working, type /sbin/ifconfig eth0. The output from this command will look like Listing 1. If you then type more /proc/net/dev, the output will look like Listing 2. If PPP is up, you will see an additional line for the ppp0 interface. This should take care of serrano.

Listing 1

Listing 2

Now we proceed to the network configuration of ancho, the Windows 95 machine. You should have Windows 95 installed, the network card detected and drivers installed. At the time of network card installation, you will be asked for a machine name and a workgroup name. Give the machine name “ANCHO”, workgroup “WORKGROUP” and some optional comment like “My Compaq 486 machine”.

Go to the Control Panel and select “Networking”. Under “The following network components are installed”, you should see your network card (mine says “Realtek RTL8019 PnP LAN Adaptor or compatible”). You may see NetBEUI and IPX/SPX and TCP/IP in the same window. If you do not see TCP/IP, choose “Add”, then “Protocol”, click on “Add”, choose “Microsoft”, then choose “TCP/IP” and click “OK”. This should add TCP/IP to the installed components window. Once TCP/IP is added, if you highlight it, you will be able to choose “Properties”. When you click “Properties”, you will see a dialog containing several tabs. Pick these tabs, and assign the following:

IP Address

  IP Address: 192.168.1.2
  Subnet Mask: 255.255.255.0
Gateway (
  192.168.1.1
DNS Configuration
  Enable DNS
  Host name: ancho
  DNS Server search order: 192.168.1.1
WINS Configuration
  Leave it Disabled.

You may leave the DNS disabled, or add your ISP's DNS server IP address. The important items here are your gateway and IP address. After you specify these and click “OK”, the machine will reboot.

After reboot, open a DOS window and type ping 192.168.1.1. After a short pause, you should get a response like “Reply from 192.168.1.1: bytes=32 time=4ms TTL=64”, repeated four times. If this fails, your network setup was not successful.

Now go to serrano and type ping -c2 ancho. If it can find ancho, you should get these two messages:

64 bytes from 192.168.1.3: icmp_seq=0 ttl=32 time=3.9 ms
64 bytes from 192.168.1.3: icmp_seq=1 ttl=32 time=2.3 ms

The -c2 argument to ping sends two packets. Without it, ping will have to be terminated with CTRL-C.

If this works, congratulations—the Linux machine and the Windows 95 machine can find each other.

______________________

White Paper
Linux Management with Red Hat Satellite: Measuring Business Impact and ROI

Linux has become a key foundation for supporting today's rapidly growing IT environments. Linux is being used to deploy business applications and databases, trading on its reputation as a low-cost operating environment. For many IT organizations, Linux is a mainstay for deploying Web servers and has evolved from handling basic file, print, and utility workloads to running mission-critical applications and databases, physically, virtually, and in the cloud. As Linux grows in importance in terms of value to the business, managing Linux environments to high standards of service quality — availability, security, and performance — becomes an essential requirement for business success.

Learn More

Sponsored by Red Hat

White Paper
Private PaaS for the Agile Enterprise

If you already use virtualized infrastructure, you are well on your way to leveraging the power of the cloud. Virtualization offers the promise of limitless resources, but how do you manage that scalability when your DevOps team doesn’t scale? In today’s hypercompetitive markets, fast results can make a difference between leading the pack vs. obsolescence. Organizations need more benefits from cloud computing than just raw resources. They need agility, flexibility, convenience, ROI, and control.

Stackato private Platform-as-a-Service technology from ActiveState extends your private cloud infrastructure by creating a private PaaS to provide on-demand availability, flexibility, control, and ultimately, faster time-to-market for your enterprise.

Learn More

Sponsored by ActiveState