ichigo77
Goto Top

Verständnisfrage zu LAN und Router

Hallo Zusammen ,

hab folgendes Bild:

b0ef31e018517e5c4d06f515de85e996



Meine Frage:

Man stelle sich vor man baut das Netzwerk auf dem Bild auf & verkabelt alles. Und man stelle sich vor die Routingtabellen
der beiden Router sind leer. Ausserdem kennen die Router & Rechner sich gegenseitig nicht, sie kennen nicht die MAC-Adressen des
Gegenübers. Genauso kennen die Rechner sich nicht gegenseitig.

Gibt man in Rechner X einen "ping" Befehl + IP (von Rechner Y), dann wird zuerst ein Broadcast in Netz 1 gemacht (ARP-Requst)--->

--->Rechner Y antwortet (ARP-Reply) mit seiner MAC-Adresse ---> Rechner X "kennt" nun Rechner Y & kann ihm Pakete schicken.


Das gleiche macht man mit dem rechten Router. Also in Rechner X: "ping" Befehl + IP (vom rechtenRouter) --> Rechner X kennt nun auch den rechten Router

1.Was genau passiert aber , wenn man in Rechner X eingibt : "ping" Befehl + IP (von Rechner Q) ?
Rechner X merkt ja, durch Netzmaske, dass Rechner Q nicht im selben Subnetz ist.
Wird nun ein Broadcast ins Netz 1 gemacht oder wird der rechte Router direkt angesprochen ?

2.Wenn Letzteres der Fall ist, wie kann Rechner X zwischen rechtem Router und Rechner Y unterscheiden ?
Beide haben ja jeweils eine Netzwerkkarte mit MAC-Adresse, woher weiss nun Rechner X , dass die eine Netzwerkkarte zum Router gehört
und die andere zu einem normalen Rechner ?
Aus der Sicht von Rechner X , "sieht" er ja nur die Netzwerkkarten.

3.Nehmen wir jetzt an die beiden Router kennen sich mittlerweile. Woher weiss der rechte Router, dass der linke Router ein Router ist ?

4.Nehmen wir wieder an die beiden Router kennen sich und das ping-Paket von Rechner X gelangt zum rechtem Router, dieser weiss
dass Rechner Q nicht in einem seiner Subnetze ist.
-->Er schickt das Paket weiter zum linken Router.
Der rechte Router weiss aber nicht in welchem Subnetz Rechner Q ist, er weiss also nicht dass Rechner Q in einem Subnetz vom linken
Router ist. Warum schickt er das Paket dennoch zum linken Router ?


Sorry, dass es soviele Fragen sind, aber ich bin etwas am verzweifeln. Hoffe ihr könnt mir weiterhelfen.

Content-Key: 270276

Url: https://administrator.de/contentid/270276

Printed on: April 19, 2024 at 08:04 o'clock

Member: EvilMoe
EvilMoe Apr 25, 2015 updated at 18:15:48 (UTC)
Goto Top
1.Was genau passiert aber , wenn man in Rechner X eingibt : "ping" Befehl + IP (von Rechner Q) ?
Rechner X merkt ja, durch Netzmaske, dass Rechner Q nicht im selben Subnetz ist.
Wird nun ein Broadcast ins Netz 1 gemacht oder wird der rechte Router direkt angesprochen ?
Nein, warum sollte ein Broadcast in Netz 1 gemacht werden?

Der Rechner X fragt seinen Gateway, ob der eine Weg zu dem Netz 3 kennt.

2.Wenn Letzteres der Fall ist, wie kann Rechner X zwischen rechtem Router und Rechner Y unterscheiden ?
Beide haben ja jeweils eine Netzwerkkarte mit MAC-Adresse, woher weiss nun Rechner X , dass die eine Netzwerkkarte zum Router
gehört
und die andere zu einem normalen Rechner ?
Aus der Sicht von Rechner X , "sieht" er ja nur die Netzwerkkarten.

Ich verstehe die Frage nicht. Der Router und er PC haben unterschiedliche IP Adressen. Der Rechner weiß über welches Interface welche IP er erreichen kann.


