[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Direct ethernet



Tommy McCabe wrote:

I have a direct ethernet connection (no visible card, wire just plugs into computer) that connects to a cable modem which is connected to the Internet and another computer. The Internet works fine via Windows, but Debian won't access anything. Everything points to an Ethernet "card" (which I don't think I have and even if I did it's buried in my computer). I tried running Etherconf, but even after I installed it, it didn't work (it said there was no such command, but apt-get said it was already installed). HELP!!!

PS I'm not subscribed to the mailing list to spare hundreds of emails daily, but I will be searching the Internet archives.


Four Steps:
1. Find the correct driver/module for your ethernet card.
2. Insert the module
3. Configure addressing (dhcp or static)
4. Restart networking.

1.
Run "lspci"; look for a reference to an ethernet card (yes, you do have an ethernet "card" -- really it's just circuitry on the motherboard in your case, which is getting more and more common, even for desktop machines). What does it say? Here are a couple of examples:

00:09.0 Ethernet controller: Lite-On Communications Inc LNE100TX (rev 20)

02:0f.0 Ethernet controller: 3Com Corporation 3c905C-TX/TX-M [Tornado] (rev 78)


The first example is a bit generic, and might take some more research. The second is easy to deal with. You'd find the corresponding "driver" for your ethernet card. Look in /lib/modules/[kernel version]/kernel/drivers. For example, on this machine, to find the version of the kernel I'm running:

   enjae[westk]:/home/westk> uname -a
   Linux enjae 2.4.18-k7 #1 Sun Apr 14 13:19:11 EST 2002 i686 GNU/Linux

Then:
   enjae[westk]:/home/westk> ls /lib/modules/2.4.18-k7/kernel/drivers/net/

which shows the following files:
3c501.o             arlan.o     es3210.o    ne3210.o       slhc.o
3c503.o             at1700.o    eth16i.o    ni5010.o       slip.o
3c505.o             atp.o       ethertap.o  ni52.o         smc-mca.o
3c507.o             bonding.o   ewrk3.o     ni65.o         smc-ultra.o
3c509.o             bsd_comp.o  fc          ns83820.o      smc-ultra32.o
3c515.o             cs89x0.o    fealnx.o    pcnet32.o      smc9194.o
3c523.o             de4x5.o     hamachi.o   plip.o         starfire.o
3c527.o             de600.o     hamradio    ppp_async.o    strip.o
3c59x.o             de620.o     hp-plus.o   ppp_deflate.o  sundance.o
8139cp.o            defxx.o     hp.o        ppp_generic.o  tlan.o
8139too.o           depca.o     hp100.o     ppp_synctty.o  tokenring
82596.o             dgrs.o      ibmlana.o   pppoe.o        tulip
8390.o              dl2k.o      irda        pppox.o        tun.o
ac3200.o            dmfe.o      lance.o     rcpci.o        via-rhine.o
acenic.o            dummy.o     lne390.o    rrunner.o      wan
aironet4500_card.o  e2100.o     lp486e.o    sb1000.o       wavelan.o
aironet4500_core.o  eepro.o     mii.o       shaper.o       wd.o
aironet4500_proc.o  eepro100.o  natsemi.o   sis900.o       winbond-840.o
appletalk           eexpress.o  ne.o        sk98lin        wireless
arcnet              epic100.o   ne2.o       sk_mca.o       yellowfin.o
arlan-proc.o        eql.o       ne2k-pci.o  skfp

In the case of the 3com card listed earlier, the driver I'm interested in is the 3c59x.o driver.

2.
First run "lsmod" to make sure the module is not already inserted in the kernel. In the case of the LNE100TX card listed above, the correct module is the tulip driver. "lsmod" on this box shows:
   tulip                  37632   1
which shows that the tulip module is already loaded.

You can manually load the correct module with the command "modprobe <driver>", like "modprobe tulip" or "modprobe 3x59x". If that works, you'd then want to add a single line "3c59x" to "/etc/modules" so it'll be loaded on future boots. Being built-in, you might have an Intel EtherExpress chipset, so you'd probably want the "eepro" driver or one of it's variants. You'll likely have to do a bit of research on this. Windows' Device Manager might give you a clue, or Knoppix would almost certainly give you the correct module name (use "lsmod" at a command prompt, assuming Knoppix works with your ethernet card - if it doesn't, Debian's not likely to work with it either).

Alternatively, you can run "modconf", which is a menu-driven app, and you can insert the 3c59x module with this app, which will also modify "/etc/modules" for you so you don't have to.

3.
Now that the proper module has been inserted into the kernel, you need to configure the network card interface. You'd do this by editing "/etc/network/interfaces". Assuming you're using DHCP, and this is the only network card you have, you'll need a stanza that looks like:

   auto eth0
   iface eth0 inet dhcp

4.
Now just restart networking. You could reboot, but it's easier just to issue the commands:
   /etc/init.d/networking stop
   /etc/init.d/networking start

--
Kent




Reply to: