Re: Wireless interface fails to initialize fully; still need to get DHCP manually
Robert Glueck wrote:
Mark Fletcher wrote:
I had exactly the same problem -- with different hardware.
The cause was that PCMCIA services are started in the boot
/ startup sequence AFTER networking is set up, so at the
time the startup procedure is trying to connect to your
network PCMCIA services are not running.
By the time the boot has completed, PCMCIA services are
started, so now an attempt to connect to the network
Solution is, check your /etc/rcS.d directory and your
/etc/rcX.d where X is the runlevel the machine boots to by
default, and find the SXXpcmcia link which will point to
something in /etc/init.d. Files in here beginning with S
are executed in order at startup, first the content of
rcS.d then the target runlevel. So, as root, change the XX
number between S and pcmcia to something less than the
number attached to the startup script for your networking.
Then PCMCIA services should get started first and be
available when the networking attempts to initialise.
Thanks for your comments, Mark. I don't see any SXXpcmcia
in MY /etc/rcS.d/ in Xandros but I don't have any pcmcia
devices in my machine anyway and that bus isn't
initialized. The person (Bob) on whose behalf I'm
inquiring here of course does have such a device, i.e. the
Buffalo wireless card in question.
Sorry for the delay in replying -- forgot to check this thread for replies.
Anyway, yup, SXXpcmcia won't be there unless you install the PCMCIA
package (can't remember the exact package name) which of course you
wouldn't do unless you had PCMCIA hardware :-)
Nope -- although my previous answer didn't make this clear, the contents
of rcS.d are run in their entirety before the contents of rc<runlevel>.d
are run. So Bob's network startup is happening before his PCMCIA setup
However, in my Xandros setup, in /etc/rc5.d/ there is a link
S20pcmcia pointing to /etc/init.d/pcmcia (Bob is using the
same version of Xandros as I do). Also, in /etc/rcS.d/
there is a link "S40networking" pointing to the startup
script "networking" in /etc/init.d.
So it looks as though in Xandros startup of the PCMCIA
services precedes that of the networking services. That
would also jive with the experience of many Xandros 3 users
who have their PCMCIA wireless networking cards work out of
the box in Xandros.
Right, but all that does is get the driver in place and check the
hardware is working -- it doesn't set up the communications up through
the networking layers to allow apps to use the link -- that's what
ifupdown, S40networking, etc are doing.
FWIW, I should also mention that Bob runs his card with a
Windows driver via ndiswrapper,
and there is a link /etc/rcS.d/20module-init-tools that
starts up the ndiswrapper kernel module at that early
Other thing I notice is your /etc/interfaces file doesn't
seem (unless I'm being blind) to "auto" your wireless
interface. The boot sequence will only attempt to
initialise interfaces that have the auto keyword defined
in /etc/interfaces (it does ifup -a which starts those
interfaces with an auto keyword). cf your loopback lo
interface in your interfaces file quoted above.
You appear to be responding to the /etc/network/interfaces
file that Tim Beauregard posted. Bob's looks like this:
iface lo inet loopback
iface eth1 inet dhcp
iface lo inet loopback
iface eth1 inet static
Oops, my mistake, you're quite right.
Yup that's exactly what I had to do until I moved pcmcia to before the
In the second one, first we tried just address and netmask,
then added gateway, then added dns-... None of these
I think Bob's problem boils down to something simple.
Practically all the networking parameters seem to be
correctly set. The only thing he has to do after bootup to
get a wireless connection is to manually run either "ifup
eth1" or "dhclient eth1".
You could be on to something there -- except I don't think ifup eth1
would work at all, ever, if that were the case. However, you are now at
the edges of my knowledge on this subject -- I know moving the startup
of pcmcia to before the startup of networking (ifupdown is the first one
I think) fixed it for me.
Those are exactly the symptoms one would encounter if the
"auto eth1" directive were missing
in /etc/network/interfaces. But it's there!
The other possibility is that Xandros doesn't recognize the
device name eth1. Bob had gone back and forth between
running ndiswrapper v.1.2 (in the presence of which Xandros
calls the wireless interface eth1) and v.1.8 (in which case
Xandros calls it wlan0). I think Xandros may have done
some aliasing wlan0=eth1 which may have gotten scrambled
but I don't know in which config file this might be found.
Does this make any sense, i.e. Xandros possibly mixing up