划分子網和構造超網


  前面我們介紹了子網划分方式,這種方式有着訪問IP地址方便的優點,但是,隨着互聯網主機的增加,缺點也越來越明顯,那就是有些網絡給了A類的IP地址,但是它的主機數量不多,IP地址存在很大的浪費,我們應該怎樣去解決這個問題呢???

1、划分子網:

  就是在原來網絡的基礎上,再對其進行划分,就像我們先把蛋糕分成兩塊,再把兩個半塊蛋糕再進行划分,就是這樣子的。

  在互聯網上就是對其二類地址內部再一次進行划分,二類地址中網絡號是16位,主機號16位,划分子網后,網絡號可能變成20位,主機號變成12位,總的沒有變,只是部分變了,划分子網后,網絡外部來看,沒有什么差別,只是在網絡內部,進行傳輸分組的時候,有一些變化,因為我們划分了子網,雖然整體網絡的網絡號沒變,但是網絡內部的子網的網絡號發生了變化,所以我們在傳輸分組的時候,需要用子網掩碼來確定子網的網絡號。

2、子網掩碼:

  (1)由於IP數據報的首部無法看出源主機或目的主機所連接的網絡是否進行了子網的划分,IP數據包的首部沒有包含任何關於子網划分的信息;使用子網掩碼,路由器可以轉發IP數據報到相應的子網中去;

  (2)子網掩碼是路由器用來查找目的主機所在的子網的IP地址的;

  (3)路由器把三級IP地址的子網掩碼和收到的數據報的目的IP地址逐位相“與”(AND),得出所要求的子網的網絡地址;

  (4)不管網絡有沒有划分子網,只要把子網掩碼和IP地址進行逐位的“與”運算,就立即得到網絡地址來;

  (5)因特網的標准規定:所有的網絡都必須使用子網掩碼,同時在路由器的路由表中也必須有子網掩碼這一欄;如果一個網絡不划分子網,那么該網絡的子網掩碼就使用默認子網掩碼;

  (6)默認子網掩碼:

  A類地址的默認子網掩碼:255.0.0.0

  B類地址的默認子網掩碼:255.255.0.0

  C類地址的默認子網掩碼:255.255.255.0(默認的子網掩碼與網絡號相與之后,網絡號沒有發生變化)

  (7)子網掩碼是一個網絡或一個子網的重要屬性:路由器和相鄰路由器交換路由信息時,必須把自己所在網絡(或子網)的子網掩碼告訴相鄰路由器;

  (8)采用固定長度子網時,所划分的所有子網的子網掩碼都是相同的;

  (9)子網數是根據子網號subnet-id計算出來的,若subnet-id有N位,則共有2的N次方種可能的排序;除去全0和全1這兩種情況,就得出表中的子網數;

  (10)若使用較少位數的子網號,則每一個子網上可連接的主機數就較多;若使用較多位數的子網號,則子網的數目較多但每個子網上可連接的主機數就較少;

  (11)划分子網增加了靈活性,但卻減少了能夠連接在網絡上的主機總數;

  (12)同樣的IP地址和不同的子網掩碼可以得出相同的網絡地址,但是,不同的掩碼的效果是不同的;子網號和主機號不同的划分方法,可划分的子網數和每一個子網中的最大主機數都是不同的;

 

3、使用子網時分組的轉發:

路由表必須包含以下三項內容:目的網絡地址,子網掩碼和下一跳地址;

划分子網后,分組轉發的算法:

  (1)從收到的數據報的首部提取目的IP地址D;

  (2)先判斷是否為直接交付,對路由器直接連接的網絡逐個進行檢查:用各網段的子網掩碼和D逐位相“與”(AND)操作,看結果是否和相應的網絡地址匹配;若匹配,則把分組進行直接交付(當然還需要把D轉換為物理地址,把數據報封裝在MAC幀中發送出去),轉發任務結束;否則就是間接交付,執行(3);

  (3)若路由表中有目的地址為D的特定主機路由,則把數據報傳送給路由器中所指明的下一跳路由器;否則,執行(4);

  (4)對路由表中的每一行(目的網絡地址,子網掩碼,下一跳地址),用其中的子網掩碼和D逐位相“與”(AND操作),其結果為N;若N與該行的目的網絡地址匹配,則把數據報傳送給該行指明的下一跳路由器;否則,執行(5);

  (5)若路由表中有一個默認路由,則把數據報傳送給路由表中所指明的默認路由器;否則,執行(6);

  (6)報告轉發分組出錯;

 另外一種解決網絡IP地址浪費的方法就是構建超網(CIDR)(網絡名詞學起來好煩人)

4、無分類編址CIDR(構成超網):

  (1)我們知道,在地址分類的方法里面,不管哪一類地址,網絡號和主機號所占的長度都是固定不變的,只要你確定了這個網絡號,那就是固定長度的,這樣用起來就很不靈活,而且也直接導致了IP地址資源的浪費,因此,偉大的工程師們又提出了構建超網的算法:

  這種方法的網絡號和主機號所占的長度是可變的。

  (2)具體記法:“斜線記法”或稱“CIDR記法”,即在IP地址后面加上斜線“/”,然后寫上網絡前綴所占的位數;128.14.35.7/24

  CIDR把網絡前綴都相同的連續IP地址組成一個“CIDR地址塊”,我們只要知道CIDR地址塊中的任何一個地址,就可以知道這個地址塊的起始地址(即最小地址)和最大地址,以及地址塊中的地址數;

  (3)CIDR使用32位的地址掩碼,地址掩碼有一串1和一串0組成,而1的個數就是網絡前綴的長度;斜線記法中,斜線后面的數字就是地址掩碼中1的個數;

  (4)斜線記法除了可以表示IP地址外,還可以表示這個地址的網絡前綴有幾位,剩下的就是主機位;通過簡單的計算,還可以得出這個地址塊中的最下地址和最大地址;

  (5)路由聚合:一個CIDR地址塊中很多地址,在路由表中利用CIDR地址塊來查找目的網絡;路由聚合也稱為構造超網

  (6)CIDR記法有很多種形式:10.0.0.0/10可簡寫為:10/10;在網絡前綴的后面加一個星號*:00001010  00*,*號表示IP地址中的主機號;

  (7)構成超網的方法:就是將網絡前綴縮短。網絡前綴越短,其地址塊所包含的地址數就越多;

  (8)最長前綴匹配:

  路由表中每個項目由“網絡前綴”和“下一跳地址”組成,但是在查找路由表時,可能會得到不止一個匹配結果;

  應當從匹配結果中選擇具有最長網絡前綴的路由;這叫做最長前綴匹配,這是因為網絡前綴越長,其地址塊就越小,因而路由就越具體;

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM