1. 程式人生 > >網路層——可變長子網掩碼(VLSM)和無類域間路由(CIDR)技術

網路層——可變長子網掩碼(VLSM)和無類域間路由(CIDR)技術

一、基本演化過程

標準子網掩碼分類——子網劃分——可變長子網掩碼——CIDR——超網(將小的網路組成大的網路)

二、可變長的子網掩碼(VLSM)

問題1:
在傳統的子網掩碼中,子網掩碼一致,主機數量平均分佈,子網號不能全為0或全為1,這樣會導致浪費一些IP,並且有時不能很好滿足主機分配數量的需求

此時需要用到可變長的子網掩碼(VLSM)

VLSM(Variable Length Subnet masks)
在傳統的子網掩碼中,子網掩碼一致,主機數量平均分佈,子網號不能全為0或全為1,這樣會導致浪費一些IP,並且有時不能很好滿足主機分配數量的需求

子網掩碼的另一種表示方法(斜線記法)

IP為:200.19.90.128/25
表示前25用來表示子網掩碼,也就是11111111 11111111 11111111 10000000

假設有一種情況

某單位的IP為 : 200.19.90.128/25,要求分為3個子網,其中子網1有52臺計算機,子網2和子網3有23臺計算機。

很容易判斷最後一段為關鍵
最後一段的子網掩碼為:1000 0000
按照之前的想法,如果子網號不能全1的話,又要分成3個子網,那麼應該是1001 0000、1010 0000、1100 0000三種情況

也就是將前三位作為子網掩碼,那麼主機號就有2^5-2=30個主機號可以用,很明顯不滿足題目要求
此時就*需要掩碼往右移了,即可變長的子網掩碼。

VLSM操作步驟

這裡寫圖片描述

可變長掩碼操作步驟:
原始掩碼向右增加一個掩碼位,相當於將原始ip劃分兩半,其中一半可以用來給有52臺計算機的地方
再將另一半劃分兩半,每一半包含30個主機位,可以用在有23臺計算機的地方

三、無類域間路由選擇(CIDR)

問題2:
如果每個C類網路都需要在Internet上的核心路由器上佔用一個路由表項,那麼核心路由器會越來越龐大,如>何解決?

問題3:
一個機構30000臺主機,且只能申請C類地址,如何配置?

此時需要用到CIDR)無類域間路由選擇技術

CIDR(Classless Inter-Domain Routing,無類域間路由選擇)它消除了傳統的A類、B類和C類地址以及劃分子網的概念,因而可以更加有效地分配IPv4的地址空間。它可以將好幾個IP網路結合在一起,使用一種無類別的域際路由選擇演算法,使它們合併成一條路由從而較少路由表中的路由條目減輕路由器的負擔。

假設有一種情況

某單位有8個C類網路210.31.224.0/24~210.31.231.0/24,這個單位電腦比較多,要將所有網路連在一起。

如果沒有CIDR技術,路由器可能要這8個IP轉換的路由表,延遲就會比較大

CIDR聚合

關鍵為第三段
224的二進位制:1110 0000
231的二進位制:1110 0111
224~231的8個IP地址是連續的
可以發現這8個C類網路在第三段中前5位一樣,可以聚合為210.31.224.0/21將這一個存在路由表裡,前21位表示網路號,路由表的表項就減少了。

另一個例子

一個機構有500臺機器,2個C類IP:202.119.36.0和202.119.37.0,可以用路由聚合成一個超網:
220.119.36.0/23將第24個位元變為主機號

CIDR 最主要的特點

  • CIDR 消除了傳統的 A 類、B 類和 C 類地址以及劃分子網的概念,因而可以更加有效地分配 IPv4 的地址空間。
  • CIDR使用各種長度的“網路字首”(network-prefix)來代替分類地址中的網路號和子網號。
  • IP 地址從三層編址(使用子網掩碼)又回到了兩層編址。
    • CIDR 使用“斜線記法” ,它又稱為CIDR記法,即在 IP 地址後面加上一個斜線“/”,然後寫上網路字首所佔的位數(這個數值對應於三層編址中子網掩碼中 1 的個數)。
    • CIDR 把網路字首都相同的連續的 IP 地址組成“CIDR 地址塊”。

CIDR 地址塊

  • 128.14.32.0/20 表示的地址塊共有 212 個地址(因為斜線後面的 20 是網路字首的位數,所以這個地址的主機號是 12 位)。
  • 這個地址塊的起始地址是 128.14.32.0。
  • 在不需要指出地址塊的起始地址時,也可將這樣的地址塊簡稱為“/20 地址塊”。
  • 128.14.32.0/20 地址塊的最小地址:128.14.32.0
  • 128.14.32.0/20 地址塊的最大地址:128.14.47.255
  • 全 0 和全 1 的主機號地址一般不使用。

舉個栗子
128.14.32.0/20 表示的地址(2^12 個地址)
這裡寫圖片描述

路由聚合(route aggregation)

  • 一個 CIDR 地址塊可以表示很多地址,這種地址的聚合常稱為路由聚合,它使得路由表中的一個專案可以表示很多個(例如上千個)原來傳統分類地址的路由。
  • 路由聚合也稱為構成超網(supernetting)。

CIDR 地址塊劃分舉例

一個大學把c類地址分配給各個系
這裡寫圖片描述

這個 ISP (網際網路服務提供商)共有 64 個 C 類網路。如果不採用 CIDR 技術,則在與該 ISP 的路由器交換路由資訊的每一個路由器的路由表中,就需要有 64 個專案。但採用地址聚合後,只需用路由聚合後的 1 個專案 206.0.64.0/18 就能找到該 ISP。

構成超網

  • 字首長度不超過 23 位的 CIDR 地址塊都包含了多個 C 類地址。
  • 這些 C 類地址合起來就構成了超網。
  • 網路字首越短,其地址塊所包含的地址數就越多。而在三層結構的IP地址中,劃分子網是使網路字首變長。

四、CIDR與VLSM的區別:

  • CIDR是把幾個標準網絡合成一個大的網路
  • VLSM是把一個標準網路分成幾個小型網路(子網)
  • CIDR是子網掩碼往左邊移了,VLSM是子網掩碼往右邊移了