Difference between revisions of "Overo Tobi Ethernet"

From Gumstix User Wiki
Jump to: navigation, search
(Created page with 'Category:How_to_-_ethernet Some Overo boards do not properly bring up the eth0 wired Ethernet interface when booting up with the Tobi expansion board. =Software= Official O…')
 
Line 1: Line 1:
 
[[Category:How_to_-_ethernet]]
 
[[Category:How_to_-_ethernet]]
Some Overo boards do not properly bring up the eth0 wired Ethernet interface when booting up with the Tobi expansion board.
+
Some Overo boards do not properly bring up the eth0 wired Ethernet interface when booting up with the Tobi expansion board. The result is that the Overo will not have a working wired Ethernet connection after booting, even though you may have eth0 properly configured in ''/etc/network/interfaces''. The problem appears to be caused by a version mismatch between the ''dhclient'' and ''ifupdown'' packages on the Overo images.
  
 
=Software=
 
=Software=
Line 53: Line 53:
 
Even though you have eth0 configured properly, ''ifup'' fails to bring up the eth0 interface due to a version mismatch with ''dhclient''.
 
Even though you have eth0 configured properly, ''ifup'' fails to bring up the eth0 interface due to a version mismatch with ''dhclient''.
  
==Version Mismatch==
+
==Apparent Version Mismatch Problem==
  
 
There appears to be some kind of mismatch between the ''dhclient'' and ''ifupdown'' packages installed in the Overo images.
 
There appears to be some kind of mismatch between the ''dhclient'' and ''ifupdown'' packages installed in the Overo images.
Line 72: Line 72:
 
As you can see, if ''dhclient3'' is not found on the system, then at line 80 ''dhclient'' is invoked with the -v flag. This is the problem, because the Overo image has ''/sbin/dhclient'', not ''/sbin/dhclient3''. The ''dhclient'' version on the Overo image does not support the -v flag, and this is why the error message appears during boot.
 
As you can see, if ''dhclient3'' is not found on the system, then at line 80 ''dhclient'' is invoked with the -v flag. This is the problem, because the Overo image has ''/sbin/dhclient'', not ''/sbin/dhclient3''. The ''dhclient'' version on the Overo image does not support the -v flag, and this is why the error message appears during boot.
  
==Solution==
+
===Solution===
  
 
The solution is to create a symlink to trick ''ifup'':
 
The solution is to create a symlink to trick ''ifup'':

Revision as of 08:57, 21 July 2010

Some Overo boards do not properly bring up the eth0 wired Ethernet interface when booting up with the Tobi expansion board. The result is that the Overo will not have a working wired Ethernet connection after booting, even though you may have eth0 properly configured in /etc/network/interfaces. The problem appears to be caused by a version mismatch between the dhclient and ifupdown packages on the Overo images.

Software

Official Overo pre-built Linux images or developer images have support for wired Ethernet networking and DHCP.

Configuring eth0

Edit /etc/network/interfaces to enable eth0:

 auto eth0
 iface eth0 inet dhcp

Usually the above configuration is already present, you just have to uncomment it.

Boot Messages

After you have eth0 configured, reboot your Overo. You should see the following messages during boot:

Configuring network interfaces... net eth0: SMSC911x/921x identified at 0xd08cc000, IRQ: 336
eth0      no wireless extensions.

Internet Systems Consortium DHCP Client V3.1.2p1
Copyright 2004-2009 Internet Systems Consortium.
All rights reserved.
For info, please visit http://www.isc.org/sw/dhcp/
Usage: dhclient [-1dqrx] [-nw] [-p <port>] [-s server]
                [-cf config-file] [-lf lease-file][-pf pid-file] [-e VAR=val]
                [-sf script-file] [interface]

If you did not get this software from ftp.isc.org, please
get the latest from ftp.isc.org and install that before
requesting help.

If you did get this software from ftp.isc.org and have not
yet read the README, please read it before requesting help.
If you intend to request help from the dhcp-server@isc.org
mailing list, please read the section on the README about
submitting bug reports and requests for help.

Please do not under any circumstances send requests for
help directly to the authors of this software - please
send them to the appropriate mailing list as described in
the README file.

exiting.
Failed to bring up eth0.
done.

Even though you have eth0 configured properly, ifup fails to bring up the eth0 interface due to a version mismatch with dhclient.

Apparent Version Mismatch Problem

There appears to be some kind of mismatch between the dhclient and ifupdown packages installed in the Overo images.

The ifupdown source code has a file named inet.defn. Here are lines 76 through 81 from that file:

If you look in the ifupdown package source code, there is a file called "inet.defn". Here are lines 76 through 81 from that file:

76:  up
77:    [[ifconfig %iface% hw %hwaddress%]]
78:    dhclient3 -pf /var/run/dhclient.%iface%.pid -lf /var/lib/dhcp3/dhclient.%iface%.leases %iface% \
79:        if (execable("/sbin/dhclient3"))
80:    dhclient -v -pf /var/run/dhclient.%iface%.pid -lf /var/lib/dhcp/dhclient.%iface%.leases %iface% \
81:        elsif (execable("/sbin/dhclient"))

As you can see, if dhclient3 is not found on the system, then at line 80 dhclient is invoked with the -v flag. This is the problem, because the Overo image has /sbin/dhclient, not /sbin/dhclient3. The dhclient version on the Overo image does not support the -v flag, and this is why the error message appears during boot.

Solution

The solution is to create a symlink to trick ifup:

ln -s /sbin/dhclient3 /sbin/dhclient

Now when you boot the Overo, you should no longer get the error messages. Instead, eth0 should successfully get an IP address via DHCP and you should have a working wired Ethernet connection.