1. 程式人生 > >IP地址的規劃和設計方法(一)

IP地址的規劃和設計方法(一)

        一,IP地址的概念和劃分地址新技術的研究

        (1)標準分類的IP地址

        第一階段是在IPv4協議制定的初期,時間大致在1981年左右。那時候網路的規模比較小,使用者一般是通過終端,

經過大型計算機或中小型計算機接入ARPANET。

        IP地址是由網路號與主機號組成的,長度是32bit,用點分十進位制方法表示,這樣就構成了標準分類的IP地址。常

用的A類、B類、C類IP地址採用包括“網路號-主機號”的兩層結構層次(RFC1812)。A類地址的網路號長度是7bit,

實際允許分配A類地址的網路只能有126個。B類地址的網路號長度是14bit,因此允許被分配B類地址的只能有16384

個。

        (2)劃分子網的三級地址結構

         第二階段是在標準分類的IP地址基礎上,增加子網號的三級地址機構。 

        人們認為A類與B類IP地址設計不合理,對IP地址的匱乏表示強烈的擔憂。1991年研究人員提出了子網subnet和

掩碼mask的概念。構成子網就是將一個大的網路劃分成幾個較小的子網路,將傳統的“網路號-主機號”的兩級結構,

變為“網路號-子網號-主機號”的三級結構。

         (3)構成超網的無類域間路由(CIDR)技術 

        第三個階段是1993年提出了無類域間路由(ClasslessInterDomainRouting,CIDR)技術(RFC1519)

        無類域間路由的出現是希望解決Internet擴充套件中存在的兩個問題:

        a)32位IP地址空間可能在第40億臺主機接入Internet前就耗盡。

        b)隨著越來越多的網路地址出現,主幹網的路由表增大,路由器負荷增加,服務質量下降。

        無類域間路由CIDR技術也被稱為超網技術。構成超網的目的是將現有的IP地址合併成較大的、具有更多主機地

址的路由域。例如,可以將一個組織所屬的C類網絡合併到一個更多的地址範圍的大的路由域中。

       (4)網路地址轉換(NAT)技術

       第四個階段是1996年提出的網路地址轉換(NAT)技術(RFC2993、RFC3022)。

       網路地址轉換設計的基本思路:為每一個公司分配一個或少量的IP地址,用於傳輸Internet的流量。在公司內部的

每一臺主機分配一個不能夠在Internet上使用的保留的專用IP地址(RFC1918)。

       專用IP地址是Internet管理機構預留的,任何組織使用都不需要向Internet管理機構申請,所以網路管理人員都應

該知道這些地址是為專用網路內部使用的。這類地址在專用網路內部中是唯一的,但是在Internet中並不是唯一的。

       專用IP地址用於內部網路的通訊,如果需要訪問外部Internet主機,必須由執行網路地址轉換的主機或路由器將內

部的專用IP地址轉換成全域性IP地址。

        二,標準分類的IP地址

        IPv4的地址長度為32bit,用點分十進位制(dotteddecimal)表示。通常採用x.x.x.x的方式來表示,每個x為8bit,每

個x的值為0~255,例如,202.113.29.119。

        標準分類的IP地址:


        (1)A類地址

        A類地址網格號(netID)的第一位為0,其餘的各位可以分配。因此A類地址共被分為大小相同的128塊,每一塊的

netID不同。

        第一塊覆蓋的地址為:0.0.0.0~0.255.255.255(netID=0)

        第二塊覆蓋的地址為:1.0.0.0~0.255.255.255(netID=1)

        ……

        最後一塊覆蓋的地址為:127.0.0.0~0.255.255.255(netID=127)

        但是,第一塊和最後一塊地址留作特殊用途,另外netID=10的10.0.0.0~10.255.255.255用於專用地址,其餘的

125塊可指派給一些機構。因此能夠得到A類地址的機構只有125個。每一個A類網路可以分配的主機號hostID可以是2

的24方-2=16777214個,主機號為全0和全1的兩個地址保留用於特殊目的。

        (2)B類地址

        B類地址的網路號長度為14位,網路號總數為16384。B類地址的主機號長度為為16位,因此每個B類網路可以有

2的16次方=65536個主機號。但是,主機號為全0和全1的兩個地址保留用於特殊目的,因此實際上一個B類IP地址允

許分配的主機號位65534個。

        (3)C類地址

        C類IP地址網路號長度為21位,主機號長度為8位。因為網路號長度為21位,因此允許有2的21次方=2097152個

不同的C類網路。由於主機號長度為8位,因此每個C類網路的主機號數最多為2的8、次方=256個。同樣,主機號為全

0和全1的兩個地址保留用於特殊目的,因此實際上一個C類IP地址允許分配的主機號為254個。

       (4)特殊地址形式

       特殊的IP地址包括:直接廣播(directedbroadcasting)地址、受限廣播(limitedbroadcasting)地址、“這個網路

