Woher weiß ein IP-Paket, welches Gateway verwendet werden soll?


11

Angenommen, zwei Gateways befinden sich im selben Netzwerk. Wenn ich das richtig verstehe, entscheidet die IP-Routing-Tabelle auf dem Computer des Absenders, welche Pakete über welches Gateway weitergeleitet werden.

IP-Routing-Tabellen enthalten die IP-Adresse des Gateways.

Wie wird diese IP-Adresse des Gateways beim Senden von IP-Paketen verwendet?


1
Das Paket "weiß" nicht, der Router entscheidet über die Verbindung zwischen dem Router und dem ausgewählten Gateway, an welches Gateway es gesendet werden soll. (Wie die Antworten zeigen, ist Ethernet eine bekannte und verbreitete Schicht 2 für IP-Verkehr.)
Peter Cordes

Antworten:


13

TL; DR: In einem Ethernet-Frame, der dieses TCP / IP-Paket enthält

Beim Server-> Switch-> Router-Verkehr sowie beim Server-> Switch-> Server-Verkehr spielt die IP-Adressierung eigentlich keine bedeutende Rolle. Es ist die Welt des zugrunde liegenden Protokolls, höchstwahrscheinlich Ethernet. Es ist also eine Welt, die auf MAC-Adressierung läuft.

Sie müssen also nur die Verwirrung beseitigen, dass ein Standard-Gateway eine IP-Adresse ist. Es ist irgendwie ... beim Start ... aber dieser Gateway-IP-Parameter wird nur benötigt, um eine Sache zu tun, nämlich zu fragen: Wer hat hier 192.168.1.1? Die Antwort lautet, dass das Gateway MAC 88: 99: aa: bb: cc: dd: ee: ff ist. (Das ist ARP Query / Response, der Übersetzer zwischen den beiden Welten.) Das Paket wird auf Ethernet-Ebene an diesen MAC gesendet, obwohl es auf IP-Ebene möglicherweise ein anderes Ziel enthält.

Das Paket wird also markiert, um zu einem ausgewählten Gateway zu gelangen, indem es im Feld "Ziel-MAC" des Ethernet-Frames codiert wird. Das Feld bestimmt, welches Gateway in diesem Netzwerk es erhält, wenn mehrere Gateways vorhanden sind. (Der "Rahmen" ist eine darunter liegende Kapsel, die das Paket oder einen Teil des Pakets enthält.)


2
Ich würde noch weiter gehen und sagen, dass dies die einzige Antwort ist, die die Frage tatsächlich beantwortet.
Peter Green

3
Dies gilt auch nicht nur für ein Standard-Gateway, sondern auch für die Adresse "nächster Hop" für jeden Eintrag in der Routing-Tabelle.
Peter Green

2
Natürlich werden andere Layer-1/2-Protokolle als Ethernet verwendet. Die IEEE LAN-Protokolle haben MAC-Adressen, aber andere Protokolle verwenden etwas oder nichts anderes.
Ron Maupin

6

Der IP-Datagramm-Header enthält nur Adressinformationen der Quelle und des Ziels. Basierend auf dem Ziel sollte der Router wissen, wohin das Paket als nächstes weitergeleitet werden soll, und diese Informationen werden in der Routing-Tabelle gespeichert.

Es können statische Routeninformationen für die Adresse oder ihr Subnetz vorhanden sein, und für den Rest wird das Standard-Gateway verwendet. Dies ist normalerweise im lokalen Netzwerk der Fall: Möglicherweise gibt es ein statisches Routing zu anderen lokalen Netzwerken und ein Standard-Gateway für den Rest, dh das Internet. Bei mehreren Standard-Gateways, dh Routen zu 0.0.0.0oder ::, wird das aktive durch seine Einstellungen oder ausgewählt Metric Wert.

Komplizierter wird es, wenn zwischen den Zielen mehrere Routen bestehen, wie zwischen den ISPs auf Internetebene. Es gibt verschiedene Methoden zum Teilen der Informationen zwischen den Routern: Routing Information Protocol (RIP), Open Shortest Path First (OSPF) und Border Gateway Protocol (BGP). Unabhängig davon, wie diese Informationen gemeinsam genutzt werden, kennt die Routing-Tabelle den nächsten Hop und das IP-Paket kennt nur sein endgültiges Ziel.


1
Erwähnenswert ist auch das richtlinienbasierte Routing, bei dem verschiedene Routing-Tabellen anhand verschiedener Kriterien wie Quell-IP oder Firewall-Markierung ausgewählt werden können.
Bratchley

Vergessen Sie nicht zu erklären, dass die längste Präfixübereinstimmung Vorrang vor allem anderen hat, wenn zwei mögliche Übereinstimmungen vorliegen.
Ron Maupin

Die Frage ist nicht, wie der Router das Paket weiterleitet, sondern wie der Absender es überhaupt an den richtigen Router sendet.
Barmar

