Was ist der Unterschied zwischen einem Gateway und einem Router?

13

Hier sehen wir den Router 67.23.27.187(erster Sprung), aber das Gateway ist 67.23.27.1. Was ist der Unterschied zwischen einem Gateway und einem Router? Woher kennt mein Computer die IP des Routers, wenn nur die Gateway-Adresse konfiguriert ist?

[root@jiaoyou ~]# tracepath google.com
 1:  67-23-27-187.static.slicehost.net (67.23.27.187)       0.000ms pmtu 1500
 1:  67-23-24-2.static.slicehost.net (67.23.24.2)           0.000ms 
 1:  67-23-24-2.static.slicehost.net (67.23.24.2)           4.000ms 
 2:  core7-aggr511a-1.dfw1.rackspace.net (98.129.84.148)  128.008ms 
 3:  bbr1-core7-vlan2007.dfw1.rackspace.net (174.143.123.117)   4.000ms 
 4:  no reply
 5:  no reply

[root@jiaoyou ~]# cat /etc/sysconfig/network
NETWORKING=yes
HOSTNAME=jiaoyou
GATEWAY=67.23.27.1
masegaloeh
quelle
1
Können Sie die Ausgabe von zeigen netstat -rn?
Gelraen

Antworten:

19

Ein Gateway und ein Router sind im Wesentlichen gleich. Mit dem Begriff " Standard-Gateway " wird der Router in Ihrem LAN bezeichnet, der als erster Ansprechpartner für den Datenverkehr zu Computern außerhalb des LAN zuständig ist.

Wenn Ihr LAN über mehrere Router verfügt, kann der als Standardgateway festgelegte Router Ihren Computer mithilfe einer ICMP-Umleitung oder eines anderen Mechanismus über eine geeignetere Route für ein bestimmtes Ziel informieren .

Beispielsweise

                   (Internet) --- [Google]
                       | 64.20.60.99
                      [R2]
67,23,27 / 255 | 187
| ------ + -------- + ------ + ----- |
       | 9 | 1
     [PC] [R1]
                | 67,23,28 / 255
           | ---- + ------ + ---------- |
                       9
                    [Server]

Wenn der Router R1 das Standard-Gateway des PCs ist, sendet der PC beim ersten Versuch, eine Verbindung zu Google herzustellen, Daten an R1 (da der PC weiß, dass sich die IP-Adresse von Google nicht im Subnetz des PCs befindet). R1 ​​teilt dem PC jedoch mit, dass die Route zu 64.20 geeigneter ist 60,99 ist über Router R2. Der PC fügt dies seiner Routing-Tabelle hinzu, daher wird R1 in einer nachfolgenden Traceroute nicht angezeigt.

Der Befehl netstat -nrauf Ihrem PC zeigt sowohl die statischen Routen an, die er aus seinen Konfigurationsdateien gelernt hat, als auch die dynamischen Routen, die er durch ICMP-Umleitungen oder durch Abhören von Routing-Protokoll- Broadcasts / Multicasts gelernt hat .

Der Begriff "Gateway" hat andere Konnotationen, die für die Datei und den Befehl in Ihrer Frage nicht relevant sind.

RedGrittyBrick
quelle
@Eugene: Der Diagrammstil basiert auf dem klassischen 10-Base-2-Ethernet-Diagrammstil. Betrachten Sie es als symbolisch. Alle Geräte, die an eine horizontale Leitung angeschlossen sind, sind über einen Ethernet-Switch verbunden (oder einen Hub, dies hat keinen Einfluss auf die Antwort). Der Server weiß, dass sich 60.20.60.99 in einem anderen Subnetz befindet (durch Vergleichen der Adressen nach dem Anwenden der Netzmaske), sodass in der Routingtabelle nach einer Route gesucht wird. Es hat wahrscheinlich nur eine Standardroute für R1, so dass es ein Paket mit Daten für 60.20.60.99 mit der MAC-Adresse von R1 zusammenstellt. R1 empfängt das Paket und konsultiert seine eigenen Routing-Tabellen und leitet das Paket an R2, Repeat, weiter.
RedGrittyBrick
Es gibt auch eine Erklärung, die keine Weiterleitungen beinhaltet. Es kann einfach sein, dass das Gateway mehrere Adressen hat und als Quelle für ICMP-Fehlermeldungen eine andere Adresse verwendet als die, die der Client in ARP-Anforderungen verwendet.
Kasperd
6

