TCP/IP学习——利用主机IP与子网掩码计算网络号
阿里巴巴的一道題目,是關(guān)于利用主機IP與子網(wǎng)掩碼計算網(wǎng)絡(luò)號。
在此之前,我們需要先了解下五類IP地址。
在同一個物理網(wǎng)絡(luò)上的主機的地址都有一個相同前綴,即IP地址分成兩個部分:netid,hostid。其中netid代表網(wǎng)絡(luò)地址,hostid代表這個網(wǎng)絡(luò)上的主機地址,根據(jù)他們選擇的位數(shù)的不同,可以分成A,B,C,D,E五類基本IP地址。
A類地址由1個字節(jié)的網(wǎng)絡(luò)號與3個字節(jié)的主機號組成,即就是第一段數(shù)字的范圍必須是(1~127)。其范圍(1.0.0.0-126.255.255.255)用于最大型的網(wǎng)絡(luò),該網(wǎng)絡(luò)的節(jié)點數(shù)可達16,777,216個。?
B類地址由2個字節(jié)的網(wǎng)絡(luò)號與2個字節(jié)的主機號組成,即就是第一段數(shù)字的范圍必須是(128~191),其范圍(128.0.0.0-191.255.255.255)用于中型網(wǎng)絡(luò),節(jié)點數(shù)可達65,536個。??
C類地址由3個字節(jié)的網(wǎng)絡(luò)號與1個字節(jié)的主機號組成,即就是第一段數(shù)字的范圍必須是(192~223),其范圍(192.0.0.0-223.255.255.255)用于256個節(jié)點以下的小型網(wǎng)絡(luò)的單點網(wǎng)絡(luò)通信。
D類地址并不反映網(wǎng)絡(luò)的大小,,只是用于組播,用來指定所分配的接收組播的節(jié)點組,這個節(jié)點組由組播訂閱成員組成,其范圍(224.0.0.0-239.255.255.255)
E類地址,其范圍(240.0.0.0-255.255.255.254)地址用于試驗。
IPv4的規(guī)定,對IP地址強行定義了一些保留地址,即:“網(wǎng)絡(luò)地址”和“廣播地址”。所謂“網(wǎng)絡(luò)地址”就是指“主機號”全為“0”的IP地址,如:192.168.0.0(C類地址);而“廣播地址”就是指“主機號”全為“255”時的IP地址,如:192.168.255.255(C類地址)。
PS:
網(wǎng)絡(luò)ID不能以“127”作為開頭,在地址中數(shù)字127保留給診斷用。如127.1.1.1用于回路測試, 同時網(wǎng)絡(luò)ID的第一個8位組也不能全置為“0”,全置“0”表示本地網(wǎng)絡(luò)。網(wǎng)絡(luò)ID部分全為“0”和全部為“1”的IP地址被保留使用。下面介紹下子網(wǎng)掩碼的作用:
子網(wǎng)掩碼,則是用來標(biāo)識兩個IP地址是否同屬于一個子網(wǎng)。它也是一組32位長的二進制數(shù)值,其每一位上的數(shù)值代表不同含義:為“1”則代表該位是網(wǎng)絡(luò)位;若為“0”則代表該位是主機位。和IP地址一樣,人們同樣使用“點式十進制”來表示子網(wǎng)掩碼,如:255.255.0.0。
了解以上基礎(chǔ)知識后,我們看一個概念。
CIDR(無類別域間路由選擇,Classless and Subnet Address Extensions and Supernetting)與子網(wǎng)。
在子網(wǎng)中是沒有“類別”的。上面提到網(wǎng)絡(luò)分為A類、B類、C類、D類、E類。這些網(wǎng)絡(luò)只能分為相等的幾部分,如C類網(wǎng)絡(luò)是一個24位網(wǎng)絡(luò)地址,B類網(wǎng)絡(luò)是一個16位網(wǎng)絡(luò)地址,A類網(wǎng)絡(luò)是一個8位網(wǎng)絡(luò)地址。要突破這個瓶頸,引入了可變長度子網(wǎng)掩碼(VLSM)來解決這個問題。
CIDR(發(fā)音為“cider”)網(wǎng)絡(luò)地址使用網(wǎng)絡(luò)/子網(wǎng)掩碼的風(fēng)格。此組合會告訴你這樣的信息:網(wǎng)絡(luò)部分/主機部分。
如下面的寫法:
前面的192.168.0.0表示網(wǎng)絡(luò)地址,后面的28表示子網(wǎng)掩碼的前連續(xù)的28位全部是“1”,表示成2進制值如下:
[plain]?view plaincopy則從上面的子網(wǎng)掩碼可以看出,此子網(wǎng)中主機位為4位,其范圍是0000~1111,轉(zhuǎn)換成10進制為0~15,除去此子網(wǎng)中的網(wǎng)絡(luò)地址與廣播地址。
一共有14個IP地址(192.168.0.241~192.168.0.254)。
有了上面的基礎(chǔ),下面討論今天看到的東西。在一個192.168.5.0/24的子網(wǎng)中,有一個主機的IP為192.168.5.125。確定主機的網(wǎng)絡(luò)號與主機號。
由cider的表示風(fēng)格確定出子網(wǎng)掩碼為255.255.255.0。
轉(zhuǎn)換給定的IP地址與確定出的子網(wǎng)掩碼為二進制數(shù):
192.168.5.125:11000000.10101000.00000101.01111101
??????????????????????????????????????? AND
255.255.255.0:11111111.? 11111111.? 11111111.00000000?
網(wǎng)絡(luò)號,把IP地址與子網(wǎng)掩碼進行按位與得到如下:
11000000.10101000.00000101.00000000
轉(zhuǎn)換成十進制即為:192.168.5.0
下面求主機號,先把子網(wǎng)掩碼取反碼,再遇IP地址相與。
192.168.5.125:11000000.10101000.00000101.01111101
???????????????????????????????????? AND?
得到了主機號:0.0.0.125.即就是此主機號為125.
總結(jié)
以上是生活随笔為你收集整理的TCP/IP学习——利用主机IP与子网掩码计算网络号的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: TCP/IP网络中专有名词注解
- 下一篇: OSI模型中的数据链路层和物理层的区分