Zwei/Drei Ethernet Netzwerke mit Linux Gateways verbinden
Ping geht nur bis zum Gateway
Hallo,
ich möchte drei Ethernet-Netze "Netz1", "Netz2" und "Backbone" über zwei Linux-Rechner mit jeweils 2 Netzkarten erbinden. Dabei tritt ein Problem auf: Ich kann von Netz1 und Netz2 jeweils nur die beiden Linux-Karten der eigenen Gateways anpingen. Auf das jeweils entfernte Netz geht der Ping nicht durch.
Von den Linux-Rechnern lassen sich übrigens alle PC's aus Netz 1 und Netz 2 anpingen.
In Netz 1 und Netz 2 habe ich sowohl XP-Clients als auch Linux-Rechner konfiguriert, jedoch besteht das Problem weiterhin. Neuste Treiber für die Netzkarten, acpi ausschalten, routen setzen usw. war alles erfolglos. Selbst nach dem Austausch des Linux-Gateways gegen ein Windows-XP Gateway war dasselbe Problem da.
Nun bin ich mit meinem Latein am Ende und hoffe auf Eure Unterstützung. Vielen Dank.
Grüße
ils
So sehen die Netzwerke aus:
Hallo,
ich möchte drei Ethernet-Netze "Netz1", "Netz2" und "Backbone" über zwei Linux-Rechner mit jeweils 2 Netzkarten erbinden. Dabei tritt ein Problem auf: Ich kann von Netz1 und Netz2 jeweils nur die beiden Linux-Karten der eigenen Gateways anpingen. Auf das jeweils entfernte Netz geht der Ping nicht durch.
Von den Linux-Rechnern lassen sich übrigens alle PC's aus Netz 1 und Netz 2 anpingen.
In Netz 1 und Netz 2 habe ich sowohl XP-Clients als auch Linux-Rechner konfiguriert, jedoch besteht das Problem weiterhin. Neuste Treiber für die Netzkarten, acpi ausschalten, routen setzen usw. war alles erfolglos. Selbst nach dem Austausch des Linux-Gateways gegen ein Windows-XP Gateway war dasselbe Problem da.
Nun bin ich mit meinem Latein am Ende und hoffe auf Eure Unterstützung. Vielen Dank.
Grüße
ils
So sehen die Netzwerke aus:
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 27020
Url: https://administrator.de/contentid/27020
Ausgedruckt am: 20.11.2024 um 12:11 Uhr
24 Kommentare
Neuester Kommentar
Du musst auf jedem PC im Netz A eine statische Route nach Netz B und von jedem PC im Netz B eine nach Netz A einrichten mit:
"route add - p 192.168.2.0 mask 255.255.255.0 192.168.1.1"
bzw
"route add - p 192.168.1.0 mask 255.255.255.0 192.168.2.11"
Sieh Dir doch auch mal dieses Tutorial hier an:
Routing - Fremdnetz in vorhandenes Netz zur Internetnutzung einbinden
Gruß
Atti
"route add - p 192.168.2.0 mask 255.255.255.0 192.168.1.1"
bzw
"route add - p 192.168.1.0 mask 255.255.255.0 192.168.2.11"
Sieh Dir doch auch mal dieses Tutorial hier an:
Routing - Fremdnetz in vorhandenes Netz zur Internetnutzung einbinden
Gruß
Atti
Routen müssen eigentlich bei Clients nicht angegeben werden, es reicht immer die default Route in den Clients, die auf die jeweils korrespondierende IP Adresse des (routenden) Servers zeigen müssen, denn..... Der Router (eben das default Gateway oder wie hier der Server der Router spielt nebenbei) soll ja dann genau wissen wo meine Subnetze sind und auch den Weg dorthin ! Also generell machen NUR hier Routeeinträge einen Sinn um ihm diese Wege beizubringen und nicht den Clients ! Wer sehen möchte wie lange Wege sein können kann gerne einmal "traceroute (tracert bei Win) www.administrator.de eingeben um mal den Weg von sich selbst zum Forum zu sehen....
Der Server spielt ja hier immer den Router wenn man ihn denn lässt. Das Problem taucht in vielen Fragen hier immer wieder in der Rubrik Netzwerk auf ! Speziell auch über Benutzer die eine weitere Netzwerkverbindung mit WLAN Adaptern herstellen und dann über ihre XP Maschine ins Internet wollen mit dem Laptop von der Couch. Gleiches Problem 2 Subnetze kein Routing...gleiche Lösung !
Generell routet ein Server oder PC mit 2 oder mehr Netzwerkkarten nicht (jedenfalls nicht freiwillig )
Das Problem, wie immer, ist das Linux (wie übrigens auch Windows) bei den meisten Distributionen das IP Forwarding und damit das Routing ausgeschaltet hat, folglich also nicht routet und damit die Packete eben NICHT auf die andere Seite bringt ! Da helfen dann auch keine mehrfachen Routeeinträge auf den Clients !
Unter Linux ist das recht einfach, du schaltest einfach den Schalter "ip_forwarding" in den Netzwerkstellungen oder Systemeinstellungen ein und restartest den inet oder xinet Daemon. (..oder rebootest das System). Leider hast du nicht deine Distro angegeben so das ich das nicht detailiert sagen kann aber such einfach mal auf der Distro Webpage, da wirst du mit sicherheit fündig oder in den zahlosen Linux Foren. IP Forwarding oder routing als Suchbegriff sollte reichen.
Windows ist übrigens nur durch einen Registry Eingriff zum Routen zu bewegen:
http://www.microsoft.com/germany/technet/datenbank/articles/600712.mspx
Hier nochmal der Auszug daraus:
Unterstützung des IPv4-Routings in Windows
Windows Server 2003 unterstützt sowohl statisches als auch dynamisches IPv4-Routing. Windows XP unterstützt nur das statische IPv4-Routing !!!
Statisches Routing
Das statische Routing kann wie folgt aktiviert werden:
Für Computer, die entweder Windows Server 2003 oder Windows XP ausführen, können Sie das statische IPv4-Routing durch Festlegen des Registrierungseintrags HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\ Services\Tcpip\Parameters\IPEnableRouter auf den Wert 1 aktivieren (Datentyp ist REG_DWORD). Die Bearbeitung der Registrierung ist nur für Computer erforderlich, die Windows XP ausführen !!!
Ein "ipconfig -all" in der Command Box zeigt dies dann übrigens auch an ! (wenigstens bei Windows )
Der Server spielt ja hier immer den Router wenn man ihn denn lässt. Das Problem taucht in vielen Fragen hier immer wieder in der Rubrik Netzwerk auf ! Speziell auch über Benutzer die eine weitere Netzwerkverbindung mit WLAN Adaptern herstellen und dann über ihre XP Maschine ins Internet wollen mit dem Laptop von der Couch. Gleiches Problem 2 Subnetze kein Routing...gleiche Lösung !
Generell routet ein Server oder PC mit 2 oder mehr Netzwerkkarten nicht (jedenfalls nicht freiwillig )
Das Problem, wie immer, ist das Linux (wie übrigens auch Windows) bei den meisten Distributionen das IP Forwarding und damit das Routing ausgeschaltet hat, folglich also nicht routet und damit die Packete eben NICHT auf die andere Seite bringt ! Da helfen dann auch keine mehrfachen Routeeinträge auf den Clients !
Unter Linux ist das recht einfach, du schaltest einfach den Schalter "ip_forwarding" in den Netzwerkstellungen oder Systemeinstellungen ein und restartest den inet oder xinet Daemon. (..oder rebootest das System). Leider hast du nicht deine Distro angegeben so das ich das nicht detailiert sagen kann aber such einfach mal auf der Distro Webpage, da wirst du mit sicherheit fündig oder in den zahlosen Linux Foren. IP Forwarding oder routing als Suchbegriff sollte reichen.
Windows ist übrigens nur durch einen Registry Eingriff zum Routen zu bewegen:
http://www.microsoft.com/germany/technet/datenbank/articles/600712.mspx
Hier nochmal der Auszug daraus:
Unterstützung des IPv4-Routings in Windows
Windows Server 2003 unterstützt sowohl statisches als auch dynamisches IPv4-Routing. Windows XP unterstützt nur das statische IPv4-Routing !!!
Statisches Routing
Das statische Routing kann wie folgt aktiviert werden:
Für Computer, die entweder Windows Server 2003 oder Windows XP ausführen, können Sie das statische IPv4-Routing durch Festlegen des Registrierungseintrags HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\ Services\Tcpip\Parameters\IPEnableRouter auf den Wert 1 aktivieren (Datentyp ist REG_DWORD). Die Bearbeitung der Registrierung ist nur für Computer erforderlich, die Windows XP ausführen !!!
Ein "ipconfig -all" in der Command Box zeigt dies dann übrigens auch an ! (wenigstens bei Windows )
Hallo,
stehe ich jetzt nur auf dem Schlauch oder glaube ich einfach nicht, daß der -p Parameter das Problem gelöst hat??
Der Parameter -p sagt doch nur aus, daß die route persistent (also dauerhaft, sie ist dann auch nach einem Reboot des PCs da) gespeichert wird...... aber naja, wenn das Problem so gelöst wurde soll es auch egal sein.
Schönen Gruß
Hubsi
stehe ich jetzt nur auf dem Schlauch oder glaube ich einfach nicht, daß der -p Parameter das Problem gelöst hat??
Der Parameter -p sagt doch nur aus, daß die route persistent (also dauerhaft, sie ist dann auch nach einem Reboot des PCs da) gespeichert wird...... aber naja, wenn das Problem so gelöst wurde soll es auch egal sein.
Schönen Gruß
Hubsi
Wie bereits gesagt. Normalerweise muss in deinem Szenario GAR KEINE Route eingetragen werden !!! Wenn der Server richtig für IP Forwarding (sprich Routing) konfiguriert ist wie oben beschrieben reicht einzig und allein der default Gateway Eintrag auf den Clients ! Wenn statische Routen müssen die NUR auf dem Server eingetragen werden und auch NUR wenn du in den beiden Subnetzen weitere Router in andere Netze hast.
Deshalb -p oder nicht daran kanns eigentlich nicht gelegen haben...aber egal Hauptsache es rennt !!!
Deshalb -p oder nicht daran kanns eigentlich nicht gelegen haben...aber egal Hauptsache es rennt !!!
Hast Du denn mal auf je einem Rechner in jedem Netz die von mir angegebenen Routing-Einträge gemacht? Poste bitte mal die Textdatei aus:
"route print >C:\route.txt"
auf diesen beiden Clients hier,
Gruß
Atti.
PS: Zu Deinem Skizzen-Problem: Speichere die Skizze im PP im JPEG-Format und der Rest ist hier:
Snapshots in Beiträge einbinden
beschrieben.
"route print >C:\route.txt"
auf diesen beiden Clients hier,
Gruß
Atti.
PS: Zu Deinem Skizzen-Problem: Speichere die Skizze im PP im JPEG-Format und der Rest ist hier:
Snapshots in Beiträge einbinden
beschrieben.
Ooops nun haben wir ganz andere IP Adressen als am Anfang beschrieben. Nundenn, gehen wir mal strategisch vor:
1.) Du hast einen Tippfehler in deiner Skizze oben, denn das Netzwerk an Linux2 ist 10.02.100 aber ich gehe mal davon aus das der Punkt fehlt.
Checke bitte nochmal genau deine IP Adressen an den Adaptern:
Linux:
ifconfig eth0 und ifconfig eth1
Da sollte folgendes stehen:
eth0: IP: 10.0.0.2 Maske: 255.255.255.0 (Das Netz ist also 10.0.0.0)
eth1: IP: 10.0.2.1 Maske: 255.255.255.0 (Das Netz ist also 10.0.2.0)
Achte genau auf die Subnetzmasken, ein Fehler hat hier fatale Folgen !
Noch ein Tip: Die Host Adressen der Linux Maschine würde ich auf die gleiche Adresse (aber unterschiedliches Netz natürlich !) setzen, das ist einfacher zu merken. z.B.
10.0.0.1 auf dem einen und 10.0.2.1 auf dem anderen Adapter.
Aber so wie du ist es auf alle Fälle technisch nicht falsch
Bitte checke jetzt nochmal im DOS Fenster deiner Windows Maschinen mit "ipconfig -all" genau wieder diese Einstellungen. Die XP WS muss im 10.0.2.0er Netz sein und achte auch die Maske die muss 255.255.255.0 sein (Die Maske gilt für alle Adressen deines Netzes) !
Stimmt das alles und ist dein Netzwerk physisch ok MUSS ein Ping vom Linux auf den SMC Router mit 10.0.0.10 klappen, als auch auf den XP Recner unter 10.0.2.100 !
ACHTUNG: XP SP2 blockt ICMP Echo Packete und das ist Ping ggf. musst du das freigeben. Ein Ping von XP auf Linux muss aber funktionieren !
2.) Schritt: Dein SMC Router kennt natürlich das Netzwerk 10.0.2.0 hinter dem Linux Host NICHT, wo dein XP Rechner drin ist. Hier auf dem Router MUSST du eine statische Route nachtragen über das Webinterface. Da gibt es einen Menüpunkt für. Achtung: Ganz billige Router können das manchmal nicht !
3.) Dein Linux Server muss IP Forwarding aktiv haben !!! Ist das nicht der Fall geht gar nichts !!!
Bei RedHat/Fedora (bei anderen Distros ist es ähnlich) kannst du dies in der /etc/sysctl.conf einstellen, das sieht dann so aus:
Hier MUSS eine 1 stehen !!!!
Danach abspeichern und den inet Daemon nachstarten oder einfach die Maschine rebooten.
Danach sollte dann aber endlich allesmit allem pingbar sein
1.) Du hast einen Tippfehler in deiner Skizze oben, denn das Netzwerk an Linux2 ist 10.02.100 aber ich gehe mal davon aus das der Punkt fehlt.
Checke bitte nochmal genau deine IP Adressen an den Adaptern:
Linux:
ifconfig eth0 und ifconfig eth1
Da sollte folgendes stehen:
eth0: IP: 10.0.0.2 Maske: 255.255.255.0 (Das Netz ist also 10.0.0.0)
eth1: IP: 10.0.2.1 Maske: 255.255.255.0 (Das Netz ist also 10.0.2.0)
Achte genau auf die Subnetzmasken, ein Fehler hat hier fatale Folgen !
Noch ein Tip: Die Host Adressen der Linux Maschine würde ich auf die gleiche Adresse (aber unterschiedliches Netz natürlich !) setzen, das ist einfacher zu merken. z.B.
10.0.0.1 auf dem einen und 10.0.2.1 auf dem anderen Adapter.
Aber so wie du ist es auf alle Fälle technisch nicht falsch
Bitte checke jetzt nochmal im DOS Fenster deiner Windows Maschinen mit "ipconfig -all" genau wieder diese Einstellungen. Die XP WS muss im 10.0.2.0er Netz sein und achte auch die Maske die muss 255.255.255.0 sein (Die Maske gilt für alle Adressen deines Netzes) !
Stimmt das alles und ist dein Netzwerk physisch ok MUSS ein Ping vom Linux auf den SMC Router mit 10.0.0.10 klappen, als auch auf den XP Recner unter 10.0.2.100 !
ACHTUNG: XP SP2 blockt ICMP Echo Packete und das ist Ping ggf. musst du das freigeben. Ein Ping von XP auf Linux muss aber funktionieren !
2.) Schritt: Dein SMC Router kennt natürlich das Netzwerk 10.0.2.0 hinter dem Linux Host NICHT, wo dein XP Rechner drin ist. Hier auf dem Router MUSST du eine statische Route nachtragen über das Webinterface. Da gibt es einen Menüpunkt für. Achtung: Ganz billige Router können das manchmal nicht !
3.) Dein Linux Server muss IP Forwarding aktiv haben !!! Ist das nicht der Fall geht gar nichts !!!
Bei RedHat/Fedora (bei anderen Distros ist es ähnlich) kannst du dies in der /etc/sysctl.conf einstellen, das sieht dann so aus:
- Kernel sysctl configuration file for Red Hat Linux
- For binary values, 0 is disabled, 1 is enabled. See sysctl(8) and
- sysctl.conf(5) for more details.
- Controls IP packet forwarding
Hier MUSS eine 1 stehen !!!!
- Controls source route verification
- Do not accept source routing
- Controls the System Request debugging functionality of the kernel
- Controls whether core dumps will append the PID to the core filename.
- Useful for debugging multi-threaded applications.
Danach abspeichern und den inet Daemon nachstarten oder einfach die Maschine rebooten.
Danach sollte dann aber endlich allesmit allem pingbar sein
Ich habe jetzt noch ein Verständnisproblem: linux1 und linux2 sind zwei unterschiedliche Linuxrechner, oder? ... nur, weil Du schriebst: ... ich möchte zwei Ethernet-Netze A und B über einen Linux-Rechner mit 2 Netzkarten... und der SMC-Router hat einen Switch, an den die beiden Linux-Rechner angeschlossen sind?
Gruß
Atti
Gruß
Atti