Come posso ottenere la maschera di rete da un indirizzo IP?


Risposte:


14

Non è possibile. Se fosse possibile, non ci sarebbe alcun motivo per avere una maschera di rete in quanto potrebbe essere determinata automaticamente.

La maschera di rete viene utilizzata per specificare l'intervallo IP in cui una "rete" inizia e termina. Questa gamma è arbitraria.

Ad esempio, con l'indirizzo IP 192.168.0.140:
con la maschera di rete di 255.255.255.0( /24in notazione idr.) L'intervallo IP sarebbe 192.168.0.1 - 192.168.0.254.
Con una maschera di rete di 255.255.255.128( /25in notazione cidr) l'intervallo IP sarebbe 192.168.0.129 - 192.168.0.254.


3

Nella maggior parte dei casi non è possibile, a causa di reti senza classi . Un determinato indirizzo IPv4 può avere 30 diverse maschere di rete.


In quale caso nei sistemi moderni puoi farlo?
Karlson,

Non capisco perfettamente la domanda, ma fondamentalmente tutti i sistemi e dispositivi oggigiorno usano CIDR.
SquareRootOfTwentyThree

@Karlson: come ha detto Patrick, non c'è modo di determinare automaticamente quando hai un caso che rientra in un'eccezione a questa regola. Puoi guardare il primo ottetto dell'indirizzo e indovinare ciecamente dai suoi primi bit che fa parte di una classe A, B, C ... o qualsiasi altra rete ma non puoi sapere per certo che l'indirizzo è di quella classe , quindi conosci la maschera di rete. In effetti, con alcuni indirizzi, è una scommessa intelligente che la "classe" vecchio stile di un indirizzo sia irrilevante: gli indirizzi che iniziano con 10 non sono quasi mai di classe A (/ 8) perché sono quasi sempre sottoreti.
Warren Young,

@SquareRootOfTwentyThree La domanda è se esiste un modo basato su un IP del sistema di destinazione per determinare la maschera di rete utilizzata.
Karlson,

@WarrenYoung Sono a conoscenza delle classi di indirizzi IP, ma puoi indovinare che la maschera IP di classe ha (e sto indovinando qui) una probabilità di errore superiore al 99%.
Karlson,

2

Sebbene non sia possibile determinare la maschera di rete dall'indirizzo IP direttamente in centos 7, è possibile digitare "annuncio ip" che restituirà l'indirizzo IP con il numero di sottorete corrispondente.

-bash-4.2 $ ip annuncio 1: lo: mtu 65536 qdisc noqueue state UNKNOWN qlen 1

link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00

inet 127.0.0.1/8 scope host lo

   valid_lft forever preferred_lft forever

inet6 ::1/128 scope host 

   valid_lft forever preferred_lft forever

2: eth0: mtu 1500 qdisc pfifo_fast stato UP qlen 1000

link/ether 00:16:3e:77:ca:e9 brd ff:ff:ff:ff:ff:ff

**inet 10.1.0.11/24** brd 10.1.0.255 scope global eth0

   valid_lft forever preferred_lft forever

inet6 fe80::216:3eff:fe77:cae9/64 scope link 

   valid_lft forever preferred_lft forever

Il numero della sottorete è anche memorizzato nel seguente file

/ etc / sysconfig / network-scripts / ifcfg-eth0 (dove eth0 dipende dal tipo di scheda di rete)

Cerca l'impostazione PREFIX. Il numero fornito è la maschera di sottorete

ad es. PREFIX = 24

Se non esiste un numero PREFIX nel file sopra, le impostazioni di rete del server passeranno automaticamente a una subnet mask di 8 che verrà nuovamente mostrata dal comando "ip ad".

Se si desidera modificare il numero PREFIX, ricordare di riavviare il servizio di rete utilizzando systemctl restart network.


1

la maschera di rete viene utilizzata principalmente per distinguere gli indirizzi locali nella stessa sottorete dagli indirizzi esterni che sono raggiungibili solo tramite un gateway.

Quindi, se conosci tutti gli indirizzi IP (= attualmente o in futuro utilizzati) nella stessa sottorete, puoi costruire una maschera di rete che li contenga tutti. Ad esempio, se 192.168.2.4 e 192.168.2.253 devono trovarsi nella stessa sottorete, funziona la maschera di rete 255.255.255.0 (uguale all'intervallo ip 192.168.2.0-255 o nella notazione cidr 192.168.2.0/24).


@WarrenYoung Grazie per averlo segnalato. Ho chiarito la mia risposta.
jofel

Siamo spiacenti, ma "maschera di rete 255.255.255.0" non significa 192.168.2.1-255, ma 192.168.2.0-255 (se includeremo rete e trasmissione) o 192.168.2.1-254 (se non includeremo)
Lazy Badger
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.