Perché abbiamo bisogno della maschera di sottorete?


37

Poiché un indirizzo IPv4 fornisce già le informazioni sulla rete e sull'host, perché è ancora necessaria una maschera di sottorete?

Il 1 ° ottobre specifica già la classe di rete (1-127: A, 128-191: B, 192-223: C ecc.). A, B o C implica il numero di ottetti per la rete (rispettivamente, 255.0.0.0, 255.255.0.0, 255.255.255.0), che indica automaticamente quanti host sono consentiti per ogni classe di rete.

L'IP fornisce tutte le informazioni di una subnet mask e altro ancora. Perché in primo luogo abbiamo bisogno della maschera di sottorete? Se le informazioni contenute in una sottorete non sono interamente un sottoinsieme di quelle all'interno di un IP, cos'altro contiene o cosa fa la sottorete, che ci impone di specificarle in modo indipendente?


21
Classe A, B, C sono così anni '80 e morti da tempo. Con l'esaurimento dell'indirizzo, si è realizzato che un sacco di spazio assegnato di Classe A e B è stato completamente sprecato sui titolari, quindi CIDR e l'assegnazione data di piccoli blocchi utilizzabili di indirizzi in tutto lo spazio degli indirizzi.
Fiasco Labs,

2
@FiascoLabs Questo non risponde alla sua domanda amico. I router hanno ancora usato quelle maschere di sottorete? Sì con classful (se non ci sono ulteriori subnet, il che è forse improbabile), la subnet mask può essere calcolata dall'indirizzo. Ma a) è necessario usare una subnet mask con un AND logico, se sai già quanti bit vuoi, e perché? Probabilmente dovuto alle operazioni della CPU che non sono in grado di testare x bit di un byte, quindi è necessario azzerare gli altri e applicare l'operatore EQU.
barlop

8
I router con cui ho lavorato non presumono che il primo ottetto di classe A, B o C significhi qualcosa. Ho sempre dovuto impostare una maschera di rete o un CIDR per far conoscere al router gli indirizzi in cui si trovavano la rete e la trasmissione. Naturalmente le assegnazioni di indirizzi di classe hanno maschere di rete davvero semplici, 255.0.0.0, 255.255.0.0 e 255.255.255.0, quindi sì, è necessario utilizzare una subnet mask.
Fiasco Labs,

VLSM - maschere di sumbet di lunghezza variabile, puoi creare una rete o un dominio di trasmissione grande o piccolo quanto desideri!
Mark S.

3
Anche nei giorni delle lezioni, potresti avere una grande rete subnet (sic) in varie altre più piccole. Una workstation in una grande università avrebbe ancora un indirizzo in una rete di classe A, ma potrebbe una sottorete di una sottorete di una sottorete dell'intera classe A. Quindi, naturalmente, i router non hanno ipotizzato.
Alexios,

Risposte:


38

Abbiamo bisogno di una subnet mask per gli indirizzi IPv4 perché l'indirizzo non fornisce alcuna informazione sulla dimensione della rete. Le dimensioni delle classi non sono le dimensioni della rete. Nelle reti pratiche tutte le reti IPv4 sono suddivise in sottoreti più piccole della dimensione della classe.

Ad esempio, è possibile suddividere la rete di classe C 200.200.200.0/255.255.255.0 in due reti più piccole (potenzialmente in posizioni separate) 200.200.200.0/255.255.255.128 e 200.200.200.128/255.255.255.128 supponendo che non siano necessari più di 126 host. In realtà la maggior parte delle aziende ottiene solo indirizzi IPv4 sufficienti per i server che devono essere su Internet pubblica. Ho visto personalmente set-up con 32,16 e 8 reti di indirizzi (che sarebbero rispettivamente maschere di 255.255.255.224, 255.255.255.240 e 255.255.255.248)

Avere reti IP solo in blocchi di dimensioni di classe era troppo restrittivo nel limitare il numero di reti che potevano essere autorizzate: le reti di classe A 127 occupavano metà dello spazio. Per non parlare del fatto che avere una rete di 24 miliardi di nodi è del tutto ingestibile. Nel 1993 fu introdotto il Classless Inter-Domain Routing (CIDR) per consentire la divisione delle reti.

