智慧財產權與網際網路/IP地址
網際網路協議地址(IP地址)是分配給每個參與使用網際網路協議進行通訊的計算機網路裝置(例如計算機、智慧手機、熱點)的數字標籤。[1] 該地址有兩個主要功能:主機或網路介面標識和位置定址。其作用被描述如下:“一個名字表明我們尋找什麼。一個地址表明它在哪裡。一條路線表明如何到達那裡。”[1]
網際網路協議的設計者將IP地址定義為用二進位制表示的整數,長度為32位[1],這個系統被稱為IPv4,至今仍在使用。然而,由於網際網路的巨大增長和預計可用IPv4地址的枯竭,一個新的地址系統被稱為IPv6,使用長度為128位的二進位制整數地址,[2]自2000年代中期以來,它與IPv4一起在全球範圍內部署。
雖然IP地址在技術上是二進位制數,但它們通常以更便於人類閱讀的表示方式儲存和顯示,如十進位制,例如172.16.254.1(對於IPv4)和2001:db8:0:1234:0:567:8:1(對於IPv6)。
網際網路號碼分配機構(IANA)在全球範圍內管理IP地址空間分配,並維護五個區域網際網路註冊機構(RIR)以將IP地址塊分配給網際網路服務提供商和其他實體。
網際網路協議(IP)的兩個版本正在使用:IP版本4和IP版本6。每個版本都不同地定義了IP地址。由於其普遍性,通用術語IP地址通常仍然指IPv4定義的地址。IPv4和IPv6之間的版本序列差距源於1979年將數字5分配給實驗性網際網路流協議,儘管它從未被稱為IPv5。

在IPv4中,一個地址由32位組成,這將地址空間限制為4,294,967,296(232)個可能的唯一地址。IPv4為特殊目的保留了一些地址,例如私有網路(約1800萬個地址)或組播地址(約2.7億個地址)。
IPv4地址通常以“點分十進位制”符號表示,它由四個十進位制數字組成,每個數字範圍為0到255,用句點或點隔開,例如172.16.254.1。每個部分代表地址的8位(位元組)組。在某些技術寫作情況下,IPv4地址可能以各種十六進位制、八進位制或二進位制表示方式呈現。
在網際網路協議開發的早期階段,[3]網路管理員將IP地址解釋為兩個部分:網路號部分和主機號部分。地址中最高位的位元組(最重要的八位)被指定為網路號,其餘位稱為剩餘欄位或主機識別符號,用於在網路中對主機進行編號。
這種早期方法很快被證明不足,因為隨著更多網路的開發,這些網路獨立於現有網路,這些現有網路已經由網路號指定。1981年,網際網路地址規範隨著類化網路架構的引入而修訂。[1]
類化網路設計允許分配更多數量的單個網路並進行細粒度的子網設計。IP地址中最重要位元組的前三位被定義為地址的類別。為通用單播定址定義了三個類別(A、B和C)。根據推匯出的類別,網路標識基於整個地址的位元組邊界段。每個類別在網路識別符號中使用連續的額外位元組,從而減少了較高類別(B和C)中可能的宿主數量。下表概述了這種現已過時的系統。
| 類別 | 地址中的前導位(二進位制) | 第一個位元組的範圍(十進位制) | 網路ID格式 | 主機ID格式 | 網路數量 | 每個網路的地址數量 |
|---|---|---|---|---|---|---|
| A | 0 | 0 - 127 | a | b.c.d | 27 = 128 | 224 = 16,777,216 |
| B | 10 | 128–191 | a.b | c.d | 214 = 16,384 | 216 = 65,536 |
| C | 110 | 192–223 | a.b.c | d | 221 = 2,097,152 | 28 = 256 |
類化網路設計在網際網路的啟動階段發揮了作用,但它缺乏在1990年代網路快速擴充套件面前的可擴充套件性。1993年,地址空間的類別系統被無類別域間路由(CIDR)取代,它採用可變長度子網掩碼(VLSM)來允許基於任意長度字首的分配和路由。
如今,類化網路概念的殘餘只在有限範圍內發揮作用,例如某些網路軟體和硬體元件(例如網路掩碼)的預設配置引數,以及網路管理員討論中使用的技術術語。
早期的網路設計,當設想與所有網際網路主機進行全球端到端連線的通訊時,旨在將IP地址唯一地分配給特定計算機或裝置。然而,人們發現這並非總是必要的,因為私有網路的發展以及對公共地址空間的節約。
未連線到網際網路的計算機,例如僅透過TCP/IP相互通訊的工廠機器,不需要具有全域性唯一的IP地址。RFC 1918保留了三個用於私有網路的IPv4地址範圍。這些地址不會在網際網路上路由,因此它們的用法無需與IP地址註冊機構協調。
如今,當需要時,這些私有網路通常透過網路地址轉換(NAT)連線到網際網路。
| 開始 | 結束 | 地址數量 | |
|---|---|---|---|
| 24位塊(/8字首,1 × A) | 10.0.0.0 | 10.255.255.255 | 16,777,216 |
| 20位塊(/12字首,16 × B) | 172.16.0.0 | 172.31.255.255 | 1,048,576 |
| 16位塊(/16字首,256 × C) | 192.168.0.0 | 192.168.255.255 | 65,536 |
任何使用者都可以使用任何保留的塊。通常,網路管理員會將一個塊劃分為子網;例如,許多家用路由器自動使用192.168.1.1到192.168.1.255的預設地址範圍(在CIDR符號中為192.168.1.0/24)。
自2011年2月3日IANA和RIR分配給終端使用者和網際網路服務提供商的可用未分配IPv4地址供應已完全耗盡,當時最後5個A類塊被分配給了5個RIR。[4] 亞太網路資訊中心(APNIC)是第一個在2011年4月15日耗盡其區域池的RIR,除了保留少量地址空間用於向IPv6過渡之外。[5]

