Destination Host Unreachable
I'll quickly run through my network (in)experience up to the present problem so that you have a rough idea of my low level of knowledge and understanding (there are a lot of posts where I don't even understand the questions, never mind the answers).
My only encounters with ethernet began with Slackware 10 and a PCI ethernet card. Nothing happened. Many gurus gave much complicated help, none worked until I was told to change USE_DHCP[0]="" to USE_DHCP[0]="yes" and that did the trick. Next was when I got a new motherboard, with on-board ethernet (same discs). Slackware 10.0 still worked with no changes at all. Then I installed Slackware 12.2 and it worked when I finally remembered to make the same change. I now have a new machine. M$oft windows can connect to my modems (the one from the old machine and the BT router/modem that I plan to use now I have two machines). Slackware 12.2 (copied from the old machine rather than re-installed) didn't connect. The first problem ... ping 192.168.1.1 (old modem)both gave Network unreachableLooking in dmesg output for "eth" gave: r8169 Gigabit Ethernet driver 2.3LK-NAPI loadedthen later: udev: renamed network interface eth0 to eth1and later still: r8169: eth1: link downThe following also appeared late on the boot screen but NOT in dmesg: Polling for DHCP server on interface eth1:I tried booting with USE_DHCP[1]="yes"and that didn't work except that when I tried ifconfig eth1 up(I don't actually understand that last lot, but it worked with eth0 on my old machine if I lost connection for any reason) the ethernet came alive and ping now gave From 127.0.0.1 ... Destination Host UnreachableFrom what I've been reading, I guess the failure to ping the modem was caused by the DHCP timeout, and that that was caused by the "eth1 down", and eth0 being rename eth1 may have somthing to do with it, but what it's all about is beyond me. And why was eth0 renamed? Help! |
Hi Wyresider,
First of all, this should not be a very complicated issue to fix, but as you described your network knowledge as "low" we will need to take time and take everything step by step.
So let's start by the beginning : Would you please post the output of a bare Code:
ifconfig It is quite late here in France, so i cannot ensure you that i will check your answer until 9ish hours from now, but i am sure a lot of high skilled netadmin will be kind with you ! |
Thank you for the quick reply, Pierre.
The output from ifconfig on the new computer (ported to this online one on a flash stick) was: 1) as booted: Code:
lo Link encap:Local Loopback Code:
eth1 Link encap:Ethernet HWaddr 30:85:a9:eb:72:a5 |
Ok, so we can now say :
1- You do have a correctly detected network card 2- You do NOT have any valid IP address on this network interface / card 3-On a freshly booted system, your eth1 is not up : This surely means that the interface is not configured to automatically start-up at boot. I really don't know why your eth0 has been renamed to eth1... we'll check that later (i am quite sure it is because you copied the network config from your other slackware). Next step is for you to post the content of the interface configuration file : Code:
/etc/rc.d/rc.inet1.conf Please keep in mind that i never owned any slackware, so i should be wrong when it comes to configuration files and that kind of stuff. |
The rc.inet1.conf file in the OLD box is:
Code:
# /etc/rc.d/rc.inet1.conf The rc.inet1.conf file in the NEW box is: Code:
# /etc/rc.d/rc.inet1.conf |
So, let us takes advantage of this thread to give you some more / new knowledge (this is the main goal here after all)...
A small one : DHCP is a process that allows one computer (your modem, dsl box or any other well configured network connected device) to offers ip address to demanding computers. In a network context the one that offers /serves is called server (!) and the one that asks is called client. In your case, the clients are your slackware / windows computers, and your server is ?? i do not know butr it might be your dsl box. So when you activate the DHCP (USE_DHCP[1]="yes") on your computer you don't need to do anything else, it will asks for an IP address and even more info will come shipped with this ip address. In this case the DHCP does not seem to be working, so we are going to try a "manual" configuration, it is quick and easy, let's try to replace your current /etc/rc.d/rc.inet1.conf file by the following one : Code:
# /etc/rc.d/rc.inet1.conf Code:
cp /etc/rc.d/rc.inet1.conf /etc/rc.d/rc.inet1.conf.BAK |
Apologies for the delay. I forgot to copy in the new config before I rebooted!
With the new config, eth1 stays up and the output from "ifconfig" is: Code:
eth1 Link encap:Ethernet HWaddr 30:85:a9:eb:72:a5 |
Can you please confirm that pinging the same 2 addresses works from another computer (windows or linux doesn't matter at all).
If yes (what i strongly suppose) we now have to check the basics. It is going to be painful (i mean not very interesting) but it MUST BE DONE. -You should first check that the cable is plugged, -Then you must ensure that this cable is ok (cross checking) -Then check if there any flashing lights on your network card (usually green and or orange) -If you are using a switch then you can check it (flashing light on the port to which you are connected, powered on(!)) If the material part is ok, then we will have to sort out why your network interface was renamed, but let's start with the current tasks. |
Having an IP address means the DHCP daemon gave you a lease. The fact you had to manually add routes as you said in your OP is a bit odd because usually asking for a lease doesn't involve asking for specifics. Checking your DHCP clients leases file (somewhere in /var) against 'ip route show' (or 'route -n') output shows you what response you got and if it stuck.
|
All the connections are OK. I have connected from the new box under Windows to both my BT router-modem and my old D-Link modem and thence to the internet from either device.
(The old modem is now back on the old computer so I can be on-line. The BT device came bundled with a service upgrade ages ago had not taken out of its wrapping until yesterday. I used it now because it is also a router and will serve both computers (when I get a longer ethernet cable, which is on its way). Meantime, I'm on-line on the old kit with the D-Link and the BT router is connected to the new box but unplugged from the telephone line which is needed for the old.) The instructions with the BT device do not give an IP address, so I had to ask that of Windows when it found the device. That's where I got 192.168.1.254. The D-Link is always 192.168.1.1. Although I've not pinged it from Windows on the new box, I did better than that -- I logged into it by typing "192.168.1.1" in the address bar of my browser, just as I do under Linux on the computer I'm on now. On unSpawn's question, I re-booted with the original config as modified for eth1 (ie IPADDR[1]="") and "ip route show" gave: Code:
127.0.0.0/8 dev lo scope link The same command on this machine (the one I'm typing on) gives: Code:
86.145.104.76 dev eth0 scope link |
I'm sorry but I think you're unnecessarily complicating things: nowhere did I ask you to reconfigure and reboot, just checking the lease file and showing diagnostics output, and if you know the machine uses DHCP, that running 'ifconfig eth1 up' on its own "doesn't work" and that manually adding routes does work then at least you could have tried that IMHO. It appears that "this machine" (whatever designation that may be) doesn't get a local DHCP lease but uses your external IP address as if the router was in bridge mode or something. That being the case you find yourself in 86.128.0.0/11, meaning pinging the whole 192.168.1.0/24 makes no sense as you have no route into it.
|
OK, looping through all the numbers was pointless, but I though I might have got the IPA wrong, and it was easy enough to do just by looping with "ping ...$X && exit" to catch any hits.
However, as I said in the first post, I did try adding the route manually, because it works on my old box (the one I'm on now) but not on the new one. Before upping eth1, the ping response was Code:
Network is unreachable Code:
ifconfig eth1 up Code:
Network is unreachable Code:
route add -host 192.168.1.254 eth1 Code:
From 127.0.0.1 ... Destination Host Unreachable I'm afraid I don't understand about leases and bridges and 86.128.0 (although obviously it would help if I did and some day maybe I will). |
OK, let's try one more time. Boot the machine and without doing anything else post:
Code:
cat /etc/rc.d/rc.inet1.conf 1. If you use another DHCP client substitute the file name. * If anything returns "file or directory not found" please find and substitute the file name. ** Add any network diagnostics yourself if you think it may help. |
The /etc/rc.d/rc.inet1.conf file is
Code:
# /etc/rc.d/rc.inet1.conf Code:
root: ps au | grep dhcpd Code:
Internet Systems Consortium DHCP Server V3.0.6 Code:
Not configured to listen on any interfaces! Code:
root: cat todo |
Sorry, my mistake: the DHCP client is /sbin/dhcpcd so it doesn't need /etc/dhcpd.conf but should get the values from /etc/rc.d/rc.inet1.conf and the leases file for eth1 should be /etc/dhcpc/dhcpcd-eth1.info AFAIK.
Check ('pgrep dhcpcd' or 'ps -C dhcpcd') if /sbin/dhcpcd is running (should since you have USE_DHCP[1]="yes") else restart inet1 service. Now check ifconfig, route, lease file, /etc/resolv.conf contents and syslog (latter just in case there's any error messages). Else you could run dhcpcd manually with messages saved and on stdout: '/sbin/dhcpcd -k; /sbin/dhcpcd -d eth1 2>&1 | tee /flash/dhcpc.log' . Else try reconfiguring with 'netconfig'? |
All times are GMT -5. The time now is 01:40 PM. |