Linux Step By Steps
Linux Step by Steps

How to set up two identical NICs on eDesktop.

From: "Vu Pham" <>

This procedure is tested on eD2.4 with kernel 2.4.1. The reason I test this on 2.4.1 is I use two 3C905C NICs, and the driver 3c905C that 3Com supports for Linux is for kernel 2.2.12 or below only.

1. When putting those cards into your PC, don't forget to label the MAC addresses of each card, this will help to know which card goes with which network later. I forgot to do this the first time, and one of my cable was bad, then it caused me some trouble to identify where the problem was.

2. Check in the directory /lib/modules/`uname -r`/kernel/drivers/net ( for kernel 2.4.x ) or /lib/modules/`uname -r`/net (for kernel 2.2.x) to be sure the module for the NICs do exist. In my case, it is 3c59x.o.If it does not exist, select the corresponding option for that dirver in make menuconfig and rebuild the modules.

3. Add the following lines into /etc/modules.conf

alias eth0 module-name
alias eth1 module-name

In my case, they are

alias eth0 3c59x
alias eth1 3c59x

Be careful: the module name withoutthe extension .o. In my case, 3c59x.o will not work.

If you have two ISA NICs, for example two NE2000, then their parameters ( io port, irq . . .) need to declare as:

options ne io=0x300,0x320 irq=10,7
The 1st number is for the first NIC, the 2nd one is for the second one. This means the first NE2000 has port 0x300 and irq 10, the second NIC has port 0x320 and irq 7.
( see 3.1.1 of Home-Network-mini-HOWTO )

4. Run ifconfig eth0 to be sure that the module can be loaded, and that eth0 comes into being .

You will see something similar to

[root@pluto vu]# ifconfig eth0
PCI: Found IRQ 5 for device 00:0b.0
PCI: The same IRQ used for device 00:07.2
PCI: Found IRQ 11 for device 00:0d.0

eth0 Link encap:Ethernet HWaddr 00:01:03:2E:5E:93
Interrupt:5 Base address 0xe400

Run ifconfig eth1 also:

[root@pluto vu]# ifconfig eth1

eth1 Link encap:Ethernet HWaddr 00:01:03:2E:5E:07
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:100
Interrupt:11 Base address:0xe800

If the NICs are pnp-isa, I prefer to set them to non-pnp with some predefined interrupt numbers, then set those interrupt numbers to be reserved for ISA in the BIOS setup.

Look at the MAC addresses and compare with step 1 to know to which nic eth0 is bound to, and which NIC eth1 is bound to.

5. Now both eth0 and eth1 appear. Use coastool to setup the network parameters, and don't forget to set "Init at boot time" to "Enabled".

You have two networks to connect to this machine, so be careful to apply the correct ip parameters to each NIC.

6. Run ifconfig -a again to be sure that the NICs have the correct ip parameters. Ping some machines on each network. Reboot.

get two of the same NICs to work on a monolithic system, you need to use the following in /etc/lilo.conf: append = "ether=0,0,0,eth ether=0,0,0,0,eth1"
that'll get it going for ya
-- Douglas J. Hunley (Linux User #174778