3.Nehmen wir jetzt an die beiden Router kennen sich mittlerweile. Woher weiss der rechte Router, dass der linke Router ein Router
ist ?

Warum muss er das denn wissen? Ein PC kann auch mit der entsprechenden Software wie ein Router agieren.
Ansonsten legst du das in der Routingtabelle fest.

4.Nehmen wir wieder an die beiden Router kennen sich und das ping-Paket von Rechner X gelangt zum rechtem Router, dieser weiss
dass Rechner Q nicht in einem seiner Subnetze ist.
-->Er schickt das Paket weiter zum linken Router.
Der rechte Router weiss aber nicht in welchem Subnetz Rechner Q ist, er weiss also nicht dass Rechner Q in einem Subnetz vom
linken
Router ist. Warum schickt er das Paket dennoch zum linken Router ?

Wenn er das Paket zum linken Router schickt, muss er zwangläufig wissen das dort auch das Subnetz ist (static route).
Wenn es sich allerdings um dynamisches handelt, dann schickt er es nur auf gut glück weiter. Der linke Router leitet es entsprechend weiter falls er das Subnetz kennt, wenn nicht antwortet er entsprechend.


Sorry, dass es soviele Fragen sind, aber ich bin etwas am verzweifeln. Hoffe ihr könnt mir weiterhelfen.

Member: Loeneberger
Loeneberger Apr 25, 2015 at 18:28:02 (UTC)
Goto Top
Hej IchiGo77,

vielleicht kannst du schreiben, was DU erreichen möchtest.
Wozu baust du sowas (virtuell) auf ?

Möchtest du, dass sich die PCs aus den unterschiedlichen Netzen nicht erreichen können (Beispiel: Kinderzimmer / Büro),
oder wozu sollen die unterschiedlichen Netze gut sein - Fragezeichen

LG
Loeneberger
Member: dog
Solution dog Apr 25, 2015, updated at Apr 26, 2015 at 22:03:55 (UTC)
Goto Top
Also in Rechner X: "ping" Befehl + IP (vom rechtenRouter) --> Rechner X kennt nun auch den rechten Router

Geht nicht, denn deine Vorbedingung war:
Und man stelle sich vor die Routingtabellen der beiden Router sind leer.

Die Routingtabelle eines Routers ist aber nur dann leer, wenn er gar keine IP besitzt. Ergo kannst du ihn auch nicht anpingen.
Aber wollen wir mal nicht so genau sein...

Rechner X merkt ja, durch Netzmaske, dass Rechner Q nicht im selben Subnetz ist.

Traffic an alle IPs, die nicht im lokalen Subnetz sind, wird an die MAC-Adresse des Routers geschickt.

Beide haben ja jeweils eine Netzwerkkarte mit MAC-Adresse, woher weiss nun Rechner X , dass die eine Netzwerkkarte zum Router gehört und die andere zu einem normalen Rechner ?

Über die MAC-Adresse, weil die für jede Netzwerkkarte auf der Welt eindeutig vergeben wird.

Woher weiss der rechte Router, dass der linke Router ein Router ist ?

Dadurch, dass jemand auf dem rechten Router eine Route über den linken Router eingerichtet hat.

Warum schickt er das Paket dennoch zum linken Router ?

Weil du konfiguriert hast, dass das Paket zum linken Router geschickt werden soll.
Wenn du das nicht hättest, würde er das Paket auch niemals dahin schicken, sondern einfach verwerfen.
Member: aqui
aqui Apr 26, 2015 updated at 06:40:15 (UTC)
Goto Top
Gibt man in Rechner X einen "ping" Befehl + IP (von Rechner Y), dann wird zuerst ein Broadcast in Netz 1 gemacht (ARP-Request)--->
Richtig !
Rechner Y antwortet (ARP-Reply) mit seiner MAC-Adresse ---> Rechner X "kennt" nun Rechner Y & kann ihm Pakete schicken.
Richtig !
Das gleiche macht man mit dem rechten Router. Also in Rechner X: "ping" Befehl + IP (vom rechtenRouter) --> Rechner X kennt nun auch den rechten Router
Richtig !
1.Was genau passiert aber , wenn man in Rechner X eingibt : "ping" Befehl + IP (von Rechner Q) ?
Das ist unter den von dir vorausgesetzten Bedingungen:
man stelle sich vor die Routingtabellen der beiden Router sind leer. Ausserdem kennen die Router & Rechner sich gegenseitig nicht, sie kennen nicht die MAC-Adressen des Gegenübers. Genauso kennen die Rechner sich nicht gegenseitig.

