create new tag
, view all tags
A checklist, intended to be a troubleshooting tool for Ethernet connections to a LAN or Internet Gateway.

Intended to list programs that can be run or files that can be checked to confirm proper setup and operation of an Ethernet connection.

Initially will be just random things I think of -- hope to evolve to something organized and straightforward.




A General Word About Permissions

In general, certain users must have certain permissions on certain files in order for an Ethernet NIC to work properly. Having the necessary permissions may be direct (permissions of the owner), via membership in a group, or by having those permissions apply to all. (Clearly, the more widely the necessary permissions are distributed, the higher the risk to security of the system.)

Initially I may specify something general here, like all related configuration files must be readable by <user> -- as I learn more and can get more specific, I will try to do so.

A Procedure

Try browsing somewhere on the Internet. If it works, you are OK. If not:

Try pinging another machine. If it works, . If not:

  • dmesg | grep eth

  • cat /proc/modules

  • ping

  • ifconfig

  • route

  • /etc/host.conf

  • /etc/hosts

  • /etc/resolv.conf

Some Programs


Used to install the Ethernet driver module for your card, if not installed.


Running ifconfig (as root) should should show an eth0 (or an ethn for each Ethernet card in the system). Also shows other things that can be useful, like the:

  • Ethernet card MAC address (HWaddr)
  • Assigned IP address (inet addr)
  • Network Mask
  • Whether the card is up or down, something about the mode, the MTU size
  • Packets (and bytes) received, transmitted, errors, collisions
  • Card IRQ and I/O address

Link encap:Ethernet  HWaddr 00:A0:24:70:4E:14
          inet addr:  Bcast:  Mask:
          RX packets:1008211 errors:0 dropped:0 overruns:0 frame:0
          TX packets:1542409 errors:0 dropped:0 overruns:0 carrier:4
          collisions:373 txqueuelen:100
          RX bytes:370786413 (353.6 Mb)  TX bytes:349460384 (333.2 Mb)
          Interrupt:5 Base address:0xd400

ifup, ifdown