Inoltre, per essere chiari, lo scopo della maschera di sottorete è determinare quali host si trovano sulla rete locale e quali sono al di fuori della rete. Gli host possono comunicare direttamente con gli host sulla stessa rete, ma devono comunicare con un router per parlare con gli host su reti esterne.


quando si utilizza CIDR si allega un prefisso per specificare il numero di bit utilizzati per l'indirizzamento di rete e il resto per gli indirizzi host. Ad esempio, 200.200.200.0/27, implica automaticamente che l'indirizzo dell'host deve essere 63 o inferiore. Ancora una volta, l'IP ti dice ancora questa informazione, quindi, persisti la mia domanda ...
KMC

È ancora un indirizzo e una maschera di rete quando tutto è stato detto e fatto ed è quello che l'hardware sottostante usa per calcolare il suo netblock, non è vero?
Fiasco Labs,

La mia domanda è persistente perché l'IP contiene ancora tutte le informazioni che una subnet mask deve avere. Non trovo ancora alcun motivo per l'esistenza della maschera di sottorete.
KMC,

1
@KMC: Non ricevo davvero il tuo commento, un prefisso CIDR è paragonabile a una maschera di sottorete e al software, quindi spesso utilizza il prefisso o la maschera, come una questione di gusti.
Legolas,

20
@KMC: /27 è la maschera di sottorete, appena scritta in una notazione diversa.
Heinzi,

20

Il 1 ° ottobre specifica già la classe di rete (1-127: A, 128-191: B, 192-223: C ecc.). A, B o C implica il numero di ottetti per la rete (rispettivamente, 255.0.0.0, 255.255.0.0, 255.255.255.0), che indica automaticamente quanti host sono consentiti per ogni classe di rete.

Giusto, ma se qualcuno dovesse subnet quella rete, avresti bisogno della subnet mask per sapere quanto era grande una subnet. Sì, con l'indirizzamento di classe, la classe ti dice le dimensioni della rete e ti permette di dire se un l'host è nella tua stessa rete, ma se quella rete è sottorete, senza la subnet mask, come faresti a sapere se un altro nodo si trova nella tua stessa sottorete?

Supponi di essere su una rete Ethernet. Usiamo l'indirizzamento di classe con la sottorete. Il tuo indirizzo IP è 1.2.3.4e vuoi raggiungerlo 1.3.1.1. Usi ARP per raggiungere quell'indirizzo? Bene, dipende se 1.2.3.4e si 1.3.1.1trovano nella stessa sottorete . Anche se si trovano nella stessa rete, se presenti in sottoreti diverse, è necessario utilizzare un router. Se si trovano nella stessa sottorete, è necessario utilizzare ARP.

Quindi è necessaria la maschera di sottorete se si utilizza la sottorete, anche con reti di classe.

Penso che tu stia confondendo la sottorete con il CIDR, in realtà. Senza CIDR, anche con subnet, non è necessaria la subnet mask tra le aree amministrative. Ma ne hai ancora bisogno all'interno della rete!


6

Una maschera di sottorete viene utilizzata per eseguire operazioni leggermente sagge su un indirizzo IP, insieme a un indirizzo di rete. Se la mia memoria mi serve bene, prendi un indirizzo IP e fai un po 'saggio su di esso e sulla maschera di sottorete per una determinata rete. Se il risultato è uguale all'indirizzo di rete, l'indirizzo IP si trova su quella particolare rete. I router che dispongono di tabelle di routing di indirizzi di rete e maschere di sottorete possono utilizzare semplici calcoli binari (che è molto veloce, se non il più veloce da gestire per i computer) per scoprire da quale interfaccia è possibile estrapolare un pacchetto.


3

"Il 1 ° ottobre specifica già la classe di rete (1-127: A, 128-191: B, 192-223: C ecc.)."

