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?
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?
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.
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 .
"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.
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.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:
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