上的特定主機”地址和回送地址(loopbackaddress)。

       a)直接廣播地址

       在A類、B類、C類IP地址中,如果主機號是全1(二進位制),那麼這個主機號為直接廣播地址,它是用來使路由器將

一個分組以廣播方式傳送給特定網路上的所有主機。例如,主機要以廣播方式傳送一個分組給特定網路(網路地址為

201.161.20.0)上的所有主機,那麼需要使用直接廣播地址,這個直接廣播地址為201.161.20.255。

        b)受限廣播地址

        2位(網路位和主機位)全為1的廣播地址(255.255.255.255)為受限廣播地址,用來將一個分組以廣播方式傳送

 給本網路中的所有主機。路由器則阻擋該分組通過,將其廣播功能限制在本網內部。

        c)“這個網路上的特定主機地址”

        當一個主機或一個路由器向本網路的某個特定的主機發送一個分組,那麼它就需要使用“這個網路上的特定主

機”地址。“這個網路上的特定主機”的網路號位全0(二進位制),主機號為確定的值。這樣的分組被限定在本網內部,由主

機號對應的主機接收。例如,主機要向本網路中的某個主機(IP地址為201.161.20.18)傳送一個分組,那麼需要使

用“這個網路上是特定主機地址”,這個地址為0.0.0.18。

       d)回送地址

       A類地址中的127.0.0.0是回送地址,它是一個保留地址。回送地址是用於網路軟體測試和本地程序間通訊

      TCP/IP協議規定:含網路號為127的分組不能出現在如何網路上;主機和路由器不能為該地址廣播任何定址信

息。“Ping”應用程式可以傳送一個將回送地址作為目的地址的分組,以測試IP軟體是否接收或傳送一個分組。一個客

戶程序可以使用回送地址來發送一個分組給本機的另一個程序,用來測試本地程序之間的通訊情況。

        三,劃分子網的三級網路結構

        (1)子網的基本概

        標準分類的IP地址存在著兩個主要的問題:IP地址的有效利用率問題和路由器的工作效率問題。為了解決這個問

題,人們提出了子網(subnet)的概念。RFC940對子網的概念和劃分子網的標準做出了說明。

      提出子網概念的基本思路是:允許將網路劃分成多個部分供內部使用,但是對於外部網路,仍然像一個網路一樣。

       子網的劃分有利於優化網路效能,改善網路管理。

       (2)劃分子網的地址結構

       IP地址是層次型結構的,它的長度是32位。標準的A類、B類、C類IP地址是包括網路號(netID)與主機號

(hostID)的兩層層次結構。劃分子網技術的要點是:

        a)三級層次是IP地址:netID——subnetID——hostID;

        b)同一個子網中所有主機必須使用相同的子網號subnetID 

        c)子網的概念可以應用於A類、B類、C類中任意一類的IP地址中;

        d)子網之間的距離必須很近;

        e)分配子網是一個組織和單位內部的事,它既不要向ICANN申請,也不需要改變任何外部

的資料庫;

        f)在Internet的文獻中,一個子網也稱為一個IP網路或一個網路。

        (3)子網掩碼的概念

        當三級層次的IP地址提出後,一個很現實的問題是:如何從一個IP地址中提取出子網號。

       人們提出了子網掩碼或掩碼的概念。子網掩碼有時叫做子網遮蔽碼。掩碼的概念同樣適用於沒有進行子網劃分的

A類、B類、C類地址。

        A類,B類和C類地址掩碼:


       如果路由器處理的是一個標準的IP地址,那麼它只要判斷IP地址的前兩位值,如果是10,那它肯定是一個B類地

址。B類地址的網路號長度為16位,那麼該IP地址的前16表示的是網路號,後16位表示的是主機號。如果路由器在處

理劃分子網之後的三層結構IP地址時,需要給它IP地址和子網掩碼。它需要通過標準地址的前三位判斷該地址的A類、

B類或C類地址,同時根據子網掩碼判斷出子網號。標準的B類地址的16位的網路號是不變的,如果需要劃分出64個子

網,那麼就可以借用原16位主機號的6位,該子網的主機號就變成了10位。子網掩碼用點分十進位制表示為

255.255.252.0,另一種表示方法是用“/”加上網路號+子網號的長度,即“網路號/22”表示。

        在某種情況下,在子網劃分時子網號長度可以是不同的。IP地址協議允許使用變長子網的劃分。

        子網號為7的子網掩碼:


        四,無類域間路由(CIDR)技術

        (1)無類域間路由技術的基本概念

        從無類域間路由的命名就可以看出,CIDR的研究思路是:將剩餘的IP地址不是按照標準的地址分類規則分配,

