Kann mir jemand die Gateway-Zuweisung erklären?
Was ist der Unterschied zwischen dem Hinzufügen eines Gateways 0.0.0.0
und der Zuweisung einer bestimmten IP-Adresse als Gateway?
Antwort1
0.0.0.0
hat die spezifische Bedeutung „nicht angegeben“. Im Kontext eines Gateways bedeutet dies grob „es gibt keines“. Dies setzt natürlich voraus, dass das Netzwerk lokal verbunden ist, da es keinen Zwischenhop gibt. Die Maschine sendet das Paket über diese Schnittstelle, als ob es an eine Maschine gesendet würde, die mit diesem Segment verbunden ist, was bei Ethernet bedeutet, dass die MAC-Adresse des Zielhosts anstelle der MAC-Adresse des nächsten Hop-Gateways verwendet wird.
Als Ziel 0.0.0.0/0
ist es etwas Besonderes: Wenn es keine Netzwerkbits gibt, kann auch die Netzwerknummer nichts enthalten. Es ist also natürlich nicht spezifiziert. Für die Präfixübereinstimmung maskiert es alle Bits, sodass alle Adressen innerhalb liegen ; aus diesem Grund wird es in Routingtabellen als „Standard-Gateway“ verwendet. Es ist auch die am wenigsten spezifische mögliche Route, sodass Auswahlen, die Spezifität priorisieren , als letzte Möglichkeit 0.0.0.0/0
alles andere Verfügbare auswählen und abgleichen .0.0.0.0/0
Um jedoch bei Ihrer Frage zu bleiben: Ja, es hat eine besondere Bedeutung. Es bedeutet, dass das Netzwerk lokal über diese Schnittstelle verbunden ist und keine weiteren Hops erforderlich sind, um dorthin zu gelangen.
Antwort2
Von der Wikipedia-Seite von0.0.0.0:
Auszug
In der Internet Protocol Version 4 ist die Adresse 0.0.0.0 eine nicht routbare Metaadresse, die verwendet wird, um ein ungültiges, unbekanntes oder nicht anwendbares Ziel zu kennzeichnen. Einem ansonsten ungültigen Datenelement eine besondere Bedeutung zu geben, ist eine Anwendung der In-Band-Signalisierung.
Von der Wikipedia-Seite vonStandardroute.
Auszug
Die Standardroute in Internet Protocol Version 4 (IPv4) wird in der CIDR-Notation als Nulladresse 0.0.0.0/0 bezeichnet, oft auch Quad-Zero-Route genannt. Die Subnetzmaske wird als /0 angegeben, was effektiv alle Netzwerke angibt und die kürzeste mögliche Übereinstimmung ist. Eine Routensuche, die mit keiner anderen Route übereinstimmt, greift auf diese Route zurück. In ähnlicher Weise wird in IPv6 die Standardroute durch ::/0 angegeben.
Im Segment der höchsten Ebene eines Netzwerks richten Administratoren die Standardroute für einen bestimmten Host im Allgemeinen auf den Router, der eine Verbindung zu einem Netzwerkdienstanbieter hat. Daher werden Pakete mit Zielen außerhalb des lokalen Netzwerks der Organisation, normalerweise Ziele im Internet oder in einem Weitverkehrsnetz, an den Router mit der Verbindung zu diesem Anbieter weitergeleitet.
Das Gerät, auf das die Standardroute verweist, wird häufig als Standard-Gateway bezeichnet und führt oft andere Funktionen aus, beispielsweise Paketfilterung, Firewall oder Proxyserver-Operationen.
Beispiel
Aufgrund Ihrer Befragung gehe ich davon aus, dass Sie über Folgendes verfügen:
$ netstat -rn
Kernel IP routing table
Destination Gateway Genmask Flags MSS Window irtt Iface
192.168.1.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0
169.254.0.0 0.0.0.0 255.255.0.0 U 0 0 0 eth0
0.0.0.0 192.168.1.254 0.0.0.0 UG 0 0 0 eth0
Das bedeutet, dass für jedes der Netzwerkziele (192.168.1.0 oder 169.254.0.0), bei dem das Standard-Gateway das Ziel 0.0.0.0 ist, ein PaketNICHTbestimmt für jede Adresse innerhalb dieses bestimmten Netzwerks. Verwenden Sie für das Ziel 0.0.0.0 die IP-Adresse 192.168.1.254.
Diese Regeln dienen dazu, den gesamten Datenverkehr, der mit keiner der uns bekannten Routen übereinstimmt, auf die Standardroute umzuleiten.
Einige Beispiele
Nehmen wir also an, wir haben ein Paket mit der IP 192.168.1.110. Die erste Regel wird überprüft und diese IP stimmt mit diesem Netzwerk überein, sodass es zugestellt wird.
Wenn wir ein Paket 150.12.13.1 hätten, wäre die 3. Regel wirksam und das Paket würde an 192.168.1.254 weitergeleitet.
Antwort3
Beachten Sie, 0.0.0.0 wird nur in Routingtabellen verwendet – NICHT für die Zuweisung zu einem Host.
Hosts (Computer mit einer IP-Adresse) verwalten eine Routing-Tabelle, um zu entscheiden, wie ihre Nachrichten an den richtigen Ort gesendet werden.
Szenario 1: PC-A möchte eine Nachricht an PC-B im GLEICHEN NETZWERK senden:
1) PC-A prüft seine Routing-Tabelle, um zu sehen, ob es eine Übereinstimmung mit der Ziel-IP-Adresse gibt. 2) Die Routing-Tabelle zeigt, dass sich das Ziel im selben Netzwerk befindet, findet die Schnittstelle, die mit diesem Netzwerk verbunden ist, und leitet die Nachricht dann über diese Schnittstelle direkt an das Ziel weiter.
Szenario 2: PC-A möchte eine Nachricht an Server-Z in einem REMOTE NETORK (NICHT im selben Netzwerk) senden:
1) PC-A prüft seine Routing-Tabelle und kann keine Entsprechung finden (natürlich, weil Hosts die Hosts in Remote-Netzwerken nicht im Auge behalten – das ist die Aufgabe der Router).
2) Der PC ist jedoch mit einer Quad-Null-IP-Adresse und einer Subnetzmaske konfiguriert, die Ihrem Router (Standard-Gateway zu ANDEREN, ENTFERNTEN, VERSCHIEDENEN Netzwerken) wie folgt zugeordnet ist:
(0.0.0.0 0.0.0.0 192.168.0.1 Schnittstelle)
Was bedeutet Null? Es bedeutet keine. Wenn Ihr Computer also nicht verfolgt, wo sich Remote-Hosts befinden, und jedes Mal, wenn er eine Nachricht senden möchte, seine Routing-Tabelle überprüft, um festzustellen, ob er sie entweder an das GLEICHE (lokale) Netzwerk oder an ein ENTFERNTES Netzwerk senden muss, wie gelangt die Nachricht dann in das Remote-Netzwerk?
Es sendet es an den Router und überlässt dem Router die Aufgabe, das Paket auf dem besten Weg weiterzuleiten. Der Host/PC/Computer muss also wissen, dass er, wenn er in seiner Routing-Tabelle keinen Eintrag findet, wohin die Nachricht gesendet werden soll (auch bekannt als 0.0.0.0), sie an den Router senden muss, der die IP-Adresse hat, die mit dem Eintrag (0.0.0.0 0.0.0.0 192.168.0.1 Schnittstelle) verknüpft ist, und die zugehörige Schnittstelle/NIC/Netzwerkkarte verwendet, die damit verbunden ist.
Daher wird 0.0.0.0 von Routingtabellen auf Hosts und Routern verwendet, um zu wissen, wohin etwas gesendet werden soll, wenn keine Übereinstimmungen für die Erreichung eines Ziels gefunden werden, und muss der IP-Adresse eines Routers und einer Schnittstelle zum Erreichen dieses Routers zugeordnet werden.
Antwort4
Grundlegende Erklärung
0.0.0.0 hat die besondere Bedeutung vonStandard-Gatewayaber entspricht auch 0.0.0.0ZielEintrag.
Auf den ersten Blick könnte man meinen, dass ohnehin alles über das Standard-Gateway läuft. Um das Konzept jedoch vollständig zu verstehen, müssen Sie es im Kontext eines Geräts mit mehreren Netzwerkschnittstellen (Ethernet, Wi-Fi, Bluetooth usw.) sehen.
Als Gateway
Wenn 0.0.0.0 als Gateway angegeben ist, bedeutet dies: Lesen Sie die Zeile mit 0.0.0.0 als Ziel und leiten Sie das Paket über diese Schnittstelle weiter.
Wenn Sie jedoch über eine oder mehrere zweite Netzwerkschnittstellen verfügen, können Sie die IP einer dieser Netzwerkschnittstellen anstelle von 0.0.0.0 als Gateway angeben und die Pakete werden darüber geleitet.
Als Reiseziel
Die Routing-Tabelle wird analysiert, um das spezifischste Ziel zu suchen (das mit der höchsten Präfixnummer übereinstimmt).
Zumindest, wenn kein spezifischeres Ziel gefunden wird, erhalten Sie immer eine Übereinstimmung mit 0.0.0.0/0 (CIDR-Notation entspricht 0.0.0.0 mit einer Maske von 0.0.0.0), denn wenn Sie einen binären Vergleich zwischen der Ziel-IP und der Maske 0.0.0.0 durchführen, wird eine Übereinstimmung mit jeder IP-Adresse erzielt, einschließlich der IP 0.0.0.0 selbst.
Aus diesem Grund wird 0.0.0.0 als Standard-Gateway-Eintrag verwendet und ist besonders nützlich, wenn Sie mehrere mögliche Gateways haben (mehrere Netzwerkschnittstellen auf Ihrem Gerät).