Oggi non ci sono molti protocolli di uso comune che lo rispettano più (vedi il commento di @Fiasco Labs - RIP è l'unico a cui riesco a pensare). Quindi, questa affermazione nella tua domanda:

L'IP fornisce tutte le informazioni di una subnet mask e altro ancora.

non è vero per la stragrande maggioranza dei protocolli in uso oggi su Internet.

Se si dispone di un numero di macchine connesse tra loro e che comunicano sempre tra loro, senza che sia mai stato coinvolto alcun router, la maschera di sottorete non è realmente necessaria (sebbene i moderni stack TCP / IP insistano nel specificarne una).

I router definiscono i bordi delle (sotto) reti. Tutto ciò che deve passare attraverso un router si trova su una rete diversa - e viceversa: tutto ciò che deve passare a una rete diversa deve passare attraverso un router.

La maschera di sottorete indica come tutte le macchine sono in grado di stabilire se il traffico è destinato alla rete corrente o deve essere inviato a un router per arrivare a destinazione. Lo stack TCP / IP del tuo computer invierà il suo traffico direttamente alla destinazione se si trova nella subnet mask, altrimenti consulta la sua tabella di routing e la solita situazione è quella di inviare altro traffico al gateway predefinito.


3

Il 1 ° ottobre specifica già la classe di rete (1-127: A, 128-191: B, 192-223: C ecc.). A, B o C implica il numero di ottetti per la rete (rispettivamente, 255.0.0.0, 255.255.0.0, 255.255.255.0), che indica automaticamente quanti host sono consentiti per ogni classe di rete.

Mentre questo era storicamente vero. Questo non è vero da anni. Anni fa il 24.0.0.0/8 veniva distribuito in pezzi a vari ISP. (Credo che questo fosse principalmente per i fornitori di cavi.)

Anche quando era vero per le assegnazioni di rete, le netmask erano necessarie per le reti interne per semplificare il routing. Il routing efficiente di una rete come 10.0.0.0/8 richiede la suddivisione in reti più piccole. Questo può essere uno schema semplice che utilizza le suddivisioni / 16 e / 8, ma è più probabile che si tratti di una suddivisione senza classi. Le sottoreti più grandi fanno un uso più efficiente dello spazio degli indirizzi (oltre il 99% di un / 24 è disponibile per i dispositivi, mentre è disponibile solo il 50% di un / 30.

La rete locale viene instradata direttamente dal dispositivo, mentre altri indirizzi vengono passati attraverso un router. Gli host con più interfacce possono essere collegati a reti di dimensioni diverse.

Per le sottoreti senza host multihomed a / 24 contiene più indirizzi di quelli richiesti. La maggior parte dei router con cui ho lavorato ha 24, 48 o 96 porte e può essere supportata con le sottoreti / 27, / 26 o / 25. Ciò consente alcuni indirizzi extra per DCHP e / o multihoming. Le organizzazioni possono standardizzare l'assegnazione di sottoreti di / 24 o / 23 per il routing.

Poiché un indirizzo IPv4 fornisce già le informazioni sulla rete e sull'host, perché abbiamo ancora bisogno di una maschera di sottorete?

Molti dispositivi utilizzano una maschera di rete predefinita di / 24 che in molti casi corrisponde alla dimensione della sottorete locale (localnet) assegnata al router. Questo è ugualmente applicabile alle classi A, B e C. A meno che la dimensione della sottorete corrisponda alla sottorete predefinita, è richiesta una maschera di rete.

Se gli indirizzi vengono specificati utilizzando il formato CIDR, la maschera di rete e la rete possono essere calcolate dall'indirizzo. In caso contrario, la rete può essere calcolata dall'indirizzo e dalla maschera di rete. Non è possibile calcolare in modo affidabile la maschera di rete dall'indirizzo e dalla rete.

Fornire un indirizzo gateway (router) per una subnet consente di configurare la route predefinita consentendo il routing verso indirizzi esterni alla subnet.


2

Fatta eccezione per la risposta di @Adrian, non sono sicuro che nessuno di questi in realtà menzioni PERCHÉ usiamo la maschera invece di una soluzione più semplice da capire - e ha solo toccato il fatto che il mascheramento è VELOCE, intendo perché non specificare semplicemente che lo sei interessato agli indirizzi 192.168.1.200-192.168.1.220, o perché non usare semplicemente nomi come * .my.address.com per questo, semplicemente nominando ciascun computer invece di assegnare numeri?

Ora puoi effettivamente rimuovere completamente i numeri dal routing, la maggior parte dei PC è in grado di gestire il tipo di traffico che viene inviato, ma i dispositivi su larga scala presentano ancora un problema.

Il filtro in questo modo sta accadendo tutto il tempo e sta succedendo MOLTO. Il mascheramento può essere fatto in hardware, eliminando completamente la necessità di perdere tempo con pacchetti poco interessanti (che erano il 99% dei pacchetti che avresti dovuto passare attraverso il tuo filo, ora con hub commutati non dovresti vedere nessuno che non lo sia indirizzato al tuo computer, rendendolo di nuovo meno rilevante).

Per una soluzione così semplice sull'hardware è anche molto flessibile. Lo stesso hardware può instradare un'intera rete di classe A (10.xxx) o solo uno o due indirizzi IP con la stessa implementazione.

Questa non è una sostituzione per nessuna delle altre risposte, solo un po 'più di informazioni.


"perché non usare solo nomi come * .my.address.com per questo, semplicemente nominando ogni computer" - intendi, ad esempio, DNS?
Piskvor,

@Piskvor Exactly! Il DNS si risolve in indirizzi IP, è possibile utilizzare direttamente il DNS ma la potenza di elaborazione utilizzata aumenta. Puoi persino suddividere i domini in modo che * .meh.com vada a un indirizzo tranne * .alt.meh.com vada a un altro ...
Bill K,

Funziona sì, cioè quando funziona (complessità aggiuntiva); inoltre devi sapere dove si trova il server DNS; problema di pollo e uova.
Piskvor,

@Piskvor Sto solo dicendo che ci sono altre possibilità che funzionerebbero bene, tranne per le prestazioni - ancora significative in alcuni casi - e il fatto che richiederebbe riscrivere TUTTO. (Pensi davvero che il problema con un server DNS sarebbe diverso se passassi a un diverso schema di indirizzamento?)
Bill K,

No, il problema persisterebbe davvero. (e tra l'altro, la spinta per un semplice stack di rete non sta andando via - anzi, diventando più forte con l '"Internet delle cose": semplice significa anche meno energia necessaria e maggiore durata della batteria)
Piskvor

1

Ci sono già molte cose spiegate in altre risposte, ma non la cosa principale.

Volete sapere se l'indirizzo IP può già fornire l'indirizzo completo del destinatario, perché esistono le maschere di sottorete. Sai, nelle grandi organizzazioni, a volte i dipartimenti hanno bisogno di reti separate, quindi, ad esempio, i contabili si trovano in una sottorete diversa e non possono accedere agli indirizzi IP interni del reparto marketing. Quindi, ad esempio, un dipendente con IP 192.168.10.3 non sarebbe in grado di accedere alla stampante a 192.168.15.76, perché si troverebbe in una sottorete diversa.


1

Ad oggi, non c'è ancora risposta sul perché le sottoreti (al contrario del CIDR) siano ancora in uso. Esistono due problemi con le subnet mask:

  1. è possibile specificare maschere non contigue, che non sono valide.
  2. (si applica anche al CIDR) introducono possibili sovrapposizioni: gli ISP potrebbero fornire lo stesso indirizzo IP come parte di sottoreti diverse. per esempio

    cliente A: maschera di sottorete 22.132.124.121 255.255.255.0
    cliente B: maschera di sottorete 22.132.114.55 255.255.0.0

che non è immediatamente visibile come dovrebbe essere.

https://blog.certskills.com/ccent/vlsmo_01_01/


0

Noramally, la subnet mask funge da indicatore per le sottoreti sottostanti. di solito una rete contiene diverse sottoreti e la subnet mask è il modo utilizzato dal router per inviare il traffico alla destinazione specifica (in qualsiasi sottorete utilizzando la subnet mask) questo collegamento contiene un'introduzione alle subnet mask


1
Aggiungi qui le informazioni importanti dal link, aggiungi il link come fonte.
avirk,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.