儘管有節約技術,IPv4地址空間的快速枯竭促使網際網路工程任務組(IETF)探索擴充套件網際網路定址能力的新技術。永久的解決方案被認為是網際網路協議本身的重新設計。這種下一代網際網路協議,旨在補充並最終取代IPv4,最終在1995年被命名為網際網路協議版本6(IPv6)。[2] 地址大小從32位增加到128位或16個位元組。即使有慷慨的網路塊分配,這也被認為足以滿足可預見的未來。從數學上講,新的地址空間提供了高達~3.403×1038 個唯一地址(2128)的潛力。
新設計並非旨在獨立提供足夠的地址數量,而是為了在路由節點高效聚合子網路由字首。因此,路由表大小更小,最小的單個分配是一個包含 264 個主機的子網,這相當於整個 IPv4 網際網路大小的平方。在這種情況下,任何 IPv6 網路段的實際地址利用率都會很低。新設計還提供了將網路段的地址基礎設施(即對該段可用空間的本地管理)與用於為網路路由外部流量的地址字首分離的機會。如果全域性連線或路由策略發生變化,IPv6 擁有自動更改整個網路路由字首的功能,而無需進行內部重新設計或重新編號。
大量的 IPv6 地址允許為特定目的分配大型塊,並在適當的情況下進行聚合以實現高效路由。在擁有大型地址空間的情況下,不需要像無類域間路由 (CIDR) 中那樣使用複雜的地址節省方法。
許多現代桌上型電腦和企業伺服器作業系統包含對 IPv6 協議的原生支援,但它尚未在其他裝置中得到廣泛部署,例如家庭網路路由器、語音 over IP (VoIP) 裝置和其他網路外設。
就像 IPv4 為私有或內部網路保留地址一樣,IPv6 中也為私有地址預留了地址塊。在 IPv6 中,這些被稱為唯一本地地址 (ULA)。RFC 4193 為此塊預留了路由字首 fc00::/7,該塊被分為兩個 /8 塊,具有不同的隱含策略。這些地址包含一個 40 位的偽隨機數,最大限度地降低了站點合併或資料包錯誤路由時地址衝突的風險。[6]
以 fe80: 開頭的地址稱為鏈路本地地址,分配給介面,僅用於子網內的通訊。這些地址由作業系統為每個網路介面自動生成。這為任何 IPv6 主機提供了即時且自動的網路連線,這意味著,如果多個主機連線到公共集線器或交換機,它們可以透過其鏈路本地 IPv6 地址進行通訊。此功能用於 IPv6 網路管理的較低層(例如鄰居發現協議)。
所有私有地址字首都不可在公共網際網路上路由。
在 IPv4 和 IPv6 中,IP 網路都可以劃分為子網。為此,IP 地址在邏輯上被識別為由兩個部分組成:網路字首和主機識別符號(在 IPv6 中重新命名為介面識別符號)。子網掩碼或 CIDR 字首決定 IP 地址如何劃分為網路和主機部分。
術語子網掩碼僅在 IPv4 中使用。然而,這兩個 IP 版本都使用無類域間路由 (CIDR) 的概念和符號。在這種情況下,IP 地址後跟一個斜槓和用於網路部分的位數(以十進位制表示),也稱為路由字首。例如,IPv4 地址及其子網掩碼可能分別為 192.0.2.1 和 255.255.255.0;同一個 IP 地址和子網的 CIDR 符號為 192.0.2.1/24,因為 IP 地址的前 24 位(準確地說為 192.000.002)表示網路和子網。
網際網路協議地址在主機啟動時被新分配,或者透過其硬體或軟體的固定配置被永久分配。持久配置也稱為使用靜態 IP 地址。相反,如果計算機的 IP 地址每次都被重新分配,則稱為使用動態 IP 地址。
靜態 IP 地址由管理員手動分配給計算機。具體步驟因平臺而異。這與動態 IP 地址形成對比,動態 IP 地址由計算機介面或主機軟體本身分配,例如 Zeroconf,或者由伺服器使用動態主機配置協議 (DHCP) 分配。即使使用 DHCP 分配的 IP 地址可能在很長一段時間內保持不變,但它們通常會發生變化。在某些情況下,網路管理員可以實施動態分配的靜態 IP 地址。在這種情況下,使用 DHCP 伺服器,但它被專門配置為始終將相同的 IP 地址分配給特定計算機。這允許集中配置靜態 IP 地址,而無需透過手動過程專門配置網路上的每臺計算機。
在沒有或無法使用靜態或有狀態 (DHCP) 地址配置的情況下,作業系統可以使用無狀態自動配置方法(例如 Zeroconf)將 IP 地址分配給網路介面。
動態 IP 地址最常由 DHCP 伺服器在 LAN 和寬頻網路上分配。它們被使用,因為它們避免了為網路上的每個裝置分配特定靜態地址的管理負擔。如果只有一部分裝置會在特定時間線上,它還允許許多裝置共享網路上的有限地址空間。在大多數當前的桌上型電腦作業系統中,預設情況下會啟用動態 IP 配置,因此使用者不需要手動輸入任何設定來連線到具有 DHCP 伺服器的網路。DHCP 不是用於分配動態 IP 地址的唯一技術。撥號和某些寬頻網路使用點到點協議 (PPP) 的動態地址功能。
粘性動態 IP 地址是一個非正式術語,由有線和 DSL 網際網路接入使用者用來描述動態分配的 IP 地址,該地址很少改變。這些地址通常使用 DHCP 分配。由於調變解調器通常長時間開機,因此地址租約通常設定為較長時間,並且只是簡單地續訂。如果調變解調器在下次地址租約到期之前關閉並再次開機,它很可能收到相同的 IP 地址。
RFC 3330 為 IPv4 網路的鏈路本地定址的特殊用途定義了一個地址塊 169.254.0.0/16。在 IPv6 中,每個介面,無論是使用靜態地址分配還是動態地址分配,都會自動收到一個本地鏈路地址,位於塊 fe80::/10 中。
這些地址僅在主機連線到的鏈路上有效,例如本地網路段或點到點連線。這些地址不可路由,與私有地址一樣,不能作為遍歷網際網路的資料包的源地址或目標地址。
當鏈路本地 IPv4 地址塊被保留時,沒有地址自動配置機制的標準存在。為了填補這一空白,微軟建立了一個名為自動私有 IP 地址 (APIPA) 的實現。由於微軟的市場力量,APIPA 已被部署在數百萬臺機器上,並已成為行業中的事實標準。許多年後,IETF 為此功能定義了一個正式標準,RFC 3927,名為IPv4 鏈路本地地址的動態配置。
某些基礎設施情況必須使用靜態地址,例如在查詢將域名解析為 IP 地址的域名系統 (DNS) 主機時。靜態地址也很方便,但並非絕對必要,用於定位企業內部的伺服器。從 DNS 伺服器獲取的地址帶有生存時間 (TTL) 或快取時間,在此之後應查詢以確認該地址沒有改變。即使是靜態 IP 地址也會發生變化,通常是網路管理的結果 (RFC 2072)。
公共地址
[edit | edit source]在日常用語中,公網 IP 地址與全域性可路由的單播 IP 地址是同義詞。IPv4 和 IPv6 都定義了為私有網路和鏈路本地定址保留的地址範圍。術語公網 IP 地址通常用於排除這些型別的地址。
IP 地址的修改
[edit | edit source]IP 阻斷和防火牆
[edit | edit source]防火牆保護網路免遭未經授權的訪問,在當今網際網路的各個級別都很常見,它們根據請求訪問的計算機的 IP 地址控制對網路的訪問。無論使用黑名單還是白名單,被阻止的 IP 地址都是客戶端感知的 IP 地址,這意味著如果客戶端使用代理伺服器或網路地址轉換,阻止一個 IP 地址可能會阻止許多獨立的計算機。
IP 地址轉換
[edit | edit source]多個客戶端裝置可能看起來共享 IP 地址:要麼是因為它們位於共享主機 Web 伺服器上,要麼是因為 IPv4 網路地址轉換 (NAT) 或代理伺服器代表其客戶充當中間代理,在這種情況下,真實的源 IP 地址可能被隱藏在接收請求的伺服器中。一種常見的做法是讓 NAT 隱藏私有網路中的大量 IP 地址。只有 NAT 的“外部”介面需要具有網際網路可路由地址。[7]
最常見的是,NAT 裝置將外部的 TCP 或 UDP 埠號對映到內部的單個私有地址。就像電話號碼可以有特定於站點的分機號一樣,埠號是特定於站點的 IP 地址擴充套件。
在小型家庭網路中,NAT 功能通常發生在住宅閘道器裝置中,通常是作為“路由器”銷售的裝置。在這種情況下,連線到路由器的計算機將擁有“私有”IP 地址,而路由器將擁有“公共”地址來與網際網路通訊。這種型別的路由器允許多臺計算機共享一個公共 IP 地址。
參考文獻
[edit | edit source]- ↑ a b c d Information Sciences Institute, University of Southern California (1981). "RFC 791 - Internet Protocol". Internet Engineering Task Force. Archived from the original on September 10, 2015. Retrieved November 1, 2019.
{{cite web}}: Unknown parameter|month=ignored (help) - ↑ a b Deering, S.; Hinden, R. (2017). "RFC 8200 - Internet Protocol, Version 6 (IPv6) Specification". Internet Engineering Task Force. Archived from the original on November 21, 2018. Retrieved November 1, 2019.
{{cite web}}: Unknown parameter|month=ignored (help) - ↑ Postel, Jon (1980). "RFC 760 - DoD standard Internet Protocol". Internet Engineering Task Force. Retrieved November 1, 2019.
{{cite web}}: Unknown parameter|month=ignored (help) - ↑ Smith, Lucie; Lipner, Ian (February 3, 2011). "Free Pool of IPv4 Address Space Depleted". Number Resource Organization. Archived from the original on November 6, 2018. Retrieved February 3, 2011.
- ↑ "APNIC IPv4 Address Pool Reaches Final /8". Asia-Pacific Network Information Centre. April 15, 2011. Archived from the original on March 29, 2016. Retrieved November 1, 2019.
- ↑ Hinden, R.; Haberman, B. (2005). "RFC 4193 - Unique Local IPv6 Unicast Addresses". Internet Engineering Task Force. Archived from the original on September 12, 2018. Retrieved November 1, 2019.
{{cite web}}: Unknown parameter|month=ignored (help) - ↑ Comer, Douglas (2000). 與 TCP/IP 互連:原理、協議和體系結構 (第 4 版). 新澤西州上鞍河:普倫蒂斯·霍爾。第 394 頁。 ISBN 0130183806.
- IP 在 Curlie
- "理解 IP 地址:關於 IP 地址的一切" (PDF). 存檔於 原文 (PDF) 於 2010 年 8 月 21 日。