WIKI使用導(dǎo)航
站長百科導(dǎo)航
站長專題
- 網(wǎng)站推廣
- 網(wǎng)站程序
- 網(wǎng)站賺錢
- 虛擬主機
- cPanel
- 網(wǎng)址導(dǎo)航專題
- 云計算
- 微博營銷
- 虛擬主機管理系統(tǒng)
- 開放平臺
- WIKI程序與應(yīng)用
- 美國十大主機
IPV4
IPv4,是互聯(lián)網(wǎng)協(xié)議(Internet Protocol,IP)的第四版,也是第一個被廣泛使用,構(gòu)成現(xiàn)今互聯(lián)網(wǎng)技術(shù)的基石的協(xié)議。1981年 Jon Postel 在RFC791中定義了IP。
地址格式[ ]
IPv4使用32位地址,因此最多可能有4,294,967,296(=232)個地址。一般的書寫法為4個用小數(shù)點分開的十進制數(shù)。也有人把4個位元組的數(shù)字化成一個巨型整數(shù),但這種標(biāo)示法并不常見。另一方面,目前還并非很流行的IPv6使用的128位地址所采用的位址記數(shù)法,在IPv4也有人用,但使用范圍更少。
過去IANA把IP地址分為A,B,C,D 4類,把32位的地址分為兩個部分:前面的部分代表網(wǎng)絡(luò)地址,由IANA分配,后面部分代表局域網(wǎng)地址。如在C類網(wǎng)絡(luò)中,前24位為網(wǎng)絡(luò)地址,后8位為局域網(wǎng)地址,可提供254個設(shè)備地址(因為有兩個地址不能為網(wǎng)絡(luò)設(shè)備使用:255為廣播地址,0代表此網(wǎng)絡(luò)本身)。網(wǎng)絡(luò)掩碼(Netmask) 限制了網(wǎng)絡(luò)的范圍,1代表網(wǎng)絡(luò)部分,0代表設(shè)備地址部分,例如C類地址常用的網(wǎng)絡(luò)掩碼為255.255.255.0。
但由于這種分類法會大量浪費網(wǎng)路上的可用空間,所以新的方法不再作這種區(qū)分,而是把用者需要用的位址空間,以2的乘冪方式來撥與。例如,某一網(wǎng)路只要13個ip位址,就會把一個 16位址的區(qū)段給他。假設(shè)批核了 61.135.136.128/28 的話,就表示從 61.135.136.129 到 61.135.136.142 的網(wǎng)址他都可以使用。
一些特別的IP地址段:
- 127.x.x.x給本機地址使用。
- 224.x.x.x為多播地址段。
- 255.255.255.255為通用的廣播地址。
- 10.x.x.x,172.16.x.x和192.168.x.x供本地網(wǎng)使用,這些網(wǎng)絡(luò)連到互連網(wǎng)上需要對這些本地網(wǎng)地址進行轉(zhuǎn)換(NAT)
IP包長[ ]
IP包由首部(header)和實際的數(shù)據(jù)部分組成。數(shù)據(jù)部分一般用來傳送其它的協(xié)議,如TCP,UDP,ICMP等。數(shù)據(jù)部分最長可為65515字節(jié)(Byte)(=216 - 1 - 最短首部長度20字節(jié))。一般而言,低層(鏈路層)的特性會限制能支持的IP包長。例如以太網(wǎng)(Ethernet)協(xié)議,有一個協(xié)議參數(shù),即所謂的最大傳輸單元(Maximum Transfer Unit, MTU) ,為1518字節(jié),以太網(wǎng)的幀首部使用18字節(jié),剩給整個IP包(首部+數(shù)據(jù)部分)的只有1500字節(jié)。
還有一些底層網(wǎng)絡(luò)只能支持更短的包長。這種情況下,IP協(xié)議提供一個分割(fragment)的可選功能。長的IP包會被分割成許多短的IP包,每一個包中攜帶一個標(biāo)志(Fragmentid)。發(fā)送方(比如一個路由器)將長IP包分割,一個一個發(fā)送,接送方(如另一個路由器)按照相應(yīng)的IP地址和分割標(biāo)志將這些短IP包再組裝還原成原來的長IP包。
特殊IP[ ]
- 127.x.x.x給本地網(wǎng)地址使用。
- 224.x.x.x為多播地址段。
- 255.255.255.255為通用的廣播地址。
- 10.x.x.x,172.16.x.x至172.31.x.x 和192.168.x.x供本地網(wǎng)使用,這些網(wǎng)絡(luò)連到互連網(wǎng)上需要對這些本地網(wǎng)地址進行轉(zhuǎn)換(NAT)。 但由于這種分類法會大量浪費網(wǎng)路上的可用空間,所以新的方法不再作這種區(qū)分,而是把用者需要用的位址空間,以2的乘冪方式來撥與。例如,某一網(wǎng)路只要13個ip位址,就會把一個16位址的區(qū)段給他。假設(shè)批核了 61.135.136.128/16 的話,就表示從 61.135.136.129 到 61.135.136.142 的網(wǎng)址他都可以使用。
IP路由[ ]
IPv4并不區(qū)分作為網(wǎng)絡(luò)終端的主機(host) 和網(wǎng)絡(luò)中的中間設(shè)備(如路由器)兩者之間的差別。每臺電腦可以既做主機又做路由器。路由器用來聯(lián)結(jié)不同的網(wǎng)絡(luò)。所有用路由器聯(lián)系起來的這些網(wǎng)絡(luò)的總和就是互聯(lián)網(wǎng)。
IPv4技術(shù)既適用于局域網(wǎng)(LAN)也適用于廣域網(wǎng)。一個IP包從發(fā)送方出發(fā),到接送方收到,往往要穿過通過路由器連接的許許多多不同的網(wǎng)絡(luò)。每個路由器都擁有如何傳遞IP包的知識,這些知識記錄在路由表中。路由表中記錄了到不同網(wǎng)絡(luò)的路徑,在這兒每個網(wǎng)絡(luò)都被看成一個目標(biāo)網(wǎng)絡(luò)。路由表中記錄由路由協(xié)議管理,可能是靜態(tài)的記錄,比如由網(wǎng)絡(luò)管理員寫入的,也有可能是由路由協(xié)議動態(tài)的獲取的。有的路由協(xié)議可以直接在IP協(xié)議上運行。
常用的路由協(xié)議有
- 路由信息協(xié)議(Routing Information Protocol, RIP),
- 開放式最短路徑優(yōu)先協(xié)議,Open Shortest Path Fast, OSPF),
- 中介系統(tǒng)對中介系統(tǒng)協(xié)議(Intermediate System – Intermediate System, IS-IS),
- 邊界網(wǎng)關(guān)協(xié)議(Border Gateway Protocol, BGP).
在網(wǎng)絡(luò)負(fù)荷很重或者出錯的情況下,路由器可以將收到的IP包丟棄。在網(wǎng)絡(luò)負(fù)荷重的時候,同樣一個IP包有可能由路由器決定走了不同的路徑。路由器對每一個IP包都是單獨選擇路由的。這也提高了IP通信的可靠性。但單是IP層上的包傳輸,并不能保證完全可靠。IP包可能會丟失;可能會有重復(fù)的IP包被接受方收到;IP包可能會走不同的路徑,不能保證先發(fā)的先到;接受方收到的可能是被分割了的IP包。在IP之上再運行TCP協(xié)議則解決這些缺點提供了一個可靠的數(shù)據(jù)通路。
ICMP[ ]
互聯(lián)網(wǎng)控制消息協(xié)議(Internet Control Messages Protocol,ICMP)用于查錯和控制(如),是IP協(xié)議不可能缺少的幫手。幾乎任何的IP協(xié)議的實施(Implementation)都伴隨一個 ICMP協(xié)議的實施。ICMP協(xié)議實現(xiàn)在IP之上,即ICMP包是作為IP的數(shù)據(jù)部分來傳送的。
ICMP的一個重要的應(yīng)用是網(wǎng)絡(luò)擁塞控制:路由器丟棄一個IP包時,一般會用ICMP發(fā)一個消息給這個IP包的原發(fā)送者,原發(fā)送者可以相應(yīng)的降低IP包的發(fā)送頻率,以降低或避免IP包再被丟棄的可能性。
ICMP的另一個重要的應(yīng)用在于,將傳送ICMP消息的IP包禁止分割位(Don't Fragment-Bit)設(shè)置上,就可以利用ICMP的來測量一段網(wǎng)絡(luò)的最大傳輸單元(MTU) 。
IPOE[ ]
IPv4可以運行在各種各樣的底層網(wǎng)絡(luò)上,比如端對端的串行數(shù)據(jù)鏈路(PPP協(xié)議和SLIP協(xié)議),衛(wèi)星鏈路等等。局域網(wǎng)中最常用的是以太網(wǎng)。
一個用于IP包的以太網(wǎng)數(shù)據(jù)幀,在IP包首部前有一個14字節(jié)的以太網(wǎng)幀首部,在IP數(shù)據(jù)部分后添加了一個32位(4字節(jié))的CRC校驗。
除了1518字節(jié)的最大傳輸單元(MTU) 限制外,以太網(wǎng)還有最小傳輸單元的限制:總幀長不能小于64字節(jié)。如果IP包太短,比如IP數(shù)據(jù)部分短于26字節(jié),那么后面會添0(Padding) ,這時IP首部中的'包長度'指示了真正的包長。
以太網(wǎng)使用48位的地址。每個以太網(wǎng)網(wǎng)卡都有一個獨一無二的48位的硬件地址。所有的位均為1的地址是以太網(wǎng)廣播地址。發(fā)送數(shù)據(jù)的以太網(wǎng)網(wǎng)卡必須知道數(shù)據(jù)接送方的以太網(wǎng)地址才能把數(shù)據(jù)發(fā)給它。
地址解析協(xié)議ARP(Address Resolution Protocol) 用于將IP地址轉(zhuǎn)換成乙太網(wǎng)地址。每臺計算機上都有一個ARP列表,里面存儲了以太網(wǎng)中不同的IP地址與以太網(wǎng)地址的對應(yīng)關(guān)系。如果一臺計算機發(fā)現(xiàn)某個目標(biāo)IP地址沒有對應(yīng)的以太網(wǎng)地址,它會發(fā)一個ARP請求(Request) 到以太網(wǎng)中詢問,擁有該IP地址的計算機就會發(fā)一個ARP應(yīng)答(Reply)來通知它自己的乙太網(wǎng)地址。
IP包首部格式[ ]
IPv4首部一般是20字節(jié)長。在以太網(wǎng)幀中,IPv4包首部緊跟著以太網(wǎng)幀首部,同時以太網(wǎng)幀首部中的協(xié)議類型值設(shè)置為080016。 IPv4提供不同,大部分是很少用的選項,使得IPv4包首部最長可擴展到60字節(jié)(總是4個字節(jié)4個字節(jié)的擴展)
0 | 4 | 8 | 12 | 16 | 19 | 24 | 31 |
版本 | 首部長度 | 服務(wù)類型 | 長度 | ||||
標(biāo)識 | 標(biāo)志 | 段偏移量 | |||||
TTL | 協(xié)議 | 校驗和 | |||||
源IP地址 | |||||||
目的IP地址 | |||||||
選項 ... |
IP包頭字段說明[ ]
版本:4位,指定IP協(xié)議的版本號。
包頭長度(IHL):4位,IP協(xié)議包頭的長度,指明IPv4協(xié)議包頭長度的字節(jié)數(shù)包含多少個32位。由于IPv4的包頭可能包含可變數(shù)量的可選項,所以這個字段可以用來確定IPv4數(shù)據(jù)報中數(shù)據(jù)部分的偏移位置。IPv4包頭的最小長度是20個字節(jié),因此IHL這個字段的最小值用十進制表示就是 5(5x4 = 20字節(jié))。就是說,它表示的是包頭的總字節(jié)數(shù)對于4字節(jié)的倍數(shù)。
服務(wù)類型:定義IP協(xié)議包的處理方法,它包含如下子字段
過程字段:3位,設(shè)置了數(shù)據(jù)包的重要性,取值越大數(shù)據(jù)越重要,取值范圍為:0(正常)~ 7(網(wǎng)絡(luò)控制) 延遲字段:1位,取值:0(正常)、1(期待低的延遲) 流量字段:1位,取值:0(正常)、1(期待高的流量) 可靠性字段:1位,取值:0(正常)、1(期待高的可靠性) 成本字段:1位,取值:0(正常)、1(期待最小成本) 未使用:1位
長度:IP包的總長
標(biāo)識:唯一地標(biāo)識主機所發(fā)送的一個數(shù)據(jù)段,通常每發(fā)送一個數(shù)據(jù)段后加一。但IP包被分割后,分割得到的IP包擁有相同的標(biāo)識
標(biāo)志:是一個3位的控制字段,包含:
保留位:1位 不分段位:1位,取值:0(允許數(shù)據(jù)報分段)、1(數(shù)據(jù)報不能分段) 更多段位:1位,取值:0(數(shù)據(jù)包后面沒有包,該包為最后的包)、1(數(shù)據(jù)包后面有更多的包)
段偏移量:當(dāng)數(shù)據(jù)段被分割時,它和更多段位(MF, More fragments)進行連接,幫助目的主機將分段的包組合。
TTL:表示數(shù)據(jù)包在網(wǎng)絡(luò)上生存多久,每通過一個路由器該值減一,為0時將被路由器丟棄。
協(xié)議:8位,這個字段定義了IP數(shù)據(jù)報的數(shù)據(jù)部分使用的協(xié)議類型。常用的協(xié)議及其十進制數(shù)值包括ICMP(1)、TCP(6)、UDP(17)。
校驗和:16位,是IPv4數(shù)據(jù)報包頭的校驗和。
源IP地址:
目的IP地址:
過去和未來[ ]
IPv4從出生到如今,幾乎沒什么改變的生存了下來。1983年TCP/IP協(xié)議被ARPAnet采用,直至發(fā)展到后來的互聯(lián)網(wǎng)。那時只有幾百臺計算機互相聯(lián)網(wǎng)。到1989年聯(lián)網(wǎng)計算機數(shù)量突破10萬臺,并且同年出現(xiàn)了1.5Mbit/s的骨干網(wǎng)。因為IANA把大片的地址空間分配給了一些公司和研究機構(gòu),90年代初就有人擔(dān)心10年內(nèi)IP地址空間就會不敷用,并由此導(dǎo)致了IPv6 的開發(fā)。