@RedGrittyBrick ist absolut korrekt mit seiner Antwort ("ein Router und ein Gateway sind im Wesentlichen gleich"), einige andere Responder verwirren die Begriffe oder haben die Frage (oder Wikipedia) missverstanden.

In Bezug auf das Routing wird der Begriff "Gateway" fast immer nur in Verbindung mit "Standard" verwendet, und dieser Begriff "Gateway" stellt eine Route zu jedem Netzwerk bereit, für das keine spezifischere Route verfügbar ist.

Per Definition muss das Gateway dann ein Gerät sein, das das Routing ausführt, es kann ein dediziertes Gerät sein, insbesondere ein Router, oder ein Host, der für das Routing konfiguriert wurde, aber denselben Job ausführt. Ein Gateway kann also ein Router sein, und ein Router kann als Gateway bezeichnet werden.

Es gibt keinen Unterschied in der TTL zwischen einem "Standard-Gateway" und einem Router. Sobald ein Gerät, das das Routing durchführt, ein IP-Paket von einem Netzwerk / Subnetz zu einem anderen weitergibt, muss es die TTL dekrementieren, was in dem relevanten RFC deutlich gemacht wird.

Ein Gateway muss nicht NAT ausführen. In der Regel verfügt ein Heimnetzwerk über ein Standardgateway, das ein an ADSL angeschlossener Router ist. Dieser Gerätetyp führt NAT aus, während das Standardgateway in Ihrem Subnetz bei der Arbeit nur zu einem breiteren LAN im Büro führt und wird nicht NAT tun.

Bei der Beantwortung Ihrer Frage, ob Sie an einen Ort außerhalb des lokalen Subnetzes weitergeleitet werden möchten, sind die ICMP-Weiterleitungen bei @RedGrittyBrick ebenfalls korrekt. Der Prozess, den ein Host durchläuft, wenn er ein Paket sendet, ist der folgende:

1 - Verwenden Sie Ihre eigene IP-Adresse und Maske, um zu überprüfen, ob sich die IP-Adresse des Zielpakets im lokalen Subnetz befindet.

2 - Wenn sich das Ziel im lokalen Subnetz befindet, senden Sie eine ARP-Anfrage für die MAC-Adresse dieses lokalen Geräts und senden Sie dann einen Frame an den Host.

3 - Wenn das Ziel nicht im lokalen Subnetz liegt, senden Sie eine ARP-Anfrage für die MAC-Adresse des Gateways an dieses Netzwerk und senden Sie dann einen Frame zur Weiterleitung an das Gateway (an diesem Punkt kann der Punkt über ICMP-Weiterleitungen ansetzen).

Somit ist ersichtlich, dass jeder Host vor dem Versenden von Paketen eine eigene Routing-Auswahl trifft (natürlich werden diese Daten zwischengespeichert, damit nicht für jedes einzelne Paket eine Suche durchgeführt wird).

Blankabout
quelle
3

Ein Router dient als Gateway, verfügt jedoch über zusätzliche Funktionen. Per wikipedia: "Ein Gateway ist ein wesentliches Merkmal der meisten Router, obwohl andere Geräte (wie ein PC oder ein Server) als Gateway fungieren können."

DavidO
quelle
1

Was ist deine IP?

Bei Paketen, die vom Router selbst stammen, wird die Time-To-Live (TTL) beim Verlassen des Routers nicht reduziert.

Bei Paketen von einer anderen Quelle, die einen Router passieren, wird die TTL bei jedem Hop um 1 verringert. Wenn die Pakete mit einer TTL von 1 in den Router eingehen und der Router das Ziel ist, wird der Datenverkehr vom Router empfangen. Wenn der Router nicht das Ziel ist, wird die TTL der Pakete vor dem Verlassen des Routers auf 0 reduziert und verworfen.

