無類別域間路由

無類別域間路由是一個用於給使用者分配IP地址以及在網際網路上有效地路由IP資料包的對IP地址進行歸類的方法。在域名系統出現之後的第一個十年裡，基於分類網路進行地址分配和路由IP資料包的設計就已明顯顯得可擴充性不足。為了解決這個問題，網際網路工程工作小組在1993年釋出了一新系列的標準——RFC 1518和RFC 1519——以定義新的分配IP地址塊和路由IPv4資料包的方法。一個IP地址包含兩部分：標識網路的字首和緊接著的在這個網路內的主機地址。在之前的分類網路中，IP地址的分配把IP地址的32位按每8位為一段分開。這使得字首必須為8，16或者24位。因此，可分配的最小的地址塊有256因在地域上分得很開而很難進行聚合路由，於是給路由裝置增加了很多負擔。無類別域間路由是基於可變長子網掩碼中有關於可變長子網掩碼的說明。CIDR包括：因為在IPv6中也使用了IPv4的用字尾指示字首長度的CIDR，所以IPv4中的"分類"在IPv6中已不再使用。CIDR塊.CIDR主要是一個按位的、基於字首的，用於解釋IP地址的標準。它透過把多個地址塊組合到一個路由表表項而使得路由更加方便。這些地址塊叫做CIDR地址塊。當用二進位制表示這些地址時，它們有著在開頭部分的一系列相同的位。IPv4的CIDR地址塊的表示方法和IPv4地址的表示方法是相似的：由四部分組成的點分十進位制地址，後跟一個斜線，最後是範圍在0到32之間的一個數字："A.B.C.D/N"。點分十進位制的部分和IPv4地址一樣是一個被分成四個八位位組的32位二進位制數。斜線後面的數字就是字首長度，也就是從左到右，被地址塊裡的地址所共享的位的數目。當只需說明大概時，十進位制部分有時會被省略，因此，"/20"就表示一個字首長度是20的CIDR地址塊。如果一個IP地址的前N位與一個CIDR地址塊的字首是相同的話，那麼就說這個地址屬於這個CIDR地址塊，也可以說是與CIDR地址塊的字首匹配。所以，要理解CIDR，就要把地址寫成二進位制的形式。因為IPv4地址的長度總是32位，N位長的CIDR字首就意味著地址裡前N位匹配，後formula_1位不匹配。這些位有formula_2種不同的組合，即formula_2個IPv4地址與CIDR地址塊的字首匹配。字首越短就能匹配越多的地址，越長就匹配得越少。一個地址可能與多個長度不同的CIDR字首匹配。CIDR也用在IPv6中。因為位數的非常多，所以在IPv6中，字首長度的範圍是從0到128。這裡也用同樣的方法來表示一個地址：字首寫作一個IPv6的地址，後跟一個斜線，最後是字首的位數。CIDR塊的分配.網際網路地址指派機構一般會從RIR申請CIDR地址塊，然後再向根據它們客戶的網路大小而分配更小的地址塊。網際網路工程工作小組鼓勵由單一ISP服務的網路直接向ISP申請地址。而由多個ISP提供服務的，則經常會向適當的RIR申請獨立的CIDR地址塊。例如，在90年代末，IP地址"208.130.29.33"是被www.freesoft.org 分配給了。MCI又將"208.130.28.0/22"分配給了從MCI租用網際網路連線的Automation Research Systems。ARS則用了"208.130.29.0/24"這個地址塊，其中就包含"208.130.29.33"這個地址。這些CIDR字首會在不同的地方使用。在MCI的網路之外，"208.128.0.0/11"這個字首會用於路由MCI的資料流。這些資料流不僅會去到"208.130.29.33"，也會去到其他那些前11位相同的近兩百萬的地址裡。在MCI的網路裡，"208.130.28.0/22"則會被用於路由到屬於ARS租用的連線。最後，只有在ARS自己的網路內"208.130.29.0/24"這個字首才會被使用。CIDR和掩碼.子網掩碼是一種把字首編成一種與IP地址相似的形式的掩碼。一個子網掩碼一共有32位，被分為連續的兩部分，高位部分的每一位都被設為二進位制的1，其餘部分的每一位均被設為二進位制的0。其中為1的位的數目和字首的長度相同。它也被寫成點分十進位制的形式。子網掩碼的作用和字首一樣，但是掩碼這種形式出現得比字首要早。CIDR用可變長子網掩碼，根據各人需要來分配IP地址，而不是按照一個全網路約定的規則。所以，網路/主機的劃分可以在地址內的任意位置進行。這個劃分可以是遞迴進行的，即透過增加掩碼位數，來使一部分地址被繼續分為更小的部分。整個網際網路現在都在使用CIDR/VLSM網路地址。除此之外，CIDR也應用在其他方面，尤其是大型私人網路。#重定向字首聚合.CIDR的另一個好處就是可以進行字首路由聚合。例如，16個原來的C類。兩個對齊的/20網路又可進一步聚合為/19，依此類推。這有效地減少了要對外顯示的網路數，防止了路由表爆炸，也遏制了網際網路進一步擴大。通常來說，子網中的第一個地址必須透過明確的路由規則訪問，因為在這種網路中沒有閘道器的空間。在大於"/31"或"/32"的路由子網中，可用主機地址的數目通常減少兩個，即保留作為廣播地址的最大地址和標識網路本身的最小地址。IPv6的CIDR塊.IPv6中使用的地址大小允許在每個站點實現全球路由摘要並能保證足夠的地址池。IPv6網路的標準子網大小是一個"/64"塊，這是執行靜態地址的自動配置所必需的。最初，IETF在RFC 中提出建議，所有終端站點都應得到一個"/48"地址分配。但對實際需要和做法的批評和重新評價導致在RFC 中提出了更靈活的分配建議，即建議一些站點的分配要小得多，例如用於家庭網路的"/56"塊。不同型別的網路線路可能需要不同的子網大小。子網掩碼將網路識別符號字首的位數與介面識別符號的位數分開。如果選擇較小的字首，所覆蓋的網路數量就會減少，但每個網路中的地址會變的更多。2001:0db8:0123:4567:89ab:cdef:1234:5678|||| |||| |||| |||| |||| |||| |||| |||128 單埠和迴環|||| |||| |||| |||| |||| |||| |||| |||127 路由器間點對點連結|||| |||| |||| |||| |||| |||| |||| ||124|||| |||| |||| |||| |||| |||| |||| |120|||| |||| |||| |||| |||| |||| |||| 116|||| |||| |||| |||| |||| |||| |||112|||| |||| |||| |||| |||| |||| ||108|||| |||| |||| |||| |||| |||| |104|||| |||| |||| |||| |||| |||| 100|||| |||| |||| |||| |||| |||96|||| |||| |||| |||| |||| ||92|||| |||| |||| |||| |||| |88|||| |||| |||| |||| |||| 84|||| |||| |||| |||| |||80|||| |||| |||| |||| ||76|||| |||| |||| |||| |72|||| |||| |||| |||| 68|||| |||| |||| |||64 單個LAN；SLAAC的預設字首大小|||| |||| |||| ||60 非常有限的第6次部署(/60 = 16 /64塊)|||| |||| |||| |56 最小的埠分配：例如家庭網路(/56 = 256 /64塊)|||| |||| |||| 52 /52 = 4096 /64塊|||| |||| |||48 大型地址分配池的典型分配(/48 =65536 /64塊)|||| |||| ||44|||| |||| |40|||| |||| 36 未來可能的本地網際網路註冊的 (LIR) 超小分配|||| |||32 LIR最小分配|||| ||28 LTR典型分配|||| |24 LTR大型分配|||| 20 LTR額外分配|||16||12 IANA額外分配給區域因特網登記冊表|84歷史背景.IP地址最初被描述為包含兩部分：網路地址和主機地址。這種區分在IP網路裡的路由中使用。在歷史上，IP地址空間被分為三個分類網路，這些類別有著固定長度的網路地址。網路的類別，以及網路地址，還有該網路上的主機數目都可以從地址的最高位得出。因為分類路由協議不指定子網的掩碼或字首長度，路由器必須使用路由通告中的地址類別去得出子網掩碼以建立路由表。隨著原為實驗性的TCP/IP網路在80年代轉變為網際網路，對更靈活的定址方法的需求日益迫切。這就導致了子網和CIDR的相繼發展。因為原來的類別已被忽略，所以現在的系統被叫做無類別路由。它為當今的路由協議所支援，例如，RIP-2，EIGRP，IS-IS和OSPF等，而相對的，原來的系統被叫做分類路由。可變長子網掩碼和CIDR是相同的概念，不過一般只在歷史上使用。它在RFC 950中首次被提及。