recht einfach.
Der IP Stack des Rechners X "merkt" anhand der netzfremden IP das er das Gateway dafür erreichen muss. Gateway ist aber nicht konfiguriert also dropped (schmeisst es weg) der TCP/IP Stack dieses Paket.
Durch die von dir oben in rot gemachten Vorgaben ist einzig und allein unter der Bedingung nur eine lokale Kommunikation im Netzwerk von Rechner X und Y möglich !
Das beantwortet gleich Frage 1:
Der Rechner X müsste nach dem Gateway (Router) ARPen um das Paket zur Weitervermittlung dahinzuschicken. Kann er aber nicht, da kein Gateway vorhanden...aus die Maus !
Dadirch wird gleichzeitig dann auch Frage 2 obsolet.
Normal unterscheidet der Rechner IMMER die Endgeräte anhand ihrer MAC Adresse ! Diese ist ja einzigartig und Rechner X kann somit sehr genau unterscheiden zw. rechtem Router und Rechner Y. Ist oben ja schon mehrfach beantwortet worden.
Durch das fehlende Gateway bei ihm kann er aber deshalb nur lokal kommunizieren. Er würde netzfremde Pakete also niemals an den rechten Router senden können. Dadurch hapert es dann vollständig durch deine roten Rahmenbedingungen an einem entsprechenden IP Forwarding.
3.Nehmen wir jetzt an die beiden Router kennen sich mittlerweile. Woher weiss der rechte Router, dass der linke Router ein Router ist ?
Das kommt darauf an, denn das hast du leider nicht genau spezifiziert wie die anderen Bedingungen face-sad
Option a.)
Die beiden Router haben dynamisches Routing aktiviert mit RIPv2, OSPF oder BGP, dann machen sie sich gegenseitig bekannt und tauschen ihre Routing Tabellen aus.
Option b.)
Kein dynamische Routing, dann musst du statische Routen definieren, damit sie die Pakete der angeschlossenen Netze die sie NICHT kennen entsprechend forwarden können. Bei statischen Routen "kennen" siech die Router nicht als Router sondern "hoffen" das deine statische Route stimmt und forwarden das Paket auf gut Glück.
Hast du keinerlei Routen definiert ob dynamisch oder statisch dann wird auch nicht geroutet bzw. schlägt ein Layer 3 Forwarding generell fehl. Es passiert dann in etwa das gleiche wie oben bei Rechner X mit dem fehlenden Gateway Eintrag.
Zielnetze für die KEIN Gateway eingetragen sind werden gedropped, also weggeschmissen lokal.
4.Nehmen wir wieder an die beiden Router kennen sich und das ping-Paket von Rechner X gelangt zum rechtem Router, dieser weiss dass Rechner Q nicht in einem seiner Subnetze ist. -->Er schickt das Paket weiter zum linken Router.
Richtig !
Das setzt jetzt aber voraus das du in allen Rechnern X, Y und Q das Gateway definiert hast und die Router ihre Routen haben !!
Der rechte Router weiss aber nicht in welchem Subnetz Rechner Q ist,
Doch das weiss er !!!
Eigentlich hat Kollege dog Recht hier denn deine Vorbedingung war das beide Router LEER sind also auch keine IPs in den angeschlossenen Netzen haben. Damit wäre dann alles tot aber vermutlich meinst du das nicht wirklich so...?!
Der Router "sieht" ja immer in den Layer 3 IP Header des empfangenen Paketes und erkennt als Destination IP die Zieladresse vom Rechner Q.
Der Rechner Q ist in einen direkt an ihm angeschlossenen IP Netzwerk ! Alle diese IP Netze die physisch DIREKT an ihm angeschlossen sind "kennt" der Router logischerweise, denn dafür hat er ha ein physisches Interface dort mit entsprechend konfigurierter IP Adresse und Subnetzmaske !
Er kennt logischerweise die Netze nicht , die NICHT direkt an ihm angeschlossen sind.
Linker Router = Kennt NICHT das Netz von Rechner X und Y
Rechter Router = Kennt nicht das Netz von Rechner Q
Die Netze die die Router NICHT kennen, die definierst du mit statischen Routen oder besser lässt die Router mit dynamsichen Routing Protokollen das selber erledigen.
Letzteres hat den unschätzbaren Vorteil das die Router automatisch auf Routing Änderungen reagieren OHNE das du was manuell anpassen musst wie bei statischen Routen !
aber ich bin etwas am verzweifeln.
Da muss man gar nicht verzweifeln. Eigentlich ist das kinderleicht wenn man nur mal etwas nachdenkt face-wink
Zum Rest ist ja oben durch die Kollegen schon alles weitere gesagt worden !
Member: broecker
broecker Apr 26, 2015 at 11:41:02 (UTC)
Goto Top
Hausaufgabe gelöst? face-smile
HG
Mark
Member: ichigo77
ichigo77 Apr 26, 2015 updated at 16:40:42 (UTC)
Goto Top
Hallo Leute,