MealstroM
quelle
0

Ein Gateway regelt den Zugriff von Computern in einem Netzwerk auf andere Computer.

Ein Router ist eine spezielle Form eines Gateways: Er kann IP-Pakete zwischen verschiedenen Netzwerken weiterleiten.

In Ihrem Fall kennt das Gateway den Router und leitet alle Anfragen, die nicht interne Adressen betreffen, an den Router weiter.

Aaron Digulla
quelle
0

Normalerweise ist das "Gateway" eine Maschine, die NAT "maskiert" und das bedeutet, dass das Gateway die Datenanforderung im Namen der privaten IPs sendet, für die das jeweilige Gerät Gateway ist, und die Daten weitergibt, wenn die Daten zurück sind zu diesen privaten IPs. Wenn Sie so wollen, kann man sagen, dass das Gateway die privaten IP-Maschinen in Bezug auf das Internet "verkörpert".

Ein Router OTOH leitet nur Pakete von einer Schnittstelle zur anderen weiter. Der Router verfügt über eine Reihe von Regeln (statische Einrichtung oder dynamische Einrichtung (Routing-Protokolle)), die es ihm ermöglichen, die Pakete über eine bestimmte Schnittstelle zu senden, damit diese Pakete das gewünschte Netzwerk erreichen

http://en.wikipedia.org/wiki/IP_masquerading
http://en.wikipedia.org/wiki/Routing

und speziell auf Ihre Frage zu antworten: "Woher kennt mein Computer die IP des Routers, wenn nur die Gateway-Adresse konfiguriert ist?": Jeder verbundene Computer kennt die Adresse seiner "Next-Hop" -IP (Gateway). Der nächste Hop eines Gateways ist die IP einer verbundenen Schnittstelle eines Routers, die über das Wissen verfügt, Ihre Pakete auf die richtigen Pfade zu leiten, um das Zielnetzwerk zu erreichen

auch: IHR nächster Hop ist 67.23.27.1.
67.23.27.187 ist entweder next-hop für 67.23.27.1 oder die next-ip für den Pfad zu google.com

adrian_sev
quelle
Sie verwechseln den allgemeineren Begriff Gateway mit dem TCP / IP-Begriff Gateway. Jeder Router zwischen Subnetzen ist ein Gateway mit dem Standardgateway für jedes Gerät, an das ein Ziel gesendet wird, das nicht in der Routingtabelle enthalten ist (normalerweise außerhalb Ihres Subnetzes).
James Ryan
1
Nun, ich habe gemeint, was ich gesagt habe! Es ist wahr, dass es "Gateway of Last Resort" (Standardroute) oder "Next-Hop" -Verbindungen gibt, aber von dem, was ich verstanden habe, dachte ich, dass es sich um die allgemeinen Begriffe "Gateway" und "Router" handelt. Es gibt 2 Fragen im Hauptbeitrag und ich habe hauptsächlich die erste beantwortet. en.wikipedia.org/wiki/Default_gateway en.wikipedia.org/wiki/Router
adrian_sev
-2

Wenn sich die Übertragung in einem lokalen Gebiet oder einem LAN befindet, wird der Router in diesem Fall als Gateway bezeichnet. Angenommen, Sie haben 6 Häuser in Ihrem Gebiet (nur ein Beispiel). Jetzt möchten alle auf das Internet zugreifen. Sie haben einen gemeinsamen Router Zunächst wird es als Gateway bezeichnet. Wenn die Adresse des Gateways (IP-Adresse nicht der Mac) 192.128.1.1 lautet, ist Ihre IP-Adresse nur eine Erweiterung dieser Adresse wie 192.128.1.101.192.128. 1.102,192.128.1.103 ... und so weiter. Jetzt ist das Gateway weiter mit dem Internet verbunden, das ein riesiges Netzwerk von Gateways hat, aber dieses Mal werden diese als Router bezeichnet. In Ihrem Fall ist der erste Sprung von Ihrem Haus zu das Gateway, das von 67.23.27.187 zu 67.23.27.1 und dann zu den anderen Routern ist. Hoffentlich bekommen Sie es.

Sahil Sharma
quelle