This section covers information specific to Ethernet and the configuring of Ethernet cards.
3Com 3c503 (3c503 driver), 3c505 (3c505 driver), 3c507 (3c507 driver), 3c509/3c509B (ISA) / 3c579 (EISA);
3Com Etherlink III Vortex Ethercards (3c590, 3c592, 3c595, 3c597) (PCI), 3Com Etherlink XL Boomerang (3c900, 3c905) (PCI) and Cyclone (3c905B, 3c980) Ethercards (3c59x driver) and 3Com Fast EtherLink Ethercard (3c515) (ISA) (3c515 driver);
3Com 3c575 series Cardbus (3c59x driver) (most PCMCIA cards should be detected);
Ethernet device names are eth0, eth1, eth2 etc. The first card detected by the kernel is assigned eth0 and the rest are assigned sequentially in the order they are detected.
Once you have your kernel properly built to support your Ethernet card, the card configuration is easy.
Typically, you would use something like (which most distributions already do for you, if you configured them to support your Ethernet):
root# ifconfig eth0 192.168.0.1 netmask 255.255.255.0 up root# route add -net 192.168.0.0 netmask 255.255.255.0 eth0
Most of the Ethernet drivers were developed by Donald Becker.
The module will typically detect all of the installed cards.
Detection information is stored in the /etc/conf.modules file.
Consider that a user has 3 NE2000 cards, one at 0x300, one at 0x240, and one at 0x220. You would add the following lines to the /etc/conf.modules file:
alias eth0 ne
alias eth1 ne
alias eth2 ne
options ne io=0x220,0x240,0x300What this does is tell the modprobe program to look for 3 NE based cards at the following addresses. It also states in which order they should be found and the device they should be assigned.
Most ISA modules can take multiple comma separated I/O values. For example:
alias eth0 3c501
alias eth1 3c501
options eth0 -o 3c501-0 io=0x280 irq=5
options eth1 -o 3c501-1 io=0x300 irq=7
The -o option allows for a unique name to be assigned to each module. The reason for this is that you can not load two copies of the same module.
The irq= option is used to specify the hardware IRQ, and the io= to specify the different io ports.
By default, the Linux kernel only probes for one Ethernet device. You need to pass command-line arguments to the kernel in order to force detection of further boards.
To learn how to make your Ethernet card(s) working under Linux, you should refer to the Ethernet-HOWTO.