Erstmal VIELEN DANK , dass ihr euch soviel Zeit genommen habt mir die Fragen zu beantworten ! Richtig korrekt von euch.
Und ich weiss die Sache mit den Vorbedingungen hab ich schlecht formuliert.

Ich hab da noch 3 dumme Fragen:
Vergessen wir mal alle Vorbedingungen.

1.Nehmen wir an wir konfigurieren am Rechner X das Gateway (Interface vom rechten Router) und machen nun ein 'ping' zum Rechner Q,
was genau passiert nun und welche Protokolle sind dabei beteiligt ? Sowie ich es verstanden hab macht Rechner X ein Unicast direkt zum Gateway,
also kein Broadcast ins Netz 1 rein ?


2.Ich weiss, dass der Rechner X die Endgeräte(Router und Rechner Y) anhand der MAC-Adresse eindeutig erkennt. Aber er weiss ja garnicht , welche
Dienste diese Endgeräte anbieten (z.B Router kann Pakete routen), dazu müsste ja eine Art Informationsaustausch stattfinden. Z.B 'sagt' der rechte
Router zum Rechner X:"Hey, ich kann Pakete routen, schickt mir alle netzfremden Pakete".
Oder ist das der falsche Ansatz und man muss beim Rechner einfach das Gateway einstellen & alle netzfremden Pakete werden direkt zum Router
gesendet ?

Und kann ein Rechner auch an 2 verschiedene Routern angeschlossen sein (also 2 Gateways haben) ?


3.Nehmen wir an, wir haben 5 Router in einer Reihe miteinander verbunden & statisches Routing eingestellt:

|R1|------Netz a------|R2|----Netz b------|R3|----Netz c-------|R4|-----Netz d-------|R5|

Wir möchten ein Paket von R1 zu R5 bewegen, wie kann man das machen ?
Ich weiss nur, dass R1 das Paket über das Gateway R2 ins Netz b bringen kann, wie geht es da weiter, ?, man schreibt ja in die Tabelle von R1 nur wie das Paket zum Netz b gelangt und nicht komplett zu R5.
Ich denke man muss ja manuell die Routingtabellen aller Router einzeln festlegen, d.h. das Paket mit IP(von R5) hat in jedem Router eine andere feste Route ?
Wenn Letzteres der Fall, dann müsste auch ein Paket mit IP(von R4) in jedem Router eine fest eingetragene Route haben, genauso ein Paket mit IP(von R3) usw.


