255.255.255.255 contro 192.168.1.255


18

Stiamo cercando di eseguire il debug di alcune applicazioni durante la trasmissione.

Qual è la differenza tra l'indirizzo di trasmissione 255.255.255.255 e, come ad esempio riportato da ifconfig, Bcast: 192.168.1.255


Questa domanda e risposte spiegano.
Ron Maupin,

Risposte:


37

Un indirizzo di trasmissione è sempre relativo a una determinata rete, non esiste alcuna trasmissione di per sé ; quando si dispone di una rete, è possibile calcolare il suo indirizzo di trasmissione sostituendo tutti i bit host con 1s; in poche parole, l'indirizzo di trasmissione è l'indirizzo con il numero più alto che puoi avere sulla rete, mentre l'indirizzo di rete è il più basso (con tutti i bit host impostati su 0s); questo è il motivo per cui non è possibile utilizzare nessuno dei due come indirizzi host effettivi: sono riservati per questo uso.

Se la tua rete è 192.168.1.0/24, il tuo indirizzo di rete sarà 192.168.1.0 e il tuo indirizzo di trasmissione sarà 192.168.1.255.

Se la tua rete è 192.168.0.0/16, il tuo indirizzo di rete sarà 192.168.0.0 e il tuo indirizzo di trasmissione sarà 192.168.255.255.

E così via...

255.255.255.255 è un indirizzo di trasmissione speciale, che significa "questa rete": ti consente di inviare un pacchetto di trasmissione alla rete a cui sei connesso, senza preoccuparti effettivamente del suo indirizzo; in questo è simile a 127.0.0.1, che è un indirizzo virtuale che significa "host locale".

Maggiori informazioni qui: http://en.wikipedia.org/wiki/Broadcast_address


127.0.0.1 è considerato un "indirizzo virtuale"? La mia comprensione è che è un indirizzo reale e la RFC dice che dovrebbe puntare all'interfaccia di loopback virtuale. Tuttavia, ho visto casi in cui un dispositivo effettivamente interroga il mio server DNS per 127.0.0.1.
Belmin Fernandez,

1
Forse il mio uso della parola "virtuale" è stato un po 'una semplificazione eccessiva, ma si tratta effettivamente di un indirizzo riservato che non può appartenere a nessuna interfaccia fisica e non dovrebbe mai essere visto al di fuori di un host; se qualcosa sta chiedendo al tuo server DNS chi è 127.0.0.1, dovrebbe funzionare il più velocemente possibile alla classe IP più vicina :-p
Massimo

"ti consente di inviare un pacchetto di trasmissione alla rete a cui sei connesso" ... e se sei connesso a più reti? I pacchetti di trasmissione vengono inviati a tutti loro?
Nathan Osman,

11

Per aggiungere a quanto affermato da Massimo nella sua risposta:

255.255.255.255 verrebbe considerato l'indirizzo di trasmissione del livello fisico mentre 192.168.1.255 verrebbe considerato l'indirizzo di trasmissione del livello di rete. ARP genererebbe una trasmissione a livello fisico, mentre NetBIOS genererebbe una trasmissione a livello di rete.


11

In linea di principio, 255.255.255.255 è l'indirizzo di trasmissione "globale", il che significa che si suppone che lo stack IP invii il pacchetto a tutte le interfacce di rete e che i router configurati per inoltrare le trasmissioni debbano inviarli.

In pratica, non ci sono quasi router che inoltrano trasmissioni e molti stack inviano semplicemente una copia del pacchetto all'interfaccia a cui punta il percorso predefinito.

L'indirizzo di trasmissione della sottorete viene utilizzato per selezionare un'interfaccia specifica. In entrambi i casi, questi dovrebbero essere mappati all'indirizzo di trasmissione del livello di rete (che sarebbe FF: FF: FF: FF: FF: FF per Ethernet).

In generale, l'utilizzo di 255.255.255.255 è una cattiva idea, in quanto esistono diverse configurazioni in cui l'interfaccia con il percorso predefinito è esattamente la scelta sbagliata. Selezionare esplicitamente un'interfaccia è meglio, ma deve essere fatto con attenzione.

L'altro mio suggerimento sarebbe di usare il multicast, se questo ha senso per la tua applicazione. Si applicano ancora le stesse avvertenze del traffico di trasmissione, ma ciò consente agli host non interessati di identificare rapidamente i pacchetti e consente ai gestori di rete di impostare regole di inoltro specifiche per il protocollo.


1
Quando cerco 255.255.255.255 uno dei primi risultati che viene visualizzato è RFC 919 . In quella RFC ho trovato questa frase: "L'indirizzo 255.255.255.255 indica una trasmissione su una rete hardware locale, che non deve essere inoltrata " (enfatizzare la mia) Quindi quando suggerisci che i router potrebbero essere configurati per inoltrare i pacchetti, allora non è così molto probabilmente.
Kasperd,
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.