而是以可變大型的塊方法進行分配。ISP、大學、機關與公司在確定IP地址結構時,不是限制於標準分類的IP地址結

構,而是根據對IP地址管理和路由器的需要來靈活地決定。無類域間路由技術的特點主要有以下兩點:

        a)CIDR使用區別於傳統標準分類的IP地址和劃分子網概念的“網路字首

(network-prefix)”,代替“網路號+主機號”,形成新的無分類的二級地址結構,即IP地址表示為<網路字首>,<主機號>。

        b)CIDR將網路字首相同的連續的IP地址組成一個“CIDR地址塊”。

        一個CIDR地址塊是由塊起始地址和塊地址數來表示的。地址塊的起始地址是指地址塊中地址數值最小的一個。

例如,當200.16.23.0/20表示的是一個地址塊時,它的起始地址是200.16.23.0,地址塊中的地址數是2的12次方。因

為在這個地址塊中,網路字首表示對應20位的網路號是確定的,可以由獲得這個地址塊的機構分配的主機數有2的12

次方個,也就是說這個機構可以分配的地址數有2的12次方個。

        (2)在A類、B類和C類IP地址中,如果主機號為全1,那麼這個地址為廣播地址。在無類域間路由中,廣播地址也

採用相同的原則。例如網路156.25.0.0/16中的廣播地址應該是將16位的主機號置1,即156.25.255.255;網路

156.25.0.0/24的廣播地址應該是將8位的主機號置1,即156.25.0.255;網路156.25.0.0/28的廣播地址是將4位的主機

號置1,即156.25.0.15;網路195.1.22.64/27的廣播地址具有考慮5位的主機號置1。由於64的二進位制數為01000000,

後5位的主機號置1之後為01011111(為十進位制位95),那麼網路195.1.22.64/27的廣播地址為195.1.22.95。

       (3)網路字首越短,其地址塊所包含的地址數越多。

       (4)CIDR地址規劃方法示例:


       五,專用IP地址和內部網路地址劃分方法

       (1)全域性IP地址與專用IP地址

        RFC1518對A類、B類、C類地址中全域性IP地址和專用IP地址的範圍做出了規定。全域性IP地址與專用IP地址的區別

主要表現在以下幾點:

        a)使用IP地址的網路可以分為兩種情況:一種是要將網路之間連到Internet;另一種是也需要執行TCP/IP協議,

但是它是內部網路,並不直接連線到Internet,但網路內部使用者訪問Internet是受到嚴格控制的。

        b)使用全域性IP地址是需要申請的,而專用IP地址是不需要申請的。

        預留地址如表3-2所示:


        c)全域性IP地址必須保證在Internet上是唯一的;專用IP地址在某一個網路內部是唯一的,但是在Internet中並不是

唯一的。IPv4為內部網路預留的專用IP地址有三組。第一組是A類地址的一個地址塊,這個地址中的地址空間為

10.0.0.0~10.255.255.255;第二組是B類地址的16個地址塊(172.16~172.31);第三組是C類地址的256個地址塊

(192.168.0~192.168.255)

        (2)NAT方法的侷限性

        a)NAT違反了IP地址結構模型的設計原則。IP地址結構模型的基礎是每個IP地址均標識了一個網路的連線。

Internet的軟體設計就是建立在這個前提之上的,而NAT使得有很多主機可能在使用相同的IP地址,如10.0.0.1。

        b)NAT使得IP協議從面向無連線變成了面向連線。NAT必須維護專用IP地址與公用IP地址以及埠號的對映關

系。在TCP/IP協議體系中,如果一個路由器出現故障,不會影響TCP/IP協議的執行。因為只有幾秒鐘收不到應答,

傳送程序就會進入超時重傳處理。而當存在NAT時,最初設計的TCP/IP協議將發生變化,Internet可能變得非常脆

弱。

        c)NAT違反了基本的網路分層結構模型的設計原則。因為在傳統的網路分層結構模型中,第N層是不能夠修改第

N+1層的報頭內容的。NAT破壞了這個這種各層獨立的原則。

        d)有些應用是將IP地址插入到正文的內容中,例如標準的FTP協議與IPPhone協議H.323。如果NAT與這一類協議

一起工作,那麼NAT協議一定需要做適當的修正。同時,網路的傳輸層也可能使用TCP與UDP協議之外的其他協議,

那麼NAT協議必須知道並且做相應的修改。由於NAT的存在,使得P2P應用實現出現困難,因為P2P的檔案共享與語

言共享都是建立在IP協議的基礎上的。

        e)NAT同時存在對高層協議和安全性的影響問題。RFC2993對NAT存在的問題進行了討論。NAT的反對者認為這

種臨時性的緩解IP地址短缺的方案推遲了IPv6的遷移的程序,而並沒有解決深層次問題,他們認為是不可取的。