Danke schonmal im vorraus face-smile
Member: broecker
Solution broecker Apr 26, 2015 updated at 22:03:30 (UTC)
Goto Top
1. ICMP und DNS - falls nicht IPs sondern Namen angegeben werden..., tiefer im Gerät: ARP und ggf. Reverse-ARP
2. dafür gibt es doch Routen, welche IPs sind über welche Router erreichbar: Server X ist 192.168.1.20 ist in 192.168.1.0/24 möchte nach 8.8.8.8, muß also über mein Standardgateway 192.168.1.1 raus, Router intern 192.168.1.1 weiß, daß es über die öffentliche IP ins Internet geht, also von 193.123.45.2 direkt zum Provider-Router 193.123.45.1 usw.
3. wird ge-NAT-et, werden IPs (und Ports) ausgetauscht, werden Pakete "nur" geroutet, werden sie unverändert weitergesendet.
Absolute Netzwerkbasics, die Du dir bei Netzmafia oder auch Wikipedia ausgehend von TCP/IP anlesen solltest.
HG
Mark
Member: aqui
Solution aqui Apr 26, 2015 updated at 22:02:46 (UTC)
Goto Top
Ich hab da noch 3 dumme Fragen:
Gibts ja nicht nur dumme Antworten face-wink
Zu 1.)
Bitte lies dir das Kapitel "Der Weg eines Paketes...." hier durch:
Routing von 2 und mehr IP Netzen mit Windows, Linux und Router
Das erklärt mehr oder weniger alles. Nochmal grob:
  • Rechner X sendet ARP um Mac Adresse des Routers zu bekommen
  • X schickt Paket an Router
  • Router liest Ziel IP und sieht in seine Routing Tabelle und findet Router 2 als next Hop
  • Ggf. ARPt Router 1 dann Router 2 um die Mac zu bekommen und forwardet das Paket an R2
  • Router2 liest Ziel IP und sieht in seine Routing Tabelle und findet Q als lokale angeschossenes Netz
  • Router 2 ARPt Q um die Mac zu bekommen und forwardet das Paket an Q
  • Dann geht der Zirkus rückwärts. ARPen ist nicht mehr erforderlich da jeder die Mac Adressen im lokalen Cache hat.
2.)
Generell kann (fast) jedes Gerät was multiple Interfaces hat routen. Auf Servern (Windows, Linux, Mac) ist das im Kernel in der Regel deaktiviert, da diese Geräte ja nicht routen sollen, denn das sollen logischerweise Router machen im Netzwerk.
Das o.a. Tutorial erklärt das.
Endgeräte tauschen sich nicht über Fähigkeiten aus was das Paket Forwarding betrifft. Bei Router ist das anders. Siehe oben die Anmerkungen zu dynamischen Routing Protokollen !
Natürlich kann man sowas auch auf Endgeräten implementieren wie due HIER nachlesen kannst. In der Regel macht das aber wenig Sinn wenn diese Geräte primär Server oder Client Endgerät ist.
Forwarding geht also auch immer "auf gut Glück". Wenn der Empfänger irgendwas nicht kann schmeisst er das Paket weg und du musst Fehler suchen face-smile
Ein Endgerät kann auch an mehreren Gateways angeschlossen sein. Ob das benutzt wird oder sinnvoll ist ist einen andere Frage. Meist ist es das nicht und macht wenig Sinn. Wie gesagt: Routen sollen immer die Router im Netz und NICHT das Endgerät.
3.)
Wie man das machen kann steht ja oben schon in Antwort 1 ! Du musst dir einfach nur ein paar Router Hops mehr dazu denken.
Kein Mensch oder verantwortungsvoller Network Admin routet aber in solch komplexeren Router Strukturen noch statisch !!
Dort werden so gut wie immer dynamsiche Routing Protokolle wie RIPv2, OSPF, BGP usw. verwendet die das erheblich besser können und das auch dynamisch !
Bei statischen Routen gelten aber deine oben beschriebenen Erkenntnisse.