IP位址
此條目需要補充更多來源。 (2014年11月22日) |
IP位址(英語:IP Address,全稱Internet Protocol Address),又譯為網際協定地址、互聯網協定地址。是網際協定中用於標識傳送或接收數據報的裝置的一串數字。[1][2]
概述
編輯當裝置連接網絡,裝置將被分配一個IP位址,用作標識。通過IP位址,裝置間可以互相通訊,如果沒有IP位址,我們將無法知道哪個裝置是傳送方,無法知道哪個是接收方。[2] IP位址有兩個主要功能:標識裝置或網絡和定址。
常見的IP地址分為IPv4與IPv6兩大類,IP位址由一串數字組成。IPv4為32位元長,通常書寫時以四組十進制數字組成,並以點分隔,如:172.16.254.1
;IPv6為128位元長,通常書寫時以八組十六進制數字組成,以冒號分割,如:2001:db8:0:1234:0:567:8:1
。
功能
編輯IP位址有兩個主要的功能:
歷史
編輯1981年,IETF定義了32位元IP位址的IPv4。隨着互聯網的發展,網絡位置(IPv4)漸漸被消耗殆盡,雖然當前的網絡地址轉換及無類別域間路由等技術可延緩網絡位置(IPv4)匱乏之現象,但為求解決根本問題,從1990年開始,互聯網工程工作小組開始規劃IPv4的下一代協定,除要解決即將遇到的IP位址短缺問題外,還要發展更多的擴充,為此IETF小組建立IPng,以讓後續工作順利進行。1994年,各IPng領域的代表們於多倫多舉辦的IETF會議中,正式提議IPv6發展計劃,該提議直到同年的11月17日才被認可,並於1996年8月10日成為IETF的草案標準,最終IPv6在1998年12月由互聯網工程工作小組以互聯網標準規範(RFC 2460)的方式正式公佈。
IP位址空間 是由互聯網號碼分配局(英語:Internet Assigned Numbers Authority,簡稱:IANA)以及其他5個區域互聯網註冊管理機構(英語:Regional Internet Registry,簡稱:RIR)在其指定區域內分配給本地Internet登錄檔,例如網絡服務提供商(英語:Internet Service Providers,簡稱:ISP)和其他終端使用者。IPv4位址被IANA以塊為單位分佈給RIR,每個地址塊大約為1680萬個地址,但自2011年以來在IANA級別已用盡。在非洲,RIR中只有1個RIR仍然可以給當地分配。一些IPv4位址是為專用網絡保留的,並不是全域唯一的。
IP版本
編輯當今,Internet上普遍使用兩種版本的Internet協定。Internet協定的原始版本於1983年在ARPANET(Internet的前身,中文:阿帕網)中首次部署,其版本是Internet協定版本4(IPv4).
直到1990年代初,可供分配給Internet伺服器提供商(ISP)和終端使用者組織的IPv4位址空間迅速的消耗殆盡,促使Internet工程任務組(IETF)探索新的技術以擴充在Internet上的定址能力。結果是對Internet協定進行重新設計,該協定最終在1995年被稱為Internet協定版本6(IPv6)。IPv6技術處於各個測試階段,一直到2000年代中期開始商業生產部署。
今天,這兩個版本的Internet協定(網際協定)在同時使用。除了其他的技術性更改之外,每個版本對地址的格式定義都不同。由於IPv4的歷史悠久,通用術語IP位址仍通常指IPv4定義的地址(即IPv4位址)。IPv4和IPv6之間的版本順序差距是由1979年將版本5分配給實驗性Internet流協定而引發的,但是從未將其稱之為IPv5。
雖然定義了其他的協定版本,版本1(v1)到版本9(v9),但是只有v4和v6得到了廣泛的使用,v1和v2是1974年和1977年的TCP協定(傳輸控制協定)的名稱,因為當時IP規範是分開的。v3於1978年定義,而v3.1是TCP與IP分離的第一個版本。v6是幾個建議的版本的集合,其中包括v6 簡單Internet協定,v7 TP/IX:下一個互聯網,v8 PIP(P Internet協定)和v9 TUBA(TCP&UDP和大的地址)。
子網絡
編輯IP網絡可以在IPv4和IPv6中劃分子網絡。為此,將IP位址辨識成由兩部分組成:網絡字首(高位)和其餘的位(稱為其餘欄位,主機識別碼或者介面識別碼(IPv6)),用於網絡內的主機編號。子網絡遮罩(subnet mask)或無類別域間路由(英語:Classless Inter-Domain Routing,簡稱:CIDR)表示法確定了IP位址如何分為網絡部分和主機部分。
子網絡遮罩一詞僅用於IPv4位址中。但是,兩個版本的IP位址都使用CIDR概念和符號。在此,在IP位址後面加斜槓和用於標識網絡部分的位數(十進制),也稱路由字首。例如:IPv4位址及其子網絡遮罩分別可以是 192.0.2.1
和 255.255.255.0
。因為IP位址的前24位元表示網絡和子網絡,所以相同的IP位址和子網絡的CIDR表示法為192.0.2.1/24
。
IPv4
編輯IP位址由32位元二進制陣列成,為便於使用,常以XXX.XXX.XXX.XXX形式表現,每組XXX代表小於或等於255的10進制數,該表示方法稱為點分十進制。例如維基媒體的一個IP地址是208.80.152.2。地址可分為A、B、C、D、E五大類,其中E類屬於特殊保留地址。
IP位址是唯一的。目前IPv4技術可能使用的IP位址最多可有4,294,967,296個(即232)。看上去像是很難會用盡,但由於早期編碼和分配上的問題,很多區域的編碼實際上被空出或不能使用。加上互聯網的普及,使大部分家庭都至少有一部電腦,連同公司的電腦,以及連接網絡的各種裝置都消耗大量IPv4位址資源。
隨着互聯網的快速成長,IPv4的42億個地址最終於2011年2月3日用盡[4][5]。相應的科研組織已研究出128位元的IPv6,其IP地址數量最高可達3.402823669 × 1038個,屆時每個人家居中的每件電器,每件物件,甚至地球上每一粒沙子都可以擁有自己的IP地址。
在A類、B類、C類IP位址中,如果主機號是全1,那麼這個地址為直接廣播地址,它是用來使路由器將一個分組以廣播形式傳送給特定網絡上的所有主機。32位元全為1的IP位址「255.255.255.255」為受限廣播地址("limited broadcast" destination address),用來將一個分組以廣播方式傳送給本網絡中的所有主機,路由器則阻擋該分組通過,將其廣播功能限制在本網內部。
A類IPv4位址 | B類IPv4位址 | C類IPv4位址 | D類IPv4位址 | E類IPv4位址 | |
---|---|---|---|---|---|
網絡標誌位 | 0 | 10 | 110 | 1110 | 11110 |
IP位址範圍 | 0.0.0.0~127.255.255.255 | 128.0.0.0~191.255.255.255 | 192.0.0.0~223.255.255.255 | 224.0.0.0~239.255.255.255 | 240.0.0.0~255.255.255.255 |
可用IP位址範圍 | 1.0.0.1~127.255.255.254 | 128.0.0.1~191.255.255.254 | 192.0.0.1~223.255.255.254 | ||
是否可以分配給主機使用 | 是 | 是 | 是 | 否 | 否 |
網絡數量(個) | 126 (27-2) | 16384 (214) | 2097152 (221) | --- | --- |
每個網絡中可容納主機數(個) | 16777214 (224-2) | 65534 (216-2) | 254 (28-2) | --- | --- |
適用範圍 | 大量主機的大型網絡 | 中等規模主機數的網絡 | 小型區域網絡 | 留給Internet體系結構委員會(IAB)使用【組播地址】 | 保留,僅作為搜尋、Internet的實驗和開發用 |
備註 | 0.0.0.0為特殊地址,表示本網主機 | 255.255.255.255為特殊地址,用於定向廣播 |
說明:D類與E類IPv4位址不區分網絡地址與主機地址
網絡號 | 主機號 | 是否可以作為源地址 | 是否可以作為目的地址 | 備註/描述 |
---|---|---|---|---|
全為0 | 全為0 | 允許 | 禁止 | 表示本網主機 |
全為0 | Host ID | 允許 | 禁止 | 表示特定主機 |
全為1 | 全為1 | 禁止 | 允許 | 定向廣播地址 |
127 | 任意合法的值 | 允許 | 允許 | 迂迴地址,用於本地測試 |
Network ID | 全為1 | 禁止 | 允許 | 直接廣播地址 |
子網絡劃分的歷史
編輯在Internet協定開發的早期階段,網絡號始終是最高階的八位元組(最高且有效的八位)。由於此方法僅允許256個網絡使用,因此很快被證明這樣是不夠的,因為所開發的其他網絡都獨立於已經由網絡號指定的現有網絡。1981年,隨着分類網絡體系結構的引入,對定址規範進行了修訂。[6]
一流的網絡設計允許進行大量的單獨網絡分配和細顆粒的子網絡設計。IP位址的最高的有效的八位元組的前三位被定義為地址的類別位。為通用單播定址定義了三個類別(A類、B類和C類)。根據衍生的類,網絡標識基於整個地址的八位位元組邊界段。每個類別在網絡識別碼中依次使用其他八位元組,從而減少高階類別(B類和C類)中的主機數量。上表概述了這個過時的系統。
分類網絡的設計在Internet啟用階段就達到了這個目的,但是對於20世紀90年代的網絡的迅速發展,它缺乏可延伸性。地址空間的類系統在1993年被無類別域間路由(CIDR)取代。CIDR基於可變長子網絡遮罩(VLSM),允許基於任意長度字首來分配以及路由。當今,分類網絡的殘餘概念僅僅在有限的範圍內用於某些網絡的軟件和硬件(例如子網絡遮罩)的預設組態參數,以及用於網絡管理員們討論中使用的術語。
IPv6
編輯IP編址
編輯從IPv4到IPv6最顯著的變化就是網絡地址的長度。RFC 2373和RFC 2374定義的IP位址,就像下面章節所描述的,有128位元長;IP位址的表達形式,一般採用32個十六進制數。
IP中可能的地址有2128≈3.4×1038個,具體數量為340,282,366,920,938,463,463,374,607,431,768,211,456(即1632),因為32位元地址每位可以取16個不同的值。 在很多場合,IP位址由兩個邏輯部分組成:一個64位元的網絡字首和一個64位元的主機地址,主機地址通常根據實體位址自動生成,叫做EUI-64(或者64-位擴充唯一標識)。
私有地址
編輯就像IPv4為專用的網絡保留的地址一樣,在IPv6中也有被預留的地址。在IPv6中,這些地址被稱為唯一本地地址(ULA)。路由字首:fc00::/7 就是為這個塊保留的,且被分為2個 /8 塊,都具有不同的隱藏策略。這些地址包括一個40位的偽亂數,如果站點合併或者封包被錯誤的路由,則可以將地址衝突的風險降到最低。
以fe80::開頭的地址,我們稱之為本地鏈路地址,將這類地址分配給鏈路上的通訊介面,這些地址由作業系統為每個介面自動生成。這為在鏈路上的所有的IPv6的主機之間提供了即時通訊。此功能適用於IPv6網絡中的管理的較低的層,例如鄰居發現協定。
專用地址字首和本地鏈路地址不得在公共互聯網中進行路由。
IP位址的分配
編輯IP位址是在主機加入網絡時動態分配的,或是通過主機硬件/軟件的組態永久分配給主機的。永久性的組態也稱為使用靜態IP位址。相反,在每次重新啟動時分配的IP位址,稱為使用動態IP位址。
動態IP位址是通過網絡使用動態主機組態協定(DHCP)分配的。DHCP是分配地址最常用的技術。它避免了為網絡上的每台裝置分配特定靜態地址的管理負擔。如果某些裝置在特定的時間處於連線狀態,它還允許裝置共用網絡上有限的地址空間。通常,在現代的桌上電腦作業系統中,預設情況下會啟用動態IP位址分配。
DHCP分配的地址於租約相關聯,並且一般都是具有有效期。如果主機在到期前未能續訂租約,則可以將該地址分配給其他裝置中的一台裝置。某些DHCP實現會在主機每次加入網絡時根據其MAC地址嘗試將相同的IP位址重新分配給該主機。網絡管理員可以通過基於MAC地址分配特定的IP位址來組態DHCP。
DHCP並不是唯一一種動態IP位址分配技術。Bootstrap協定是DHCP的類似協定和前身。撥號和某些寬頻網絡使用對等協定的動態地址功能。
用於網絡設施的電腦和裝置(例如:路由器或者郵件伺服器等),通常組態為靜態地址分配。
在動態或者靜態地址分配失效的情況下,作業系統可以將無狀態地址自動組態,將連結本地的地址分配給主機。
地址轉換
編輯NAT裝置會將專用網絡上的不同IP位址對映為公共互聯網上的不同的TCP或者UDP的埠號。在家用網絡中,NAT功能通常是在家庭網絡的閘道器中實現的。在這種情況下,連接到閘道器的電腦具有專用的IP位址,並且閘道器會在外部介面上進行Internet通訊。內部的電腦共用這一個公共的IP位址。
參見
編輯參考資料
編輯- ^ IP 地址简介 - Google 搜索帮助. support.google.com. [2020-04-18]. (原始內容存檔於2020-08-30).
- ^ 2.0 2.1 IPv4 vs. IPv6: What’s the Difference?. IPv4 vs. IPv6: What’s the Difference?. [2020-04-18]. (原始內容存檔於2020-05-18) (英語).
- ^ Postel, J. Internet Protocol(2.3. Function Description). tools.ietf.org. [2020-03-15]. (原始內容存檔於2011-07-17) (英語).
- ^ 柯山. ICANN将宣布IPv4地址耗尽全球进入IPv6时代. 趙秀芹. 搜IT. 2011年2月2日 [June 22, 2011]. (原始內容存檔於2011年2月6日).
- ^ IANA. 102, 103, 104, 179 and 185 have been allocated. No unicast IPv4 /8s remain unallocated.. 2011-02-03 [2011-02-03]. (原始內容存檔於2011-02-07).
- ^ Postel, J. RFC791 Internet Protocol. tools.ietf.org. [2020-08-26]. (原始內容存檔於2011-07-17) (英語).