1. 程式人生 > 實用技巧 >計算機網路04-ip與子網劃分

計算機網路04-ip與子網劃分

計算機網路04

第四章 網路層

一、網路層概述

網路層的作用

網路層提供主機到主機的運輸服務,具備路由和分組轉發的功能,並使用IP地址標識網路中的節點。

在路由器中,每個路由器都有它的轉發表。路由器通過分析到達的分組資料的首部欄位,根據路由協議和路由演算法,根據鏈路層協議封裝資料幀並從對應的埠進行轉發。

當路由器轉發分組時資料長度超過鏈路層最大資料長度時進行資料分片,並在目的主機進行資料重組。

網路層主要功能

  • 轉發
    將分組從路由器的輸入埠轉移到合適的輸出埠
  • 路由選擇
    確定分組從源到目的經過的路徑的網路範圍處理過程

資料平面與控制平面

  • 資料平面
    每個路由器都具備,它決定輸入埠到來的資料報怎樣傳送到輸出埠,具有轉發功能
  • 控制平面(在第五章詳解)
    確定資料報如何在路由器之間沿著從源主機到目標主機之間的路由轉發,有傳統路由演算法SDN遠端服務實現兩種方法

二、 IPv4協議

1 · IP首部格式

  • 版本號 4位,規定你夠了資料報的IP協議版本,路由器能夠確認如何解釋IP資料報的剩餘部分
  • 首部長度 4位,用於確定IP資料報載荷
  • 服務型別 8位,指示期望獲得哪種型別的服務,只有在網路提供區分服務時使用,一般時不使用,為00H.
  • 資料報長度 16位,代表IP分組的總位元組數(首部+資料)。因此IP資料報的理論最大長度為2^15=65535位元組。
  • 標識、標示位、片偏移 與IP分片有關
  • 生存時間 8位,IP分組在網路中可以通過的路由器數。每路由器轉發一次,TTL減一。
  • 協議 8位,指示了IP資料報的資料部分應該給哪個特定的運輸層協議
  • 首部檢驗和 16位,用於幫助路由器檢測收到的IP資料報中的位元錯誤
  • 源IP地址、目的IP地址 32位
  • 選項 攜帶安全、源 選路徑、時間戳和路由記錄等內容。不經常被使用
  • 資料包含要交付給目的地的運輸層報文段(TCP或者UDP),也可以承載其他型別的資料(如ICMP)

2 · 分片與重組

一個鏈路層幀能夠承受的最大資料量叫做最大傳送單元。而當IP分組過大的時候,就需要將IP資料報中的資料 分片 成多個較小的IP資料報,用單獨的鏈路層幀封裝傳送。
其中,標識、標誌位與片偏移規定了哪些資料報是同一較大的資料報片,並規定了該資料報片實際上是源IP資料報的哪個位置。這些資料報片將在端系統接收時進行 重組

在分片的時候規劃:

  • 標識 IP協議利用一個計數器,每產生IP分組計數器加1,作為該IP分組的標識
  • 標誌位 3位,包含DF與MF.DF =1:禁止分片;DF =0:允許分片。MF =1:非最後一片;MF =0:最後一片(或未分片)
  • 片偏移 佔13位,以8位元組為單位,表示一個IP分組分片封裝原IP分組資料的 相對偏移量

資料報分片計算方法:
Q:一資料報的總長度為 3820 位元組,其資料部分的長度為 3800 位元組(使用固定首部),需要分片為長度不超過 1420 位元組的資料報片,該如何劃分?

A:

總長度 標識 MF DF 片偏移
原始資料報 3820 12345 0 0 0
資料報片1 1420 12345 1 0 0
資料報片2 1420 12345 1 0 175
資料報片3 1020 12345 0 0 350

3 · 可變長度子網劃分計算方法

什麼是IP
ip地址佔據32位元(IPv4),是編號標識主機、路由器的介面,而一個IP地址中也可以劃分出網路號與主機號。
劃分IP子網的依據是IP地址具有相同網路號的裝置介面,不跨越路由器中可以彼此物理聯通的介面。

傳統的IP地址可以劃分為ABC、EF五類,其中ABC三類為私有ip地址:

  • A類地址ip範圍為0.0.0.0~127.255.255.255。其網路號為8位,主機號為24位。預設子網掩碼為:255.0.0.0
  • B類地址ip範圍為128.0.0.0~191.255.255.255。其網路號與主機號都為16位。預設子網掩碼為:255.255.0.0
  • C類地址ip範圍為192.0.0.0~223.255.255.255。其網路號為24位,主機號為8位。預設子網掩碼為:255.255.255
  • D類地址ip範圍為224.0.0.0~239.255.255.255
  • E類地址ip範圍為240.0.0.0~255.255.255.255

什麼是CIDR
Classless InterDomain Routing,消除傳統的 A 類、B 類和 C 類地址界限,融合子網地址與子網掩碼,方便子網劃分。
無類地址格式:a.b.c.d/x,其中x為字首長度。它將將多個子網聚合為一個較大的子網,實現了路由聚合。
有類路由協議 中不支援全0子網與全1子網,但cidr無類路由協議中是支援的。

那麼如何將一個c類ip地址劃分出更小的子網範圍呢?

Q: 企業申請到一個C類IP地址200.1.1.0/24,其中網段1需要80主機 IP 地址,網段2需要28主機IP地址,網段3需要26主機IP地址,網段4需要10主機地址。
A:
(按照有類路由協議劃分:)

  • 對於網段1來說能容納80臺主機ip的最小的子網規模為128,即2^7。
    那麼要求主機位得有7位才能表示128臺主機號,25位網路位。因此在c類預設24位網路位8位主機位的基礎上需要借用一個主機位,所以子網路為200.1.1.0/25開始,子網掩碼也為25位。
    c類預設掩碼 255.255.255.0 轉為二進位制 11111111 11111111 11111111 00000000在原來24位1基礎上加一位變為11111111 11111111 11111111 10000000,即255.255.255.128。
    網段1的子網ip範圍: 200.1.1.1~200.1.1.126,廣播地址200.1.1.127。
  • 對於網段2需要28,能容納的最小的子網規模為32主機IP地址,即2^5
    那麼就要5位表示主機位,32-5=27位網路位。因此要借用3個主機位,ip開始子網路地址在網段1的基礎上,為200.1.1.128/27,範圍為200.1.1.129~200.1.1.158廣播地址200.1.1.159。子網掩碼27位,在原來25基礎上加兩位變為11111111 11111111 11111111 11100000,即255.255.255. 224
  • 對於網段3需要26,能容納的最小的子網規模為32主機IP地址,同樣要5位表示主機位,27位網路位。
    在網段2的基礎上,同上分析網段3子網位為200.1.1.160/27,範圍為200.1.1.161~200.1.1.190廣播地址200.1.1.191。子網掩碼由於其借位數依舊是27不變,所以依舊為255.255.255.224
  • 對於網段4 需要10,能容納的最小子網規模為16,即2^4,要4位表示主機位,28位網路位。
    在網段3的基礎上,網段4的子網位為200.1.1.192/28,範圍為200.1.1.193~200.1.1.206廣播地址200.1.1.207。子網掩碼28位,在原來27基礎上加兩位變為了 255.255.255. 240,即11111111 11111111 11111111 11110000。