@Barmar: Die Originalversion dieser Frage hätte auf zwei Arten interpretiert werden können, und dies beantwortete die andere. Die Auswahl des Routers anhand der Routing-Tabelle ist auf dem Ursprungscomputer identisch. Daher finde ich diese Antwort immer noch nützlich, während die andere eine Ebene tiefer liegt. Sie ergänzen sich.
Esa Jokinen

Ich habe gerade den Bearbeitungsverlauf überprüft. Ich sehe keinen relevanten Unterschied in der Originalversion. Die Frage ist, wie das Paket an den Router gelangt, der aus der Routing-Tabelle ermittelt wurde.
Barmar

2

Eine Möglichkeit besteht darin, dass das Netzwerk mit einem First-Hop-Redundanzprotokoll (FRHP) wie VRRP oder HSRP konfiguriert ist. Der FHRP verfügt über eine virtuelle Gateway-Adresse, die von den Hosts verwendet wird, und der an die virtuelle Adresse gesendete Datenverkehr wird von einem der physischen Router erfasst, der den Datenverkehr dann weiterleitet. Wenn der primäre Router ausfällt, kann ein sekundärer Router dies feststellen und die Weiterleitung der Pakete übernehmen.


In jedem Fall bestimmen die Pakete nicht den Weg, den sie nehmen. Jedes Paket wird einzeln und unabhängig von anderen Paketen weitergeleitet, basierend auf den Informationen in der Routing-Tabelle eines Routers, und Pakete von derselben Quelle an dasselbe Ziel können unterschiedliche Pfade nehmen, wenn sich eine Routing-Tabelle ändert.

Router lernen Routen auf drei Arten:

  1. Direkt verbundene Netzwerke
  2. Statisch konfigurierte Routen
  3. Durch ein dynamisches Routing-Protokoll

2

Kurze und einfache Antwort: Es wird nicht im Paket codiert, oder es ist die Ethernet-Zieladresse, je nachdem, wie Sie es betrachten. Der IP / Ethernet-Stack überprüft, welches Gateway die Ziel-IP-Adresse verarbeitet, sendet eine ARP-Anforderung, damit die Gateway-IP-Adresse ihre MAC-Adresse erhält, und sendet das Paket dann an die MAC-Adresse des Gateways. Das Gateway leitet das Paket dann weiter und führt das gleiche erneut aus. Dies setzt ein Ethernet-Netzwerk voraus.

Ich glaube, ich habe geantwortet, was Sie fragen. Ich habe mich einmal das Gleiche gefragt. Ihre Frage kann auch dahingehend interpretiert werden, wie ein Host anhand einer bestimmten Routing-Tabelle entscheidet, an welches Gateway ein ausgehendes Paket gesendet werden soll.


0

Ein Detail, das untersucht wird, ist natürlich, ob eine Route übereinstimmt. Wenn ich an 192.0.2.55/24 sende und eine Route für den Verkehr bis 10.55.0.0/16 verfügbar ist, wird diese Route ignoriert, da sie nicht gilt.

Das nächste Kriterium, das normalerweise betrachtet wird, besteht darin, dass spezifischere Routen Vorrang vor allgemeineren Routen haben. Mit "spezifischer" Route meine ich kleinere Subnetze. Mit anderen Worten, größere Zahlen bei Verwendung der / CIDR-Notation und größere Subnetzmasken bei Verwendung der Notation "Subnetzmaske". Mit anderen Worten, Zielnetzwerke mit weniger möglichen Adressen.

Daher gibt ein "Standard-Gateway", auch als "Gateway des letzten Auswegs" bezeichnet, normalerweise ein Ziel für den gesamten Datenverkehr zum 0.0.0.0 / 0-Netzwerk an. Jede Route für ein kleineres Netzwerk ist "spezifischer" und hat Vorrang. 192.0.2.0/24 wird also mehr Priorität haben.

Drittens haben Routen normalerweise ein anderes Feld, das als "Metrik" bezeichnet wird, oder manchmal einen anderen Namen wie "Priorität". Wenn Sie mehrere Netzwerke mit derselben Größe haben, kann dies Auswirkungen haben.

Diese "Metrik" -Werte können automatisch generiert werden (z. B. wenn ein Netzwerk mit höherer Geschwindigkeit für mehr Verkehr verwendet wird), können jedoch manuell angepasst werden.

Wohin werden die Informationen über das zu übernehmende Gateway in den gesendeten IP-Paketen verschlüsselt?

Die IP-Pakete enthalten keine Informationen zum Routing, außer zur Angabe der Ziel-IP-Adresse. Routing-Details werden von der Ausrüstung bestimmt, die das Routing auf dem Weg übernimmt, und solche Details werden normalerweise nicht in einem IP-Paket abgelegt. (Daher sucht das Gerät nicht nach solchen Details, da es nicht vorhanden ist. Da das Gerät nicht nach solchen Informationen sucht, wäre es sinnlos, zu versuchen, solche Informationen aufzunehmen.)

RFC 791 Seite 11 zeigt eine Tabelle im "ASCII ART" -Stil der Informationen, die sich in einem IP-Paket befinden. Nach dieser Tabelle enthält dieses Dokument Details (z. B. wird der Abschnitt "Optionen" auf Seite 15 beschrieben).

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.