[SuSE 8.2] Routingproblem
Hallo, trotz Schauen in die Anleitung im Linuxbu.ch und an anderer Stelle, komme ich mit meinem lokalen Netzwerkproblem nicht weiter. Symptom: Ich habe ein Notebook (192.168.0.66), auf dem ich weder mit SuSE 9.2 noch mit WinXP über einen anderen Rechner (eth1 192.168.0.55 und neu aufgesetzte SuSE 8.2) ins Internet raus komme. Mit ping kann ich die SuSE 8.2 erreichen. Ein Einloggen mit WinSCP (unter WinXP) oder ssh -X unter SuSE 9.2 vom Notebook aus klappt. Also die Verbindung insoweit funktioniert. Ich vermute deshalb ein Routingproblem. netstat -rn hat folgende Ausgabe (auf dem Router): Kernel IP Routentabelle Ziel Router Genmask Flags MSS Fenster irtt Iface 217.0.116.138 0.0.0.0 255.255.255.255 UH 0 0 0 ppp0 192.168.0.0 0.0.0.0 255.255.255.0 U 0 0 0 eth1 0.0.0.0 217.0.116.138 0.0.0.0 UG 0 0 0 ppp0 Da kann ich jetzt nichts ungewöhnliches erkennen. Alles, was ins Netz 192.168.0 geht, muß über eth1. Der Rest der Welt ist über die dynamische Adresse (217.0.116.138) beim Provider erreichbar. Auf dem Notebook sieht die Ausgabe folgendermaßen aus: Netzwerkz. Netzwerkma. Gateway Schnittstelle 0.0.0.0 0.0.0.0 192.168.0.55 192.168.0.66 (usw.) Standardgateway 192.168.0.55 (Ich hoffe, ich habe keine wichtige Info unterschlagen.) Für die SuSE 8.2 sind die beiden Variablen IP_DYNIP und IP_FORWARD auf yes umgesetzt. Das hat aber nichts gebracht. Die Ausgabe von ifconfig (auf SuSE 8.2): < ----- snip -----> eth0 Protokoll:Ethernet Hardware Adresse 00:30:84:73:A4:FF inet6 Adresse: fe80::230:84ff:fe73:a4ff/64 Gültigkeitsbereich:Verbindung UP BROADCAST NOTRAILERS RUNNING MULTICAST MTU:1500 Metric:1 RX packets:13682 errors:0 dropped:0 overruns:0 frame:0 TX packets:9531 errors:0 dropped:0 overruns:0 carrier:0 Kollisionen:3 Sendewarteschlangenlänge:100 RX bytes:16637048 (15.8 Mb) TX bytes:1050744 (1.0 Mb) Interrupt:10 Basisadresse:0x8000 eth1 Protokoll:Ethernet Hardware Adresse 00:80:AD:78:9F:D9 inet Adresse:192.168.0.55 Bcast:192.168.0.255 Maske:255.255.255.0 inet6 Adresse: fe80::280:adff:fe78:9fd9/64 Gültigkeitsbereich:Verbindung UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:292 errors:0 dropped:0 overruns:0 frame:0 TX packets:230 errors:0 dropped:0 overruns:0 carrier:0 Kollisionen:0 Sendewarteschlangenlänge:100 RX bytes:27212 (26.5 Kb) TX bytes:33862 (33.0 Kb) Interrupt:11 Basisadresse:0xe000 lo Protokoll:Lokale Schleife inet Adresse:127.0.0.1 Maske:255.0.0.0 inet6 Adresse: ::1/128 Gültigkeitsbereich:Maschine UP LOOPBACK RUNNING MTU:16436 Metric:1 RX packets:6068 errors:0 dropped:0 overruns:0 frame:0 TX packets:6068 errors:0 dropped:0 overruns:0 carrier:0 Kollisionen:0 Sendewarteschlangenlänge:0 RX bytes:2158483 (2.0 Mb) TX bytes:2158483 (2.0 Mb) ppp0 Protokoll:Punkt-zu-Punkt Verbindung inet Adresse:80.141.152.48 P-z-P:217.0.116.138 Maske:255.255.255.255 UP PUNKTZUPUNKT RUNNING NOARP MULTICAST MTU:1492 Metric:1 RX packets:140 errors:0 dropped:0 overruns:0 frame:0 TX packets:160 errors:0 dropped:9 overruns:0 carrier:0 Kollisionen:0 Sendewarteschlangenlänge:3 RX bytes:33794 (33.0 Kb) TX bytes:9321 (9.1 Kb) <--- snap -----> Die sieht für mich jetzt auch nicht ungewöhnlich aus. Gibt es noch eine Möglichkeit, vom Notebook aus (oder über den Router) zu klären, warum die Pakete nicht raus- oder reinkommen. Irgendwie möchte ich die Lösung erlernen, finde aber leider nicht die besagte Nadel im Heuhaufen (gr*). Vielleicht weiß ja jemand einen Tip für mich. Ich lerne immer wieder gerne dazu. Schönen Sonntag noch Andreas -- ## Content Developer OpenOffice.org: lang/DE ## Freie Office-Suite für Linux, Mac, Windows, Solaris ## http://de.openoffice.org ## Meine Seite http://www.amantke.de
On Sun, Feb 27, 2005 at 01:10:05PM +0100, Andreas Mantke wrote:
Für die SuSE 8.2 sind die beiden Variablen IP_DYNIP und IP_FORWARD auf yes umgesetzt. Das hat aber nichts gebracht.
Die Umstellung alleine reicht nicht, da die genannten Variablen nur beim booten gesetzt werden. Zeig mal "cat /proc/sys/net/ipv4/ip_forward /proc/sys/net/ipv4/ip_dynaddr", bzw. falls diese beiden '0' enthalten, schreib ne 1 rein: echo 1 > /proc/sys/net/ipv4/ip_dynaddr echo 1 > /proc/sys/net/ipv4/ip_forward -- Peter
Hallo Peter, danke erst eimal für den Tip. Am Sonntag, 27. Februar 2005 13:37 schrieb Peter Wiersig:
On Sun, Feb 27, 2005 at 01:10:05PM +0100, Andreas Mantke wrote:
Für die SuSE 8.2 sind die beiden Variablen IP_DYNIP und IP_FORWARD auf yes umgesetzt. Das hat aber nichts gebracht.
Die Umstellung alleine reicht nicht, da die genannten Variablen nur beim booten gesetzt werden.
Zeig mal "cat /proc/sys/net/ipv4/ip_forward /proc/sys/net/ipv4/ip_dynaddr", bzw. falls diese beiden '0' enthalten, schreib ne 1 rein:
ip_dynaddr stand auf 0. Habe beide jetzt auf 1 stehen. Leider noch kein Erfolg ;-) Grüße Andreas -- ## Content Developer OpenOffice.org: lang/DE ## Freie Office-Suite für Linux, Mac, Windows, Solaris ## http://de.openoffice.org ## Meine Seite http://www.amantke.de
Hallo Peter, danke erst eimal für den Tip. Am Sonntag, 27. Februar 2005 13:37 schrieb Peter Wiersig:
On Sun, Feb 27, 2005 at 01:10:05PM +0100, Andreas Mantke wrote:
Für die SuSE 8.2 sind die beiden Variablen IP_DYNIP und IP_FORWARD auf yes umgesetzt. Das hat aber nichts gebracht.
Die Umstellung alleine reicht nicht, da die genannten Variablen nur beim booten gesetzt werden.
Zeig mal "cat /proc/sys/net/ipv4/ip_forward /proc/sys/net/ipv4/ip_dynaddr", bzw. falls diese beiden '0' enthalten, schreib ne 1 rein:
ip_dynaddr stand
echo 1 > /proc/sys/net/ipv4/ip_dynaddr echo 1 > /proc/sys/net/ipv4/ip_forward
-- ## Content Developer OpenOffice.org: lang/DE ## Freie Office-Suite für Linux, Mac, Windows, Solaris ## http://de.openoffice.org ## Meine Seite http://www.amantke.de
Hallo, Andreas Mantke schrieb: ...
Für die SuSE 8.2 sind die beiden Variablen IP_DYNIP und IP_FORWARD auf yes umgesetzt. Das hat aber nichts gebracht.
Hast Du denn auch Masquerading aktiviert? Wenn Du einen Rechner als Router benutzen möchtest, dann muss er ja nicht nur die Pakete, die von anderen Rechnern kommen, weiterleiten (was über das IP_FORWARD passiert), sondern er muss auch alle Pakete mit einem anderen Absender versehen, nämlich der IP-Adresse, die er offiziell nach Außen hin hat. Sonst landen nämlich IP-Pakete mit einer Absender-Adressse aus einem privaten Bereich (192.168.0.x) im Internet, und die werden dort nicht weiter geroutet, bzw. der Absender ist nicht zu erkennen. Du musst also den Router so konfigurieren, dass er die Pakete maskiert, d.h. den Absender umschreibt. Dazu brauchst Du eine entsprechende Firewall-Regel. Bei SuSE kannst Du die Firewall recht komfortabel über die Datei /etc/sysconfig/SuSEfirewall2 konfigurieren, die ist sehr gut kommentiert. Passe die Einträge an, rufe einmal "SuSEconfig" auf, und starte die Firewall. HTH, Anke -- Think before you ...
Am Sonntag, 27. Februar 2005 14:08 schrieb Anke Boernig:
(...).
Genau. :-)
Passe die Einträge an, rufe einmal "SuSEconfig" auf,
Das kann man sich AFAIK sparen, /sbin/SuSEfirewall2 liest die Konfigurationsdateien direkt; nur bei "Nicht-SUSE-Programm"-Einstellungen müssen die erst durch SuSEconfig in die entsprechenden Konfigurationsdateien übertragen werden.
und starte die Firewall.
MfG, Jan -- For whatever reason, be it historical, or oppression, or what have you, there are an awful lot of not too bright women.
Hallo Anke, Am Sonntag, 27. Februar 2005 14:08 schrieb Anke Boernig:
Hallo,
Andreas Mantke schrieb:
...
Für die SuSE 8.2 sind die beiden Variablen IP_DYNIP und IP_FORWARD auf yes umgesetzt. Das hat aber nichts gebracht.
Hast Du denn auch Masquerading aktiviert?
Ja. Auf dem Weg, wie Du es beschrieben hast.
Wenn Du einen Rechner als Router benutzen möchtest, dann muss er ja nicht nur die Pakete, die von anderen Rechnern kommen, weiterleiten (was über das IP_FORWARD passiert), sondern er muss auch alle Pakete mit einem anderen Absender versehen, nämlich der IP-Adresse, die er offiziell nach Außen hin hat.
Ist schon klar, daß er die Header-Informationen neu schreiben muß (und auf dem Rückweg auch wieder zurückschreiben). Die entsprechenden Variablen sind folgendermaßen belegt: FW_DEV_EXT="ippp0" FW_DEV_INT="eth1" FW_ROUTE="yes" FW_MASQUERADE="yes" FW_MASQ_DEV="$FW_DEV_EXT" FW_MASQ_NETS="192.168.0.0/24" Gruß Andreas -- ## Content Developer OpenOffice.org: lang/DE ## Freie Office-Suite für Linux, Mac, Windows, Solaris ## http://de.openoffice.org ## Meine Seite http://www.amantke.de
Am Sonntag, 27. Februar 2005 14:33 schrieb Andreas Mantke:
(...). Ist schon klar, daß er die Header-Informationen neu schreiben muß (und auf dem Rückweg auch wieder zurückschreiben). Die entsprechenden Variablen sind folgendermaßen belegt:
FW_DEV_EXT="ippp0" FW_DEV_INT="eth1" FW_ROUTE="yes" FW_MASQUERADE="yes" FW_MASQ_DEV="$FW_DEV_EXT" FW_MASQ_NETS="192.168.0.0/24"
Das sieht ja eigentlich ganz gut aus, probier's mal ohne bzw. mit ausgeschalteter Firewall wie in /etc/sysconfig/SuSEfirewall2 beschrieben: # If you just want to do masquerading without filtering, ignore this script # and run this line (exchange "ippp0" "ppp0" if you use a modem, not isdn): # iptables -A POSTROUTING -t nat -j MASQUERADE -o ippp0 # echo 1 > /proc/sys/net/ipv4/ip_forward # and additionally the following lines to get at least a minimum of security: # iptables -A INPUT -j DROP -m state --state NEW,INVALID -i ippp0 # iptables -A FORWARD -j DROP -m state --state NEW,INVALID -i ippp0 HTH, Jan -- It's better to be a lion for a day, than a sheep all your life.
* Sonntag, 27. Februar 2005 um 14:33 (+0100) schrieb Andreas Mantke:
FW_DEV_EXT="ippp0"
Hier muss <<FW_DEV_EXT="ppp0">> stehen. Gruß Andreas -- Andreas Könecke "Andreas Koenecke <akoenecke@akoenecke.de>" PGP-ID/Fingerprint: BD7C2E59/3E 11 E5 29 0C A8 2F 49 40 6C 2D 5F 12 9D E1 E3 PGP-Key on request or on public keyservers --
Hallo Andreas Am Sonntag, 27. Februar 2005 16:39 schrieb Andreas Koenecke:
* Sonntag, 27. Februar 2005 um 14:33 (+0100) schrieb Andreas Mantke:
FW_DEV_EXT="ippp0"
Hier muss <<FW_DEV_EXT="ppp0">> stehen.
danke. Habe mich von den Kommentaren von SuSE ins Bockshorn jagen lassen. Jetzt tut's. Schönen Restsonntag noch Andreas -- ## Content Developer OpenOffice.org: lang/DE ## Freie Office-Suite für Linux, Mac, Windows, Solaris ## http://de.openoffice.org ## Meine Seite http://www.amantke.de
Am Sonntag, 27. Februar 2005 13:10 schrieb Andreas Mantke:
trotz Schauen in die Anleitung im Linuxbu.ch und an anderer Stelle, komme ich mit meinem lokalen Netzwerkproblem nicht weiter. Symptom: Ich habe ein Notebook (192.168.0.66), auf dem ich weder mit SuSE 9.2 noch mit WinXP über einen anderen Rechner (eth1 192.168.0.55 und neu aufgesetzte SuSE 8.2) ins Internet raus komme. Mit ping kann ich die SuSE 8.2 erreichen. Ein Einloggen mit WinSCP (unter WinXP) oder ssh -X unter SuSE 9.2 vom Notebook aus klappt. Also die Verbindung insoweit funktioniert. Ich vermute deshalb ein Routingproblem. (...). Vielleicht weiß ja jemand einen Tip für mich. Ich lerne immer wieder gerne dazu.
Was du brauchst ist nicht (nur) Forwarding, du brauchst vor allem Masquerading, das ist mit der SuSEfirewall2 (auf dem Router) eigentlich recht einfach einzurichten. Lies dir mal /etc/sysconfig/SuSEfirewall2 durch, dort findest du eine Anleitung: # If this server is a firewall, and should do routing/masquerading between # the untrusted and the trusted network, you have to reconfigure (all other # settings are OK): 2), 3), 5), 6), 9), and maybe 7), 10), 11), 12), 13), # 14), 20) Ansonsten, mehr Doku findest du in /usr/share/doc/packages/SuSEfirewall2/ und in http://prdownloads.sourceforge.net/susefaq/firewall2.pdf?download unter "Configuration of SuSEfirewall2 for Firewall Masquearading". HTH, Jan -- Loose lips, sink ships.
participants (5)
-
Andreas Koenecke
-
Andreas Mantke
-
Anke Boernig
-
Jan Ritzerfeld
-
Peter Wiersig