Router antwortet nicht auf ARP requests |
||
---|---|---|
#0
| ||
10.12.2003, 22:46
Member
Beiträge: 326 |
||
|
||
10.12.2003, 23:03
Member
Beiträge: 5291 |
#2
Tjoa hast leider jetzt den gesamten output vergessen - vom ping vom route usw. das wer alles schon sehr hilfreich gewesen. Klaro is ja das wenn du scho zwei netze benutzen willst brauchst du auch nen gateway der in beide netze drin steht. Den trägst du dann bei den clients in die routing table ein.
__________ E-Mail: therion at ninth-art dot de IRC: megatherion @ Freenode |
|
|
||
10.12.2003, 23:15
Member
Themenstarter Beiträge: 326 |
#3
Hm.
Xeper, eigentlich dachte ich, dass ein Router reicht um zwei Subnetze zu connecten. Ein Gateway ist notwendig wenn ich unterschiedliche Transportprotokolle verbinde - und das ist nicht der Fall. Allerdings solte das bei Linux kaum einen Unterschied machen. Basisnetz ist 192.168.0.0/24 mit z.B. einem Rechner 192.168.0.1. Attached Netz ist 192.168.2.0/24 Daran haengt ein bloeder LT mit 192.168.2.4 und dazwischen ein Router mit zwei NICs (192.168.0.6 und 192.168.2.6) der die ARPs nicht weiterleitet. Da ist nur ein kleines Bit was ich umschiessen muss - leider lacht das mich nicht an. Peter __________ "Really, I'm not out to destroy Microsoft. That will just be a completely unintentional side effect." Linus Benedict Torvalds Dieser Beitrag wurde am 10.12.2003 um 23:15 Uhr von framp editiert.
|
|
|
||
11.12.2003, 13:06
Member
Beiträge: 907 |
#4
wenn du auf den rechnern die gw eingetragen hast und beim router ip-forwarding aktiv ist, sollte das routing ohne weiteres funzen (es sei denn, du hast noch ne FW dazwischen)
vom router aus kannst in beide netze pingen? greez |
|
|
||
11.12.2003, 14:04
Member
Beiträge: 5291 |
#5
@Framp
Das ist nicht korekkt du hast das jetzt ein wenig verdreht ein Router ist dafür da wenn du mehrere Protkolle benutzt zb. TCP/IP und PPPoE. Ein Gateway ist dafür da um zwei netze die mit dem gleichen Protokoll operieren zu verbinden. Ich weiß nicht was bei dir das Problem ist - ohne output kann ich dazu nichts sagen aber die theorie ist ja klar du brauchs ein gateway der beiden netzen angehört von mir aus eth0 mit 192.168.0.1/24 und eth0:1 mit 192.168.2.1/24. Dann brauchst du diese addressen ja nur noch in die routing table einzutragen. Ansonsten natürlich den netfilter modifizieren wenn der die traffic blockt etc. __________ E-Mail: therion at ninth-art dot de IRC: megatherion @ Freenode |
|
|
||
11.12.2003, 15:25
Member
Beiträge: 907 |
#6
@xeper&framp
ich versuch's mal: ein gateway wird genutzt, wenn daten zw. verschiedenen protokollen ausgetauscht/umgesetzt werden einen router nutzt du, um verschiedene physische netzwerke (mit ein und demselben protokoll zu verbinden) im falle von reiner IP-Kommunikation handelt es sich also um einen router, im falle von TCP/IP-Kommunikation um ein gateway im normalen sprachgebrauch aber bedeuten beide begriffe (fälschlicherweise) das gleiche demnach lag framp richtig greez |
|
|
||
11.12.2003, 15:42
Member
Beiträge: 5291 |
#7
@Emba
Okay schön für dich und ich behaupte immer noch das von meinme letzten Post. Ein Gateway erweitert ein Netzwerk aber nur im selben Protokoll während ein Router verschiedene Protokolle übersetzt. Und klar ein Gateway routet auch pakete in sofern hat die Routing Table keinen einfluss auf die Unterschiedlichkeit der Begriffe Gateway und Router. Was denkst du warum die handelsüblichen Hardware Router - Router heißen? Weil sie verschiedene Protokolle übersetzen und auf OSI schicht 1-4 arbeiten. So wie gesagt ich bleibe dabei du kannst jetzt gerne das alles was ich Sage mit Beweisen über den Haufen werfen bzw. es wiederlegen. __________ E-Mail: therion at ninth-art dot de IRC: megatherion @ Freenode |
|
|
||
12.12.2003, 19:53
Member
Themenstarter Beiträge: 326 |
#8
Ok. Es geht also nicht ohne die Konfig:
SYS1 - eth0 -------- eth0 Router eth1 --------- eth0 TP 192.168.0.1 192.168.0.6 192.168.2.6 192.168.2.4 ping von Router zu SYS1 OK wie auch ping von Router zu TP. SYS1 ist auch Internet GW und hat deshalb noch eth1 und ppp0 aber das sollte nichts mit der Sache zu tun haben. Route auf Router Destination Gateway Genmask Flags Metric Ref Use Iface 192.168.2.0 0.0.0.0 255.255.255.0 U 0 0 0 eth1 192.168.0.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0 0.0.0.0 192.168.0.1 0.0.0.0 UG 0 0 0 eth0 Route auf SYS1 Destination Gateway Genmask Flags Metric Ref Use Iface 217.5.xx.xx 0.0.0.0 255.255.255.255 UH 0 0 0 ppp0 192.168.2.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0 192.168.1.0 0.0.0.0 255.255.255.0 U 0 0 0 eth1 192.168.0.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0 0.0.0.0 217.5.xx.xx 0.0.0.0 UG 0 0 0 ppp0 Route auf TP ctive Routes: Network Destination Netmask Gateway Interface Metric 0.0.0.0 0.0.0.0 192.168.0.1 192.168.2.4 1 127.0.0.0 255.0.0.0 127.0.0.1 127.0.0.1 1 192.168.2.0 255.255.255.0 192.168.2.4 192.168.2.4 10 192.168.2.4 255.255.255.255 127.0.0.1 127.0.0.1 10 192.168.2.255 255.255.255.255 192.168.2.4 192.168.2.4 10 224.0.0.0 240.0.0.0 192.168.2.4 192.168.2.4 10 255.255.255.255 255.255.255.255 192.168.2.4 3 1 255.255.255.255 255.255.255.255 192.168.2.4 192.168.2.4 1 Default Gateway: 192.168.0.1 Bei ping von SYS1 tu TP kann man auf eth0 die arp requests sehen. tcpdump: listening on eth0 19:50:14.488122 arp who-has 192.168.2.4 tell 192.168.0.1 19:50:15.489115 arp who-has 192.168.2.4 tell 192.168.0.1 19:50:16.490122 arp who-has 192.168.2.4 tell 192.168.0.1 Und auf dem Router gibt arp Address HWtype HWaddress Flags Mask Iface 192.168.2.4 ether 00:E0:98:87:24:C9 C eth1 192.168.0.1 ether 52:54:05:C4:58:D2 C eth0 d.h. die Adresse ist bekannt. Er antwortet nur einfach nicht auf den Request. Falls noch was zur PD fehlen sollte einfach nach fragen. __________ "Really, I'm not out to destroy Microsoft. That will just be a completely unintentional side effect." Linus Benedict Torvalds |
|
|
||
13.12.2003, 01:26
Member
Beiträge: 5291 |
#9
also aufm TP muss doch ne default route zum router hin das müßte doch dann 192.168.2.6 sein. Und was bringen dir die ganzen anderen einträge auf der TP router? sieht so aus als wer da ziemlich viel shit drin zb. 224.0.0.0 und 255.255.255.255 seid wann ist sowas ne netzwerk addresse? Der Sys1 müßte ja ne route zu dem router besitzen wenn er zum TP will 192.168.2.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0 das kann ja gar nich ich dachte der Sys1 wer gar nicht am x.x.2.0 netz angeschlossen. Also nach meiner Meinung nach ist es offensichtlich das da einfach zuviele Fehler drin sind und natürlich den netfilter prüfen.
__________ E-Mail: therion at ninth-art dot de IRC: megatherion @ Freenode |
|
|
||
14.12.2003, 00:31
Member
Themenstarter Beiträge: 326 |
#10
Mit MASQ tuts - was auch kein Wunder ist - die TP Adresse wird nicht propagiert. Es muss auch anders gehen. Scheint also doch ein groesseres Problem zu sein und ich muss tiefere Studien betreiben (google et al ...) und das ist demnach auch der Grund warum es keine ad hoc Antworten in diesem Forum gegeben hat .
Die Loesung poste ich als xref (Sofern ich sie finde ) __________ "Really, I'm not out to destroy Microsoft. That will just be a completely unintentional side effect." Linus Benedict Torvalds Dieser Beitrag wurde am 14.12.2003 um 00:35 Uhr von framp editiert.
|
|
|
||
28.01.2004, 19:17
Member
Themenstarter Beiträge: 326 |
#11
Wie versprochen die Loesung des Problems for future reference:
Es gibt /proc/sys/net/ipv4/conf/eth0/proxy_arp und das ist dummerweise per default 0 und fuehrt dazu dass ARP requests nicht weitergeleitet werden. Einfach echo "1" da hinein - und es funzt. __________ "Really, I'm not out to destroy Microsoft. That will just be a completely unintentional side effect." Linus Benedict Torvalds Dieser Beitrag wurde am 28.01.2004 um 19:27 Uhr von framp editiert.
|
|
|
||
28.01.2004, 19:40
Member
Beiträge: 907 |
#12
hm...die perfekte lösung ist das aber net, oder?
ich mein, proxy_arp als lösung mag okay sein, nur wenn auf dem laptop eine ordentliche ip-implementierung mit routing-verständnis existiert, so muss es auch ohne den proxy_arp gehen die ursache hast du also noch nicht gefunden? Zitat Erst dann ist eine LinuxBox ein "richtiger" Routerist er auch vorher schon, denn normalerweise hat der router nicht die aufgabe, permanent arp-anfragen, auch wenn sie nicht für ihn bestimmt sind, zu beantworten jeder client, der einen ip-stack hat sollte die arp-requests sofort an den router weiterleiten, wenn sich der gesuchte host außerhalb des netzsegmentes befindet greez |
|
|
||
29.01.2004, 09:13
Member
Themenstarter Beiträge: 326 |
#13
Zitat Emba posteteDas Problem lag nichtam TP. Es lag am Router. Der TP hat einen request zum SYS1 geschickt und der fragte den Router per ARP nach der IP Adresse. Leider hat der Router ohne die Aenderung nicht geantwortet und der TP hat deshalb keine Antwort bekommen. Zitat die ursache hast du also noch nicht gefunden?Ich denke mal schon. Wenn der Router keine ARP requests fuer seine dahinterliegenden Systeme beantwortet geht nun mal nichts. Allerdings weiss ich nicht warum SYS1 einen ARP request losschickt. Beim request vom TP ist ja seine Adresse enthalten und SYS1 weiss, dass die Antwort ueber Router zu TP zu schicken ist anhand seiner Routingtabelle. http://seclists.org/linux-kernel/2000/Sep/0261.html beschreibt das unterschiedliches Verhalten eines Cisco Routers und einer Linux Box die als Router eingesetzt wird. http://lists.freebsd.org/pipermail/freebsd-questions/2003-August/014669.html erklaert was zu tun ist um das zu fixen. Eine elegantere Moeglichkeit habe ich nicht gefunden. by the way: Weisst du wie ich nach Aktivierung eines IFs shells aufrufen kann, die z.B. Routings setzen oder das ARP_proxy bit setzen? __________ "Really, I'm not out to destroy Microsoft. That will just be a completely unintentional side effect." Linus Benedict Torvalds Dieser Beitrag wurde am 29.01.2004 um 09:14 Uhr von framp editiert.
|
|
|
||
29.01.2004, 13:32
Member
Beiträge: 907 |
#14
hi
was ist ein IF? *doof_fragt* Zitat Ich denke mal schon. Wenn der Router keine ARP requests fuer seine dahinterliegenden Systeme beantwortet geht nun mal nichts.wir hatten letztens folgendes szenario: GW1 [10.0.0.1/24] -> GW2 -> GW3 [11.0.0.1/24] GW2 besitzt 2 NIC's, um als router zwischen den anderen GWs (die beide in unterschiedlichen netzen "stehen"), zu dienen. proxy_arp war deaktiviert und ip_forwarding aktiviert GW2 erledigte den job (arp) dennoch zu vollster zufriedenheit wie erklärst du dir das? greez |
|
|
||
29.01.2004, 15:38
Member
Themenstarter Beiträge: 326 |
#15
Zitat Emba postete __________ "Really, I'm not out to destroy Microsoft. That will just be a completely unintentional side effect." Linus Benedict Torvalds Dieser Beitrag wurde am 29.01.2004 um 15:41 Uhr von framp editiert.
|
|
|
||
Ich habe ganz einfach an meinem Basinetz (192.168.0.0/24) ein weiteres Netz via Linux Router angeschlossen (192.168.2.0/24) hinter dem noch ein LabTop angeschlossen ist. Leider kann der nicht auf das Basisnetz pingen.
tcpdump zeigt, dass beim ping des LTs auf eine Resource im Basisnetz ein ARP request nach der IP ankommt - aber nicht von dem Router 192.168.2.6 and das andere NIC weitergeschickt wird. Forwarding ist an. Die BackwardRoute ebenso definiert.
Wenn ich umgekehrt von einem Rechner im Basinetz einen ping zum LT schicke ist auch der ARP request zu sehen - nur antwortet der 192.168.2.6 router nicht.
Als ich den LT am BasisRouter angeschlossen hatte funzte alles perfekt. Hat iregendjemand eine Idee welches Bit ich da noch umschiessen muss?
Merke: Wenn man denkt es ist simple ist es mit Sicherheit kompliziert ;-)
Peter
__________
"Really, I'm not out to destroy Microsoft. That will just be a completely unintentional side effect." Linus Benedict Torvalds