Muss ein Gateway eines Subnetzes ein "echter" Computer sein?
13
Ist ein Gateway immer ein echter Computer oder nur eine "logische" Entität, die sich auf einer beliebigen Adresse befinden kann, mit Ausnahme der Broadcast-IP?
Der moderne und wohl zutreffendere Begriff für ein Gateway ist Router . Router können rein in Software vorhanden sein, herkömmliche Computer wie PCs, Laptops und Serversysteme können als Router verwendet werden, im Allgemeinen werden jedoch dedizierte Hardwaregeräte verwendet
HBruijn,
2
Was meinst du mit "logische Einheit"?
Barmar
2
@HBruijn, in den meisten Fällen ist ein Gateway ein Router. Der allgemeine Begriff lautet, dass ein Gateway der Host im Netzwerk ist, an den andere Hosts Datenverkehr senden, der für ein anderes Netzwerk bestimmt ist. Das heißt nicht, dass es sich um einen Router handeln muss. Dies kann ein Proxy, ein ALG usw. sein. Es kann auch einen Eckfall geben, in dem Datenverkehr für ein anderes Netzwerk abgefangen und nicht vom Gateway weitergeleitet werden muss. In diesem Fall handelt es sich nicht um einen Router, da es sich nicht um ein Routing handelt Pakete zwischen Netzwerken.
Ron Maupin
Ich wette, dass ein System, das in der Lage ist, Weiterleitungsentscheidungen basierend auf Ziel-IP-Adressen zu treffen, nicht vollständig sein muss. Ein Router muss also kein Computer sein Hoch für Gateways, wenn auch in unterschiedlichem Umfang möglich. Trotzdem ist jedes dieser Systeme in der Regel ein Gerät (oder eine Sammlung von Geräten), das administrativ oder durch zusätzliche Anwendungen (z. B. Routing-Protokolle) konfiguriert werden kann - und sogar in der Lage ist, a Konfiguration, diese Dinge sind in der Regel (spezialisierte) Computer.
Hagen von Eitzen
@Barmar Ich meine, wenn ein Gateway ein spezialisiertes Hardwaregerät wie eine Bridge oder ein Router sein muss, oder wenn es sich nur um eine Information wie eine Einstellung in einem Server handelt, die in Bezug auf Programmiersprachen irgendwie veränderlich ist .
Semo
Antworten:
29
Die Standardroute (auch als Gateway-Adresse bezeichnet) muss Eigentum von etwas sein, das Pakete an den Rest des Internets weiterleiten kann und dazu bereit ist. Es muss nicht die "Haupt" -IP-Adresse des Besitzers sein (was auch immer das bedeutet). Es kann sich um eine logische Adresse handeln, die zwischen zwei oder mehr Geräten schwebt. In Hochverfügbarkeits-Setups ist dies häufig der Fall.
Die einzige Voraussetzung, damit das Routing funktioniert, ist, dass das Gerät, das die Adresse besitzt und ankündigt, den Datenverkehr weiterleiten kann und wird.
@ Shadur Mich interessiert, wie Routing funktionieren kann, wenn die Standardroute nur vorgibt, den Verkehr tatsächlich zu leiten.
MadHatter
1
Das Routing selbst wird nicht funktionieren, aber wenn Sie nur das Surfen zulassen möchten, können Sie das "Gateway" abfangen und einen transparenten Proxy auf den Ports 53, 80 und 443 ausführen lassen und das System selbst so isoliert wie möglich halten.
Shadur
7
IN ORDNUNG. Ich bin nicht anderer Meinung, aber das ist kein Routing. Ich stehe zu meiner Behauptung, dass der Router tatsächlich routen muss, damit das Routing funktioniert, und es scheint, als würden Sie dem nicht widersprechen.
MadHatter
1
Ein guter Punkt, aber das "Gateway", wie es in dieser Frage verwendet wird, ist die Standardroute, dh der nächste Hop-of-Last-Resort. Das muss in der Lage sein Sie nicht nur auf alle internen Subnetzen zu bekommen , dass Sie nicht über bestimmte Routen für, aber alles andere als gut .
MadHatter
15
Die IP-Adresse des Gateways kann eine beliebige gültige Host-IP-Adresse im Subnetz sein, dh weder die Netzwerkadresse selbst noch die Broadcast-Adresse. Diese IP-Adresse muss nicht zu einem einzelnen Computer oder Router gehören, sondern kann eine "schwebende" IP-Adresse sein, die von mehreren Gateways verwendet wird. Lesen Sie die Wikipedia-Artikel zu HSRP , VRRP , GLBP oder CARP .
Wenn das Subnetz beispielsweise 172.16.23.0/25 lautet, gilt Folgendes:
Die Netzwerkadresse lautet 172.16.23.0.
Die Broadcast- Adresse lautet 172.16.23.127
der Bereich gültiger Host - Adressen von 172.16.23.1 bis 172.16.23.126, inklusive.
Das Gateway muss eine dieser gültigen Hostadressen sein, z. B. 172.16.23.65. Die Einstellungen Ihres Computers wären dann zB:
IP-Adresse: 172.16.23.5
Subnetzmaske: 255.255.255.128
Standardgateway: 172.16.23.65
Durch Hinzufügen eines der First-Hop-Redundanzprotokolle können die tatsächlichen Gateways (Router) die IP-Adresse 172.16.23.1 und 172.16.23.2 haben, aber die virtuelle IP-Adresse 172.16.23.65 verwenden, um sich als Standardgateway für das Subnetz zu präsentieren .
"Logische Einheit" in Ihrer Verwendung ist ein wenig verwirrend. Aber ich werde versuchen, es so gut wie möglich zu beantworten.
Nach meiner Erfahrung ist ein Gateway in einer IP-Konfiguration normalerweise ein physisches Gerät. Es muss sich zwar nicht um einen Computer im herkömmlichen Sinne handeln (es kann sich auch um eine Netzwerk-Appliance handeln), es muss sich jedoch um ein Gerät handeln.
Wie Sie vielleicht wissen, dient ein Standard-Gateway als Weiterleitungseinheit für alle Anforderungen, die a.) Der Computer noch nicht in seiner Routing-Tabelle hat oder über einen Eintrag verfügt, der das System anweist, die Anforderung an eine weiterzuleiten IP, die zufällig das Gateway ist und / oder b.) Die sich außerhalb der Broadcast-Domäne befinden. Das Standard-Gateway wird niemals in Situationen verwendet, in denen sich zwei Hosts in derselben Broadcast-Domäne befinden (dh eine von einem Switch erstellte Netzwerktopologie), da das System anhand der Broadcast-Adresse des Subnetzes die MAC-Adresse eines Systems ermitteln kann, das eine bestimmte IP-Adresse besitzt.
Um Ihre Frage technisch zu beantworten, können Sie Ihr Standard-Gateway als eine beliebige IP-Adresse in einem verbundenen Netzwerk festlegen. Windows oder die meisten anderen Betriebssysteme werden Sie nicht aufhalten, da sie häufig keine Überprüfung der TCP / IP-Details durchführen. Wenn Sie es einstellen, sind Sie höchstwahrscheinlich technisch versiert genug, um den Unterschied zu verstehen. Wenn es sich jedoch um die IP-Adresse eines Geräts handelt, die nicht weitergeleitet werden kann, führt dies zu Fehlern bei Anwendungen, die vom Routing abhängig sind (z. B. ein Webbrowser), da das Gerät nicht mit einer Routingtabelle oder einem Routingdienst vorbereitet ist um die Anfrage weiterzuleiten.
Jemand, der viel erfahrener ist als ich, sollte mich jedoch leicht korrigieren können, wenn ich falsch liege.
TL; DR - Höchstwahrscheinlich ein physisches Gerät.
Sie können mehrere verschiedene IP-Subnetze in derselben Broadcast-Domäne haben. In solchen Fällen fließt der Datenverkehr zwischen diesen Hosts über ihre Standardgateways, sofern keine zusätzlichen Einträge zu den Host-Routingtabellen hinzugefügt werden oder ICMP-Umleitungen verwendet werden.
Peter Green
@PeterGreen Ja, es gibt viele Sonderfälle. Beispiel: 192.168.0.0/24 und 10.0.0.0/24 befinden sich in demselben physischen Ethernet-LAN, und das Gateway ist bei 192.168.0.1 und 10.0.0.1 derselbe physische Router. Bei 192.168.0.100 Pings 10.0.0.100 wird der erste Roundtrip über das Gateway weitergeleitet. Das Gateway kann auch ICMP-Weiterleitungen an jeden Host senden, um ihnen mitzuteilen, dass sie sich im selben LAN befinden. In diesem Fall sendet jeder Host dann ARP-Anforderungen, um die MAC-Adressen seines Peers abzurufen, und die gesamte weitere Kommunikation erfolgt direkt zwischen den Peers (nicht über das Gateway).
Alex Hajnal
Beachten Sie, dass Hosts im obigen Beispiel über eine ICMP-Umleitung weitergeleitet werden müssen, um eine ARP-Anforderung für die MAC-Adresse eines Peers in einem fremden Netzwerk zu senden. Ohne eine Umleitung stellen Hosts keine Netzwerk-ARP-Anforderungen.
Alex Hajnal
5
Routing-Tabelleneinträge lösen ein Subnetz in ein Gateway oder einen Netzwerkadapter auf.
Eine typische Routing-Tabelle für ein Gerät in einem privaten Netzwerk könnte wie folgt aussehen, wenn Sie nicht benötigtes Material weglassen
0.0.0.0/0 via 192.168.0.1
192.168.0.0/24 dev eth0
Die spezifischste Route gewinnt für jedes Ziel, sodass die Subnetzroute Vorrang vor der Standardroute für Adressen im Subnetz hat.
Die Gateway-Adresse wird wiederum über die Routing-Tabelle aufgelöst, die die Netzwerkschnittstelle sowie die Adressierung auf der unteren Ebene festlegt.
Für ein Paket an 1.1.1.1wird das Ziel in der Routing-Tabelle nachgeschlagen, wobei die Standardroute mit einem Gateway zurückgegeben wird. Das Gateway wird erneut gesucht und die Ethernet-Schnittstelle zurückgegeben.
Ethernet hat MAC-Adressen, daher wird eine ARP-Suche nach der Gateway-Adresse durchgeführt, und die MAC-Adresse für das Gateway wird für das ausgehende Paket verwendet (das weiterhin die richtige Zieladresse in seinem IP-Header verwendet).
Andere Transporte auf niedrigerer Ebene funktionieren anders, z. B. haben PPP-Verbindungen eine "Peer-Adresse", sodass ihre Geräteroute eine Netzmaske von / 32 verwendet, und sie überspringen die ARP-Auflösung und senden Pakete einfach als "Broadcast" über die PPP-Verbindung.
Einige IP-Stacks erfordern die manuelle Erstellung der Geräte-Route, was dies ein bisschen offensichtlicher macht:
ifconfig eth0 192.168.0.2 netmask 255.255.255.0 broadcast 192.168.0.255 up
route add -net 192.168.0.0 netmask 255.255.255.0 dev eth0
route add default via 192.168.0.1
Antworten:
Die Standardroute (auch als Gateway-Adresse bezeichnet) muss Eigentum von etwas sein, das Pakete an den Rest des Internets weiterleiten kann und dazu bereit ist. Es muss nicht die "Haupt" -IP-Adresse des Besitzers sein (was auch immer das bedeutet). Es kann sich um eine logische Adresse handeln, die zwischen zwei oder mehr Geräten schwebt. In Hochverfügbarkeits-Setups ist dies häufig der Fall.
Die einzige Voraussetzung, damit das Routing funktioniert, ist, dass das Gerät, das die Adresse besitzt und ankündigt, den Datenverkehr weiterleiten kann und wird.
quelle
Die IP-Adresse des Gateways kann eine beliebige gültige Host-IP-Adresse im Subnetz sein, dh weder die Netzwerkadresse selbst noch die Broadcast-Adresse. Diese IP-Adresse muss nicht zu einem einzelnen Computer oder Router gehören, sondern kann eine "schwebende" IP-Adresse sein, die von mehreren Gateways verwendet wird. Lesen Sie die Wikipedia-Artikel zu HSRP , VRRP , GLBP oder CARP .
Wenn das Subnetz beispielsweise 172.16.23.0/25 lautet, gilt Folgendes:
Das Gateway muss eine dieser gültigen Hostadressen sein, z. B. 172.16.23.65. Die Einstellungen Ihres Computers wären dann zB:
Durch Hinzufügen eines der First-Hop-Redundanzprotokolle können die tatsächlichen Gateways (Router) die IP-Adresse 172.16.23.1 und 172.16.23.2 haben, aber die virtuelle IP-Adresse 172.16.23.65 verwenden, um sich als Standardgateway für das Subnetz zu präsentieren .
quelle
"Logische Einheit" in Ihrer Verwendung ist ein wenig verwirrend. Aber ich werde versuchen, es so gut wie möglich zu beantworten.
Nach meiner Erfahrung ist ein Gateway in einer IP-Konfiguration normalerweise ein physisches Gerät. Es muss sich zwar nicht um einen Computer im herkömmlichen Sinne handeln (es kann sich auch um eine Netzwerk-Appliance handeln), es muss sich jedoch um ein Gerät handeln.
Wie Sie vielleicht wissen, dient ein Standard-Gateway als Weiterleitungseinheit für alle Anforderungen, die a.) Der Computer noch nicht in seiner Routing-Tabelle hat oder über einen Eintrag verfügt, der das System anweist, die Anforderung an eine weiterzuleiten IP, die zufällig das Gateway ist und / oder b.) Die sich außerhalb der Broadcast-Domäne befinden. Das Standard-Gateway wird niemals in Situationen verwendet, in denen sich zwei Hosts in derselben Broadcast-Domäne befinden (dh eine von einem Switch erstellte Netzwerktopologie), da das System anhand der Broadcast-Adresse des Subnetzes die MAC-Adresse eines Systems ermitteln kann, das eine bestimmte IP-Adresse besitzt.
Um Ihre Frage technisch zu beantworten, können Sie Ihr Standard-Gateway als eine beliebige IP-Adresse in einem verbundenen Netzwerk festlegen. Windows oder die meisten anderen Betriebssysteme werden Sie nicht aufhalten, da sie häufig keine Überprüfung der TCP / IP-Details durchführen. Wenn Sie es einstellen, sind Sie höchstwahrscheinlich technisch versiert genug, um den Unterschied zu verstehen. Wenn es sich jedoch um die IP-Adresse eines Geräts handelt, die nicht weitergeleitet werden kann, führt dies zu Fehlern bei Anwendungen, die vom Routing abhängig sind (z. B. ein Webbrowser), da das Gerät nicht mit einer Routingtabelle oder einem Routingdienst vorbereitet ist um die Anfrage weiterzuleiten.
Jemand, der viel erfahrener ist als ich, sollte mich jedoch leicht korrigieren können, wenn ich falsch liege.
TL; DR - Höchstwahrscheinlich ein physisches Gerät.
quelle
Routing-Tabelleneinträge lösen ein Subnetz in ein Gateway oder einen Netzwerkadapter auf.
Eine typische Routing-Tabelle für ein Gerät in einem privaten Netzwerk könnte wie folgt aussehen, wenn Sie nicht benötigtes Material weglassen
Die spezifischste Route gewinnt für jedes Ziel, sodass die Subnetzroute Vorrang vor der Standardroute für Adressen im Subnetz hat.
Die Gateway-Adresse wird wiederum über die Routing-Tabelle aufgelöst, die die Netzwerkschnittstelle sowie die Adressierung auf der unteren Ebene festlegt.
Für ein Paket an
1.1.1.1
wird das Ziel in der Routing-Tabelle nachgeschlagen, wobei die Standardroute mit einem Gateway zurückgegeben wird. Das Gateway wird erneut gesucht und die Ethernet-Schnittstelle zurückgegeben.Ethernet hat MAC-Adressen, daher wird eine ARP-Suche nach der Gateway-Adresse durchgeführt, und die MAC-Adresse für das Gateway wird für das ausgehende Paket verwendet (das weiterhin die richtige Zieladresse in seinem IP-Header verwendet).
Andere Transporte auf niedrigerer Ebene funktionieren anders, z. B. haben PPP-Verbindungen eine "Peer-Adresse", sodass ihre Geräteroute eine Netzmaske von / 32 verwendet, und sie überspringen die ARP-Auflösung und senden Pakete einfach als "Broadcast" über die PPP-Verbindung.
Einige IP-Stacks erfordern die manuelle Erstellung der Geräte-Route, was dies ein bisschen offensichtlicher macht:
quelle