Routing Problem mit Debian
Routing Problem mit Debian
Hallo,
Ich habe hier ein fuer mich sehr merkwuerdiges Problem. Ich habe einen Rechner der unter Suse kein vergleichbares Problem hat. Wenn der Rechner bootet bekomme ich unter anderem:
SIOCADDRT: Network is unreacheble
Eine IP habe ich allerdings vom DHCP Server bekommen und dies eist auch korrekt. Doch funktioniert das Netzwerk halt nicht. Nach langem Suchen habe ich rausgefunden das das ganze funktioniert wenn ich in der Konsole folgendes eingebe:
grobi:~# route add default gw meine.IP eth0
grobi:~# dhclient
Dann funkioniert alles problemlos bis zum naechsten reboot bzw. ifdown eth0. Allerdings bringt das Komando route nur folgendes:
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
Keine Routingpoints oder irgendwas anderes. Das ist doch schon etwas merkwuerdig oder? Fuege ich nun in der /etc/network/interfaces folgende Zeile hinzu:
up route add default gw 81.169.172.54 eth0
funktioniert das ganze wenn ich nun dhclient ausfuehre. Aber noch nicht beim booten.
Hat einer eine Idee was da mit dem Routing nicht hinhaut?
Ich habe hier ein fuer mich sehr merkwuerdiges Problem. Ich habe einen Rechner der unter Suse kein vergleichbares Problem hat. Wenn der Rechner bootet bekomme ich unter anderem:
SIOCADDRT: Network is unreacheble
Eine IP habe ich allerdings vom DHCP Server bekommen und dies eist auch korrekt. Doch funktioniert das Netzwerk halt nicht. Nach langem Suchen habe ich rausgefunden das das ganze funktioniert wenn ich in der Konsole folgendes eingebe:
grobi:~# route add default gw meine.IP eth0
grobi:~# dhclient
Dann funkioniert alles problemlos bis zum naechsten reboot bzw. ifdown eth0. Allerdings bringt das Komando route nur folgendes:
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
Keine Routingpoints oder irgendwas anderes. Das ist doch schon etwas merkwuerdig oder? Fuege ich nun in der /etc/network/interfaces folgende Zeile hinzu:
up route add default gw 81.169.172.54 eth0
funktioniert das ganze wenn ich nun dhclient ausfuehre. Aber noch nicht beim booten.
Hat einer eine Idee was da mit dem Routing nicht hinhaut?
Beim Booten bekomme ich folgende Meldung:
Nach dem Booten bringt ifconfig folgendes:
Ein dhclient bringt nun (nach dem hinzufuegen der Zeile up route add .... in /etc/network/interfaces folgedes:
Die anderen Netzerwerkinterfaces brauchen erstmal nicht beachtet werden. Wichtig ist das eth0 sauber laeuft. Schonmal danke falls jetzt noch jemand eine Idee hat. Achja, ich habe Debian auf eine recht unkonventionelle Art installiert. Es waere auch denkbar das zum beispiel eine Konfigurationsdatei fehlt etc. Ich vermuete da fehlt die entscheidene zum routen!?! DIe /etc/hosts hat auch gefehlt bis ich sie angelegt habe.
Wie gesagt: Problem: route bring keine Ausgabe, aber gerade Routen sollte bei diesem rechner funktionieren.
Code: Alles auswählen
e1000: eth0 NIC Link is Up 100 Mbps Full Duplex
NET: Registered protocol family 17
Listening on LPF/eth0/00:30:48:42:72:84
Sending on LPF/eth0/00:30:48:42:72:84
Sending on Socket/fallback/fallback-net
DHCPREQUEST on eth0 to 255.255.255.255 port 67
DHCPACK from 81.169.172.2
SIOCADDRT: Network is unreachable
bound to 81.169.172.54 -- renewal in 43200 seconds.
done.
Code: Alles auswählen
eth0 Link encap:Ethernet HWaddr 00:30:48:42:72:84
inet addr:81.169.172.54 Bcast:81.169.172.54 Mask:255.255.255.255
inet6 addr: fe80::230:48ff:fe42:7284/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:376 errors:0 dropped:0 overruns:0 frame:0
TX packets:12 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:25508 (24.9 KiB) TX bytes:1128 (1.1 KiB)
Interrupt:22 Base address:0xa000 Memory:ec000000-ec020000
Code: Alles auswählen
sit0: unknown hardware address type 776
sit0: unknown hardware address type 776
Listening on LPF/sit0/<null>
Sending on LPF/sit0/<null>
Listening on LPF/lo/<null>
Sending on LPF/lo/<null>
Listening on LPF/eth1/00:30:48:42:72:85
Sending on LPF/eth1/00:30:48:42:72:85
Listening on LPF/eth0/00:30:48:42:72:84
Sending on LPF/eth0/00:30:48:42:72:84
Sending on Socket/fallback/fallback-net
DHCPDISCOVER on sit0 to 255.255.255.255 port 67 interval 8
DHCPDISCOVER on lo to 255.255.255.255 port 67 interval 3
DHCPDISCOVER on eth1 to 255.255.255.255 port 67 interval 4
DHCPREQUEST on eth0 to 255.255.255.255 port 67
DHCPACK from 81.169.172.2
bound to 81.169.172.54 -- renewal in 43200 seconds.
Wie gesagt: Problem: route bring keine Ausgabe, aber gerade Routen sollte bei diesem rechner funktionieren.
Ich glaube, da bekommst Du etwas Müll vom dhcp-server...
AFAIK sind 255.255.255.255 Netzmasken nicht erlaubt.
was hast Du denn zur Zeit in network/interfaces stehen ?
Code: Alles auswählen
inet addr:81.169.172.54 Bcast:81.169.172.54 Mask:255.255.255.255
was hast Du denn zur Zeit in network/interfaces stehen ?
SID on IBM T42p kernel 2.6.14.5 ati-8.20.8
In meiner /etc/network/interfaces steht folgendes:
Die letze Zeile muss ich wie gesagt hinzufuegen sonst gehts auch nicht mit Ausfuehren von dhclient, oder ich muesste das halt immer vorher noch per Hand eingeben.
Wo wir schonmal dabei sind hier mal die Daten vom gleichen Rechner mit einer Suse Standartinstallation (hier funktioniert dhcp problemlos):
Wie man sieht die Subnetmaske ist auch hier 255.255.255.255!?! Und hier funktioniert auch das route:
ich weiss nichtmehr weiter.
Code: Alles auswählen
auto lo
iface lo inet loopback
auto eth0
iface eth0 inet dhcp
up route add default gw 81.169.172.54 eth0
Wo wir schonmal dabei sind hier mal die Daten vom gleichen Rechner mit einer Suse Standartinstallation (hier funktioniert dhcp problemlos):
Code: Alles auswählen
grobi:~ # ifconfig
eth0 Link encap:Ethernet HWaddr 00:30:48:42:72:84
inet addr:81.169.172.54 Bcast:81.169.172.54 Mask:255.255.255.255
inet6 addr: fe80::230:48ff:fe42:7284/64 Scope:Link
UP BROADCAST NOTRAILERS RUNNING MULTICAST MTU:1500 Metric:1
RX packets:28 errors:0 dropped:0 overruns:0 frame:0
TX packets:16 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:100
RX bytes:3556 (3.4 Kb) TX bytes:1804 (1.7 Kb)
Interrupt:22 Base address:0xa000 Memory:ec000000-ec020000
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host
UP LOOPBACK RUNNING MTU:16436 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:0 (0.0 b) TX bytes:0 (0.0 b)
Code: Alles auswählen
grobi:~ # route
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
81.169.172.1 * 255.255.255.255 UH 0 0 0 eth0
default 81.169.172.1 0.0.0.0 UG 0 0 0 eth0
ok irgendwie scheint dein client das default gw vom dhcp-server nicht mitzubekommen
was sagt den
was sagt den
Code: Alles auswählen
less /var/lib/dhcp/dhclient.leases
SID on IBM T42p kernel 2.6.14.5 ati-8.20.8
gleich nach dem booten:
Und hier der output nach dhclient, wenn das Netzwerk wieder laeuft:
Ok, nun koennte man meinen, mein hostname und der der da steht stimmen nicht ueberein. Das ist richtig, aber auch wenn ich diesen auf den den ich eigentlich nehmen soll stelle, funktioniert es auch nicht. Koennte es trotzdem damit was zu tun haben?
Code: Alles auswählen
lease {
interface "eth0";
fixed-address 81.169.172.54;
filename "pxelinux.0";
server-name "primary-dhcpd";
option subnet-mask 255.255.255.255;
option routers 81.169.172.1;
option domain-name-servers 81.169.163.104,81.169.164.9;
option host-name "h4368";
option domain-name "serverkompetenz.net";
option dhcp-lease-time 86400;
option dhcp-message-type 5;
option dhcp-server-identifier 81.169.163.102;
renew 4 2004/2/19 22:58:59;
rebind 5 2004/2/20 07:58:59;
expire 5 2004/2/20 10:58:59;
}
lease {
interface "eth0";
fixed-address 81.169.172.54;
filename "pxelinux.0";
server-name "primary-dhcpd";
option subnet-mask 255.255.255.255;
option routers 81.169.172.1;
option domain-name-servers 81.169.163.104,81.169.164.9;
option host-name "h4368";
option domain-name "serverkompetenz.net";
option dhcp-lease-time 86400;
option dhcp-message-type 5;
option dhcp-server-identifier 81.169.163.102;
renew 5 2004/2/20 00:22:01;
rebind 5 2004/2/20 09:22:01;
expire 5 2004/2/20 12:22:01;
}
Code: Alles auswählen
lease {
interface "eth0";
fixed-address 81.169.172.54;
filename "pxelinux.0";
server-name "primary-dhcpd";
option subnet-mask 255.255.255.255;
option routers 81.169.172.1;
option domain-name-servers 81.169.163.104,81.169.164.9;
option host-name "h4368";
option domain-name "serverkompetenz.net";
option dhcp-lease-time 86400;
option dhcp-message-type 5;
option dhcp-server-identifier 81.169.163.102;
renew 5 2004/2/20 00:30:32;
rebind 5 2004/2/20 09:30:32;
expire 5 2004/2/20 12:30:32;
}
lease {
interface "eth0";
fixed-address 81.169.172.54;
filename "pxelinux.0";
server-name "primary-dhcpd";
option subnet-mask 255.255.255.255;
option routers 81.169.172.1;
option domain-name-servers 81.169.163.104,81.169.164.9;
option host-name "h4368";
option domain-name "serverkompetenz.net";
option dhcp-lease-time 86400;
option dhcp-message-type 5;
option dhcp-server-identifier 81.169.163.102;
renew 5 2004/2/20 00:32:17;
rebind 5 2004/2/20 09:32:17;
expire 5 2004/2/20 12:32:17;
}
also ich bin immer noch davon überzeugt, daß es mit der netzmaske zusammenhängt. bei einer Netzmaske 255.255.255.255 wird traffic AFAIK gar nicht geroutet, d.h. er kann nicht das default gw erreichen, was aber Bedingung für das einrichten einer defaultroute ist.
SID on IBM T42p kernel 2.6.14.5 ati-8.20.8
wenn Du halt eine statische Route schon eingetragen hast, wirds funktionieren
ich vermute mal das er unter SUSE die 255.255.255.255 irgendwie direkt in 255.255.255.0 umsetzt.
Interessant wäre mal was Suse in der dhcpd.leaeses stehen hat und was es bei ifconfig ausgibt
ich vermute mal das er unter SUSE die 255.255.255.255 irgendwie direkt in 255.255.255.0 umsetzt.
Interessant wäre mal was Suse in der dhcpd.leaeses stehen hat und was es bei ifconfig ausgibt
SID on IBM T42p kernel 2.6.14.5 ati-8.20.8
Was Suse bei dhclient ausgibt hab ich oben schonmal gepostet.
Die datei dhcpd.leaeses finde ich nicht unter Suse . Irre ich mich jetzt oder ist der dhcpd nicht der Daemon fuer dhcp-server? Den habe ich aber nicht laufen. Bin doch nur ein dhcp-Client.
Code: Alles auswählen
eth0 Link encap:Ethernet HWaddr 00:30:48:42:72:84
inet addr:81.169.172.54 Bcast:81.169.172.54 Mask:255.255.255.255
inet6 addr: fe80::230:48ff:fe42:7284/64 Scope:Link
UP BROADCAST NOTRAILERS RUNNING MULTICAST MTU:1500 Metric:1
RX packets:27 errors:0 dropped:0 overruns:0 frame:0
TX packets:16 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:100
RX bytes:4358 (4.2 Kb) TX bytes:1804 (1.7 Kb)
Interrupt:22 Base address:0xa000 Memory:ec000000-ec020000
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host
UP LOOPBACK RUNNING MTU:16436 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:0 (0.0 b) TX bytes:0 (0.0 b)
Hmmmm, also unter Suse existiert diese Datei irgendwie nicht, oder ich finde sie nicht. Interessant koennte aber Folgendes sein:
Unter Debian gibs diese dhclient.leases schon, da steht dann direkt nach dem Booten:
Nachdem Ausfuehren von dhclient (mit der ZEile up route ad ... ) hat sich daran nichts geaendert.
Code: Alles auswählen
h4368:/var/lib/dhcpcd # cat dhcpcd-eth0.info
IPADDR=81.169.172.54
NETMASK=255.255.255.255
NETWORK=81.169.172.54
BROADCAST=81.169.172.54
GATEWAY=81.169.172.1
HOSTNAME='h4368'
DOMAIN='serverkompetenz.net'
DNS=81.169.163.104,81.169.164.9
DHCPSID=81.169.163.102
DHCPGIADDR=81.169.172.2
DHCPSIADDR=81.169.163.102
DHCPCHADDR=00:30:48:42:72:84
DHCPSHADDR=00:02:4A:33:F4:00
DHCPSNAME='primary-dhcpd'
LEASETIME=172800
RENEWALTIME=86400
REBINDTIME=151200
INTERFACE='eth0'
CLASSID='Linux 2.4.19-4GB i686'
CLIENTID=00:E0:4C:39:0F:7D
Code: Alles auswählen
grobi:~# cat /var/lib/dhcp/dhclient.leases
lease {
interface "eth0";
fixed-address 81.169.172.54;
filename "pxelinux.0";
server-name "primary-dhcpd";
option subnet-mask 255.255.255.255;
option routers 81.169.172.1;
option domain-name-servers 81.169.163.104,81.169.164.9;
option host-name "h4368";
option domain-name "serverkompetenz.net";
option dhcp-lease-time 86400;
option dhcp-message-type 5;
option dhcp-server-identifier 81.169.163.102;
renew 5 2004/2/20 03:37:59;
rebind 5 2004/2/20 12:37:59;
expire 5 2004/2/20 15:37:59;
}
lease {
interface "eth0";
fixed-address 81.169.172.54;
filename "pxelinux.0";
server-name "primary-dhcpd";
option subnet-mask 255.255.255.255;
option routers 81.169.172.1;
option domain-name-servers 81.169.163.104,81.169.164.9;
option host-name "h4368";
option domain-name "serverkompetenz.net";
option dhcp-lease-time 86400;
option dhcp-message-type 5;
option dhcp-server-identifier 81.169.163.102;
renew 5 2004/2/20 04:56:17;
rebind 5 2004/2/20 13:56:17;
expire 5 2004/2/20 16:56:17;
}
mmmhhh cat dhcpd-eth0.info scheint wohl das entsprechende file zu sein allerdings wundere ich mich über die Zeilen
besonders über die mit der 81.169.172.2, woher könnte diese Adresse kommen ?
der Rest scheint ja genau gleich zu sein.
Code: Alles auswählen
DHCPSID=81.169.163.102
DHCPGIADDR=81.169.172.2
DHCPSIADDR=81.169.163.102
DHCPCHADDR=00:30:48:42:72:84
der Rest scheint ja genau gleich zu sein.
SID on IBM T42p kernel 2.6.14.5 ati-8.20.8
Irgend nen Nameserver oder so? Ich kenn mich in dem Netz wo der rechner steht nicht so wirklich aus. Es ist jedefnalls die selbe IP wie in dieser Zeile unter ifconfig in Debian:
Code: Alles auswählen
DHCPACK from 81.169.172.2
OK, ich glaube in absehbarer Zeit finden wir keine Loesung fuer DHCP. Wie stelle ich das ganze am besten statisch ein? Das sollte ja funktionieren. Das ganze muss am Ende so wie unter Suse aussehen. Diese Daten werden sich vorerst nicht aendern. Kann mit da einer mal die noetigen Eintraege in der /etc/network/interfaces posten? Oder muss man dafuer nochmehr tun?