(Is this distribution specific -- didn't work on my test Vector install (or is that part of my problem?), exists on Mandrake 9.0)


(Distribution specific -- exists on Vector Linux, not on Mandrake 9.0)


Ping a local and Internet ip address and then Internet name. The results can provide a variety of clues. <discuss later>

ping (local address on my LAN)

ping (one of my ISP's DNS addresses)

ping (one of my ISP's DNS addresses)

ping slashdot.org




/etc/hosts.deny /etc/hosts.allow

System 5

My system5 machine running Knoppix is not configured properly to automatically start the network.

After booting up, do the following:

ifconfig eth1 down
ifconfig eth0 up
route add default gw

Check that /etc/resolv.conf includes:


route should look like this (after changes)

Kernel IP routing table
Destination  Gateway       Genmask         Flags Metric Ref  Use Iface  *      U     0      0      0 eth0
default         UG    0      0      0 eth0


Explain -- you must use one to get web sites by name, either your own or someone else's (typically your ISPs)

More later.

Linc's Notes

Just pasting in some notes from Linc Fessenden that I might be able to incorporate tomorrow.

I have had them opn the network several times..
Make sure:
/etc/rc.d/rc.modules has
/sbin/modprobe 8139too
in it and then run netconfig or alternatively:
ifconfig eth0 up
route add default gw
stuff your DNS in /etc/resolv.conf and you're good to go.

Mark Cope's Notes

Some notes from Mark Cope that are related (but might better be on a different page -- ):

Hello I got the cdrom with the nic card and after exploring the cd rom. Found out drivers for linux are on the rom. So my ? is how would I install the driver to redhat 8.0 from this cd. In the linux folder there is these three Icon's (Read me) txt

<needs formatting for TWiki>


The procedure to activate DFE-530TX+ on Red Hat 6.X linux is as follows:

  • step 1: copy the driver (rtl8139.c) from the driver disk to your linux disk (where?).

  • step 2: compile: The instructions for compiling the driver are included at the end of the driver file. (Run the instructions at /usr/src/linux.) Or you can use the Makefile included in the driver disk \Linux.

  • step 3: insert the driver as a module:
           insmod rtl8139.o

  • step 3a: run lsmod <rtl8139??> to confirm the module is inserted

  • step 4: bind your card to an IP address

/sbin/ifconfig eth0 ${IPADDR} broadcast ${BROADCAST} netmask ${NETMASK} (run 'netstat -i' to see if there is a interface 'eth0')

  • step 5: add your card to IP routing table, then add gateway also your card:
> /sbin/route add -net ${NETWORK} netmask ${NETMASK} eth0
> (should be able to ping local network now)
> gateway:
> /sbin/route add default gw ${GATEWAY} netmask metric 1
> step 6: start inet deamon.
> /usr/sbin/inetd
> (you are on the network now)
> *make sure that your kernel is built with network, fast_ethernet and
> module
> support. Otherwise, you have to rebuild your kernel.
> (1:go to /usr/src/linux directory
> 2:run 'make menuconfig' or 'make config'
> 3:mark the options list above.
> 4:exit and rebuild your kernel.
> make dep;make clean;make zImage
> the file 'zImage' will be at
> /usr/src/linux/arch/i386/boot/zImage
> 5:modify /etc/lilo.conf.(this file specify where kernel image
> is)
> 6:run 'lilo' )
> You can run 'netconfig' which will do step 4,5,6 for you.
> Then just add a line at the beginning of '/etc/rc.d/init.d/network'.
> 'insmod /your driver path/rtl8139.o'
> then your driver will work every time you boot. But this is 6.x

(Make file) # # Makefile for the Linux RTL8139 device driver, v1.0. # # To create a debuggable driver with emulation, do # make clean # make depend # make all #

#------------------------------------------------------------- # Compilation Tools #------------------------------------------------------------- CC := gcc LD := ld

# The adjust-vma value may need to be changed if listing file addresses # don't match addresses when loaded in the kernel. # The value was 4, then changed to 10 in kernel version 2.0.35 LISTING := objdump -S LISTINGFLAGS := --adjust-vma=10

RELOCATESTABS := ./relocate_stabs.pl

#------------------------------------------------------------- # Object files #------------------------------------------------------------- DRIVER_MODULE := rtl8139.o

DRIVER_OBJ := rtl8139.o

#------------------------------------------------------------- # Compilation flags #------------------------------------------------------------- ifndef TOPDIR TOPDIR := /usr/src/linux endif

INCLUDES := -I $(TOPDIR)/include CFLAGS := -D__KERNEL__ -DMODULE -O2 -m486 -Wall -finline-functions $(INCLUDES) CFLAGS := $(CFLAGS) -DMODVERSIONS

# this is for SMP support, be sure to uncomment on multiprocessor boxes #CFLAGS := $(CFLAGS) -D__SMP__

#------------------------------------------------------------ # Common rules #------------------------------------------------------------

%.o: %.c $(CC) $(CFLAGS) $(EXTRA_CFLAGS) -c -o $@ $<

# Our own rule to make source/assembly listing files %.lst: %.o $(LISTING) $(LISTINGFLAGS) $< > $@

#------------------------------------------------------------ # Default target #------------------------------------------------------------ .PHONY: all all: $(DRIVER_MODULE)

#------------------------------------------------------------ # Include dependency files they exist #------------------------------------------------------------ ifeq (.depend,$(wildcard .depend)) include .depend endif

#------------------------------------------------------------ # Targets #------------------------------------------------------------

# Target to make the plain driver $(DRIVER_MODULE) : $(DRIVER_OBJ:.o=.c) $(CC) $(CFLAGS) $(EXTRA_CFLAGS) -c -o $@ $< $(LISTING) $(LISTINGFLAGS) $@ > $(@:.o=.lst)

# Target to make a debuggable driver # Must do objdump before relocate $(DEBUG_OBJ) : $(DRIVER_OBJ:.o=.c)

$(DEBUG_MODULE) $(DEBUG_MODULE:.o=.lst) : $(DEBUG_OBJ) $(LD) $(LDFLAGS) -r -o $@ $(DEBUG_OBJ) $(LISTING) $(LISTINGFLAGS) $@ > $(@:.o=.lst)

# This only to use kernel debugger #$(RELOCATESTABS) $@

# Remove all temporary and generated files .PHONY: clean clean: rm -f core *.o *.a *.s *.lst

# Compute the source file dependencies #.PHONY: depend #depend: # gcc -M $(EMU_OTHER_OBJS:_e.o=.c) $(CFLAGS) > .depend # perl -p -i -e 's/\.o/_e\.o/g' .depend

# Converts the source files from Windows .PHONY: convert convert: dos2unix *.c makefile

And the file I will assume is the driver script Well IT would not let me paste the code here but it says[rtl8139.c] under the Icon Any body with RH 8.0 experiance done this before?

Very novice at this!!


See ResourceRecommendations. Feel free to add additional resources to these lists, but please follow the guidelines on ResourceRecommendations including ResourceRecommendations#Guidelines_for_Rating_Resources.


  • (rhk) Network Debugging mini-HOWTO; ; - from Rice University, scope limited to LANs (not modems), excellent -- seems to cover most things you'd need, brief -- may try to summarize on this page (or extract the essentials to go along with the approach I started, but may not even be necessary) -- well, I still may try, but not immediately. Also some other resources listed -- I may go and read some of those (since I'm not at a Linux machine to try this).


  • () RandyKramer - 25 Feb 2003
  • <If you edit this page: add your name here; move this to the next line; and include your comment marker (initials), if you have created one, in parenthesis before your WikiName.>

Page Ratings

Edit | Attach | Watch | Print version | History: r8 < r7 < r6 < r5 < r4 | Backlinks | Raw View | Raw edit | More topic actions
Topic revision: r8 - 2003-10-10 - RandyKramer
  • Learn about TWiki  
  • Download TWiki
This site is powered by the TWiki collaboration platform Powered by PerlCopyright 1999-2017 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding WikiLearn? WebBottomBar">Send feedback
See TWiki's New Look