Qualcuno può chiarire l'assegnazione del gateway per me?
Qual è la differenza tra l'aggiunta di gateway as 0.0.0.0
e l'assegnazione di un indirizzo IP specifico come gateway?
Qualcuno può chiarire l'assegnazione del gateway per me?
Qual è la differenza tra l'aggiunta di gateway as 0.0.0.0
e l'assegnazione di un indirizzo IP specifico come gateway?
Risposte:
0.0.0.0
ha il significato specifico "non specificato". Ciò si traduce approssimativamente in "non c'è nessuno" nel contesto di un gateway. Naturalmente, ciò presuppone che la rete sia connessa localmente, poiché non esiste un hop intermedio.
Come destinazione, 0.0.0.0/0
è speciale: se non ci sono bit di rete, non può esserci nulla nel numero di rete. Quindi, è naturalmente non specificato.
Tuttavia, attenendosi alla tua domanda, sì, ha un significato speciale. Significa che la rete è connessa localmente su quell'interfaccia e non sono necessari altri hop per accedervi.
Dalla pagina di Wikipedia, 0.0.0.0
estratto
In Internet Protocol versione 4 l'indirizzo 0.0.0.0 è un meta-indirizzo non instradabile utilizzato per designare un target non valido, sconosciuto o non applicabile. Dare un significato speciale a un dato altrimenti non valido è un'applicazione di segnalazione in banda.
Dalla pagina di Wikipedia, Percorso predefinito .
estratto
La route predefinita in Internet Protocol versione 4 (IPv4) è designata come indirizzo zero 0.0.0.0/0 nella notazione CIDR, 1 spesso chiamata route quad-zero. La maschera di sottorete è indicata come / 0, che specifica efficacemente tutte le reti ed è la corrispondenza più breve possibile. Una ricerca del percorso che non corrisponde a nessun altro percorso ricade su questo percorso. Allo stesso modo, in IPv6, la route predefinita è specificata da :: / 0.
Nel segmento di livello più alto di una rete, gli amministratori in genere indicano la route predefinita per un determinato host verso il router che ha una connessione a un fornitore di servizi di rete. Pertanto, i pacchetti con destinazioni esterne alla rete locale dell'organizzazione, in genere destinazioni su Internet o una rete geografica estesa, vengono inoltrati al router con la connessione a quel provider.
Il dispositivo a cui punta il percorso predefinito viene spesso chiamato gateway predefinito e svolge spesso altre funzioni come il filtraggio dei pacchetti, il firewalling o le operazioni del server proxy.
Nelle tue domande suppongo che tu abbia qualcosa del genere:
$ 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
Ciò significa che per ciascuna delle destinazioni di rete (192.168.1.0 o 169.254.0.0) che il gateway predefinito è la destinazione 0.0.0.0, se un pacchetto NON è destinato a nessun indirizzo all'interno di quella particolare rete. Per la destinazione 0.0.0.0, utilizzare l'indirizzo IP 192.168.1.254.
Queste regole agiscono per incanalare tutto il traffico che non corrisponde a nessuno dei percorsi che conosciamo, verso il percorso predefinito.
Supponiamo quindi che abbiamo un pacchetto con IP 192.168.1.110. La prima regola viene verificata e questo IP corrisponde a quella rete, quindi viene consegnato.
Se avessimo il pacchetto 150.12.13.1, la terza regola sarebbe in vigore e il pacchetto verrebbe indirizzato a 192.168.1.254.
Guarda, 0.0.0.0 viene utilizzato solo nelle tabelle di routing, NON per l'assegnazione a un host.
Gli host (computer con un indirizzo IP) gestiscono una tabella di routing per risolvere il modo in cui inviare i loro messaggi nella posizione corretta.
Scenario 1: PC-A vuole inviare un messaggio a PC-B sulla STESSA RETE:
1) PC-A controlla la sua tabella di routing per vedere se esiste una corrispondenza per l'indirizzo IP di destinazione. 2) La tabella di routing mostra che la destinazione è all'interno della stessa rete, trova l'interfaccia collegata a quella rete, quindi inoltra il messaggio direttamente a quella interfaccia verso la destinazione.
Scenario 2: PC-A vuole inviare un messaggio a Server-Z su una RETE REMOTA (NON sulla stessa rete):
1) PC-A controlla la sua tabella di routing e non riesce a trovare una corrispondenza (ovviamente, perché gli host non tengono traccia degli host su reti remote - questo è il lavoro dei router).
2) Tuttavia, il PC è configurato con un indirizzo IP quad-zero e una subnet mask mappati sul router (gateway predefinito su ALTRE, REMOTE, DIVERSE reti) in questo modo:
(0.0.0.0 0.0.0.0 192.168.0.1 interfaccia)
Cosa significa zero? Non significa nessuno. Quindi, se il tuo computer non tiene traccia della posizione degli host remoti e controlla la sua tabella di routing ogni volta che vuole inviare un messaggio per vedere se deve inviarlo alla rete SAME (locale) o se ha bisogno per inviarlo a una rete REMOTA, quindi come arriva il messaggio alla rete remota?
Lo invia al router e consente al router di svolgere il proprio compito di instradare il pacchetto lungo il percorso migliore. Quindi, l'host / PC / computer deve sapere che se non riesce a trovare una voce nella sua tabella di routing per dove inviare il messaggio (aka 0.0.0.0), allora sa di inviarlo al router, che è l'IP indirizzo associato alla voce (0.0.0.0 0.0.0.0 192.168.0.1 interfaccia) e utilizza l'interfaccia / scheda di rete / scheda di rete associate a quella collegata.
Pertanto, 0.0.0.0 viene utilizzato dalle tabelle di routing su host e router per sapere dove inviare qualcosa quando trova zero corrispondenze su come raggiungere una destinazione e deve essere mappato sull'indirizzo IP di un router e su un'interfaccia per raggiungere quel router.