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.

______________________

Webinar
One Click, Universal Protection: Implementing Centralized Security Policies on Linux Systems

As Linux continues to play an ever increasing role in corporate data centers and institutions, ensuring the integrity and protection of these systems must be a priority. With 60% of the world's websites and an increasing share of organization's mission-critical workloads running on Linux, failing to stop malware and other advanced threats on Linux can increasingly impact an organization's reputation and bottom line.

Learn More

Sponsored by Bit9

Webinar
Linux Backup and Recovery Webinar

Most companies incorporate backup procedures for critical data, which can be restored quickly if a loss occurs. However, fewer companies are prepared for catastrophic system failures, in which they lose all data, the entire operating system, applications, settings, patches and more, reducing their system(s) to “bare metal.” After all, before data can be restored to a system, there must be a system to restore it to.

In this one hour webinar, learn how to enhance your existing backup strategies for better disaster recovery preparedness using Storix System Backup Administrator (SBAdmin), a highly flexible bare-metal recovery solution for UNIX and Linux systems.

Learn More

Sponsored by Storix