ip位址
在根據tcp/ip協議進行通訊時,要用ip位址來標識主機或路由器。在ipv4中,ip位址是乙個32位的整數。所以最多可以表示的數字ip位址是:2^32(大約是43億)。
ip位址由網路號和主機號兩部分來標識。處於不同網段內的主機必須有不同的網路標識。而處於同一網段內的主機的網路號表示相同,但主機號標識必須不同。所以,在某網段內新增一台主機後,該主機的網路號與該網段的網路號相同,但是主機號不能與該網段裡的其他主機的主機號相同。
通過合理設定網路號和主機號,就可以保證在相互連線的網路中,每台主機的ip位址都是唯一的。
有一種dhcp技術,可以自動為網段內新增結點主機分配ip位址。一般的路由器都帶有dhcp功能,因此路由器可以看做乙個dhcp伺服器。
通過將ip位址劃分為網路號和主機號來標識,可以有如下特點:
(1)ip位址管理機構在分配ip位址時只分配網路號。剩下的主機號由得到該網路號的單位自行分配,這樣就方便了管理就夠的管理;
(2)路由器在尋找目的主機的ip位址時,只需找到目的主機所在的區域網,再在該區域網內尋找目的主機。
(3)具有不同網路號的區域網必須有路由器進行連線,所以路由器總是有兩個或兩個以上網路號不同的ip位址
那麼該如何劃分網路號和主機號呢?
ip位址分類
ip位址可以分為五類:a~e類。各類別的網路號和主機號分別對應如下:
a類:0.0.0.0~127.255.255.255
b類:128.0.0.0~191.255.255.255
c類:192.0.0.0~223.255.255.255
d類:224.0.0.0~239.255.255.255
e類:240.0.0.0~247.255.255.255
a類位址的網路號佔1個位元組,只有7位可以使用。可以指派的a類網路號為126(2^7-2)個。a類ip位址中網路欄位全0表示的是「本網路(a類網路)」的意思,不用於分配給具體的主機。ip位址中網路號全1表示的是本地環迴位址,用於測試本主機的程序之間的通訊,即網路號為127的ip位址。a類位址的主機號佔3個位元組,所以乙個a類網路中可以連線的最大主機數為:2^24-2。主機號全0表示該主機連線的單個網路位址(某個a類網路),主機號全1表示該網路中的所有主機。
b類位址的網路號佔2個位元組,只有14位可以使用。可以指派的b類網路號為2^14-1(128.0.0.0)不用,最小的網路號為:128.1.0.0。每乙個b類網路可以連線的最大主機數為:2^16-2=65534。(扣除主機號全0和全1的ip位址)。
c類位址的網路號佔3個位元組,只有21位可以使用。可以指派的c類網路號為2^21(192.0.0.0不用),最小的網路號為:192.0.1.0。每乙個c類主機可以連線的最大主機數為:2^8-2=254(扣除主機號為全0和全1的ip位址)。
在上述的分類中,存在以下問題:
(1)ip位址空間的利用率降低:乙個b類網路中最多可以表示的ip位址為65534個,而某些種類網路由於鏈路的特點能夠連線的結點個數有限,所以就會造成大量的ip位址浪費;由於c類網路能連線的結點個數有限。所以,單位會申請b類網路,但一般又用不了這麼多的ip位址,所以會造成ip位址的浪費。同理,a類網路的ip位址也會造成大量的浪費;
(2)如果給每乙個物理網路都分配乙個網路號,就會導致路由表過大。此時就會造成路由表的管理成本增加,同時查詢的效率也會增加。
(3)當乙個單位申請了乙個網路號。他想將該網路能表示的ip位址再分給它下屬的幾個小單位時。如果在申請新的網路就會造成浪費。
為了解決上述的問題,引入子網劃分的概念。
子網劃分和子網掩碼
子網劃分
子網劃分實際是在將原a類,b類,c類網路中的主機號的部分作為子網號,將原來的abc類網路細化的過程,將原來的乙個網路分為多個網路,但是在對外表現上,還是表現為原來的乙個網路。
在資料進行通訊的過程中,首先根據目的ip位址找到目標主機所在的網路(路由器),再根據目的ip位址的子網號找到目標主機所在的子網,最後找到目標主機。
比如,乙個b類ip位址為:192.168.0.0。先將該網路劃分多個子網,假定子網號占用了8位。由於原b類網路中主機號一共占用了16位,子網路拿走8位之後,乙個子網中的主機號所佔的位數就變成了8位。假定其中乙個子網為192.168.5.0。在資料通訊時,目的主機為該子網中的ip位址為192.168.5.8的主機。因此,在資料傳輸過程中,首先會根據目的ip位址找到該主機所在的網路192.168.0.0(其實是找到該網路上的路由器),再通過ip位址找到目的主機所在的子網192.168.5.0。最後在該子網內找到目的主機。
此時,可以將網路號和子網號統一為網路標識。
子網掩碼
當資料報到達目的主機所在網路的路由器時,如何將它**到子網上呢?
為了使目的主機所在網路的路由器能夠很方便的找到目的子網,引入「子網掩碼」的概念。子網掩碼也是乙個32位的整數,它是由一串1和一串0構成,1對應於目的主機所在的網路號和子網號,0對應於目的主機所在的主機號。對於沒有劃分子網的網路號,也有子網掩碼,此時子網掩碼中的1對應於網路號,0對應於主機號。將網路號和子網號統稱為網路號後,子網掩碼中的1就對應於網路號,0對應於主機號。
將目的主機的ip位址與子網掩碼進行按位與操作,便可以確定目的主機所在的網路號。
如下圖:
此時,將目的主機ip與子網掩碼按位與之後得到就是該目的主機所在的網路位址ip。在本例中,該子網的主機ip的表示範圍是:145.13.3.0~145.13.3.255。能夠連線的主機個數為254臺(去除主機號為全0和全1的ip位址)。
上述中,子網掩碼與主機ip按位與之後得到網路位址,然後主機號由全0到全1即表示該子網的位址範圍。
子網掩碼除了上述的表示方法外,還有一種表示方法:在每個ip位址之後追加網路位址的位數。如上例中:
145.13.3.10/24。表示的是ip位址為145.13.3.10的主機ip,子網掩碼的高24位為全1。因此網路位址的高24位與該ip位址相同即145.13.3.0。
所以,在路由表中既要有目的網路位址,也要有該網路的子網掩碼。才能判斷目的ip是否與目的網路位址對應。
特殊的ip位址
與上述的abc類相同,主機號為全0的表示「該網路」,主機號為全1的表示「所有主機」即廣播位址。127.開頭的為本機環迴測試,一般為127.0.0.1。
cidr
由於a類的所能派發的網路號有限,而c類網路能連線的主機個數有相對較少,所以一般的單位在申請網路時,都會申請b類網路,這就導致了b類網路的嚴重缺乏。
所以,開始放棄ip位址的分類,採用任意長度分割ip位址的網路標識和主機標識,它與abc類的劃分沒有任何關係。稱為cidr。它可以不受ip位址分類的限制,自由進行分配。
當申請到乙個任意長度的網路號之後,也可以在網路內進行子網劃分。所以對於任乙個子網也對應乙個子網掩碼。使用方法與上述相同。
cidr更有效的利用了當前的ipv4位址,同時也減輕了路由器的負擔。它可以將多個連續c類位址合併為乙個網路(和你寶貴的個數以2,4,8,...呈現)。例如:將兩個c類網路:192.168.224.0和192.168.225.0合併為乙個網路。此時合併後的網路中可以連線的主機數增加到2^9-2=510臺。在未合併之前,需要在路由表中占用兩行來表示兩個c類網路,合併後只需用一行就可以表示。
關於IP網段劃分
ip位址分類 a類 b類 c類 d類 e類 ip位址由四段組成,每個欄位是乙個位元組,8位,最大值是255,ip位址由兩部分組成,即網路位址和主機位址。網路位址表示其屬於網際網路的哪乙個網路,主機位址表示其屬於該網路中的哪一台主機。二者是主從關係。ip位址的四大型別標識的是網路中的某台主機。ipv4...
IP網段計算和劃分
先了解基礎運算 異或運算 相同為0,不同為1 與運算 兩者為1時為1,有0為0 或運算 有1為1 ip網段的計算和劃分 ip和子網掩碼 我們都知道,是由四段數字組成,在此,我們先來了解一下3類常用的 a類ip段 0.0.0.0 到127.255.255.255 b類ip段 128.0.0.0 到19...
IP位址 網段的劃分
ip和子網掩碼 我們都知道,是由四段數字組成,在此,我們先來了解一下3類常用的 a類ip段 0.0.0.0 到127.255.255.255 b類ip段 128.0.0.0 到191.255.255.255 c類ip段 192.0.0.0 到223.255.255.255 預設分配的子網掩碼每段只有...