On Mon, 18 Dec 2006, J. Scott Olsson wrote:
On 12/18/06, Daniel Lenski <[EMAIL PROTECTED]> wrote:
Scott, when you say "hangs", do you mean that the machine actually
crashes, or that the attempt to access the network continues interminably
without connecting? If the machine actually crashes, it sounds like a
driver problem.
It just continues interminably.
* Try connecting the laptop to the router WITH AN ETHERNET CABLE. If it
works with non-wired ethernet, then you can be sure the problem is with the
wireless card configuration (either that or the wireless router is locking
out the MAC address of the laptop).
I should have clarified. I am connected with a wire.
* If it doesn't work with wired ethernet and DHCP, then try it with wired
ethernet and MANUAL address configuration. Set up thes address, netmask,
and gateway for the ethernet adapter manually and see if you can
connect. For example, if the router is at 192.168.0.1, I would do:
# echo 'nameserver 192.168.0.1' >> /etc/resolv.conf
# ifconfig eth0 192.168.0.64 netmask 255.255.255.0 gw 192.168.0.1
Hmm... that command dies with... "gw: no address associated with name" ( is
that what you meant?)
No, that should have said
ifconfig eth0 192.168.0.64 netmask 255.255.255.0 up
ip route add default via 192.168.0.1 dev eth0
echo 'nameserver 192.168.0.1' > /etc/resolv.conf
Or, if you don't hafe iproute installed (which you really should), you can
replace the second command with
route add default gw 192.168.0.1 dev eth0
If DHCP was your problem, this will cure the symptoms.
Since you say you can ping and resolve DNS, but not make TCP connections,
it sounds like you have a packet loss, MTU or firewall problem. First try
flood pinging your gateway with different length packets to test for loss:
ping -nfs 10 192.168.0.1
ping -nfs 1000 192.168.0.1
ping -nfs 1472 192.168.0.1
If you get >1% loss and especially if you get more loss at a greater
length, you have a bad cable. Next, obtain your interface MTU from
ifconfig, and try
traceroute -n 128.8.5.2 100
traceroute -n 128.8.5.2 <MTU>
128.8.5.2 is a sample destination (a big DNS server at UMD), you can use
any IP that should always be up. If the destination can't be reached for
either packet length, you have a firewall problem. If it can be reached
for 100, but not for MTU, and you get timeouts ('*'s) then a device in
your path to the destination is breaking PMTU discovery (usually also a
firewall problem, but probably not on your machine). If the problem is
PMTU discovery, find the greatest length that works, with traceroute, set
your MTU to that with ifconfig, and you should be OK. If both traceroutes
work, try with tcptraceroute:
tcptraceroute -nl 100 128.8.5.2
tcptraceroute -nl <MTU> 128.8.5.2
If the results are different from the regular (UDP) traceroute results,
you have a firewall problem.
If you have a firewall problem and you need more help, please provide the
configuration information for any firewalls you control; on your linux box
that's:
iptables -nvL
iptables -nvL -t nat
iptables -nvL -t mangle
Alexey