IPv6作為 IETF設計的用于替代 IPv4的下一代網際網路協定,IPv6和 IPv4的對比具體見表 2-2。
表2-2 IPv6和IPv4協定對比表
描述 | IPv4 | IPv6 |
位址 | 長度為 32 位(4 個位元組)。位址由網絡和主機部分組成,這取決于位址類。根據位址的前幾位,可定義各種位址類:A、B、C、D 或 E。IPv4 位址的總數為4 294 967 296 | 長度為 128 位(16 個位元組)。基本體系結構的網絡數字為 64 位,主機數字為 64 位。通常,IPv6 位址(或其部分) 的主機部分将派生自 MAC 位址或其他接口辨別 |
IPv4 地 址 的 文 本 格 式 為 nnn.nnn.nnn.nnn, 其 中0≤ nnn ≤ 255,而每個 n 都是十進制數。可省略前導零。最大列印字元數為 15 個,不計掩碼 | 根據子網字首,IPv6 的體系結構比 IPv4 的體系結構更複雜 | |
IPv6 位址的文本格式為 xxxx:xxxx:xxxx:xxxx:xxxx:xxxx:xxxx:xxxx,其中每個 x 都是十六進制數,表示 4 位。可省略前導零。可在位址的文本格式中使用一次雙冒号(::),用于指定任意數目的 0 位。例如,::ffff:10.120.78.40表示 IPv4 映射的 IPv6 位址 | ||
位址配置設定 | 最初,按網絡類配置設定位址。随着位址空間的消耗,使用“無類别域間路由”(CIDR)進行更小的配置設定。沒 有在機構和國家或地區之間平均配置設定位址 | 配置設定尚處于早期階段。IETF 和 IAB 建議基本上為每個組織、家庭或實體配置設定一個 /48 子網字首長度。它将保留16 位供組織進行子網劃分。位址空間是足夠大的,可為世界上每個人提供一個自己的 /48 子網字首長度 |
位址生存期 | 通常,除使用動态主機配置協定(DHCP)配置設定的位址之外,此概念不适用于 IPv4 位址 | IPv6 位址有兩個生存期:首選生存期和有效生存期,而首選生存期總是小于等于有效生存期。 首選生存期到期後,如果有同樣好的首選位址可用,那麼該位址便不再用作新連接配接的源 IP 位址。有效生存期到期後,該位址不再用作入局資訊包的有效目标 IP 位址或源 IP 位址 |
位址掩碼 | 用于從主機部分指定網絡 | 未使用 |
位址字首 | 有時用于從主機部分指定網絡;有時根據位址的表示格式寫為 /nn 字尾 | 用于指定位址的子網字首。按照列印格式寫為 /nnn(最多 3 位十進制數字,0 ≤ nnn ≤ 128) 字尾。 例如,fe80::982:2a5c/10,其中,前 10 位組成子網字首 |
位址解析協定(ARP) | IPv4 使用ARP 來查找與IPv4 位址相關聯的實體位址(如MAC 或鍊路位址) | IPv6 使用網際網路控制資訊協定版本 6(ICMPv6)将這些功能嵌入到 IP 作為無狀态自動配置和鄰節點發現算法的一部分,是以,不存在類似于 ARP6 之類的東西 |
位址作用域 | 此概念不适用于單點廣播位址。有指定的專用位址範圍和回送位址,将該範圍之外的位址假設為全局位址 | 在 IPv6 中,位址作用域是該體系結構的一部分。單點廣播位址有兩個已定義的作用域,包括本地鍊路和全局鍊路;而多點廣播位址有 14 個作用域。為源和目标選擇預設位址時要考慮作用域 |
作用域區域是特定網絡中作用域的執行個體。是以,有時必須輸入IPv6 位址或使它與區域辨別相關聯。文法是%zid, 其中,zid 是一個數字(通常較小)或名稱。區域辨別寫在位址之後字首之前,例如,2ba::1:2:14e:9a9b:c%3/48 | ||
位址類型 | IPv4 位址分為 3 種基本類型:單點廣播位址、多點廣播位址和廣播位址 | IPv6 位址分為 3 種基本類型:單點廣播位址、多點廣播位址和任意廣播位址 |
通信跟蹤 | 通信跟蹤是一個收集進入和離開系統的 TCP/IP(及其他)資訊包的詳細跟蹤資料的工具 | 同樣支援 IPv6 |
配置 | 新安裝的系統必須在進行配置之後才能與其他系統通信,即必須配置設定 IP 位址和路由 | 根據所需的功能,配置是可選的。IPv6 可與任何以太網擴充卡配合使用并且可通過回送接口運作。IPv6 接口是使用 IPv6 無狀态自動配置進行自我配置的,還可手動配置 IPv6 接口。這樣,根據網絡的類型以及是否存在 IPv6 路由器,系統将能與其他本地和遠端的 IPv6 系統通信 |
續表
域名系統(DNS) | 應用程式使用套接字API gethostbyname()接受主機名,然後使用 DNS 來獲得 IP 位址 | 同樣支援 IPv6。使用 AAAA 記錄類型和逆向查找(IP 的名稱)支援 IPv6。應用程式可選擇(是否)從 DNS 接受IPv6 位址,然後(是否)使用 IPv6 進行通信 |
應用程式還接受 IP 位址,然後使用 DNS 和 gethos- tbyaddr()獲得主機名 | 套接字 API gethostbyname()僅支援 IPv4。對于 IPv6, 使用新的 getaddrinfo()API 以僅擷取 IPv6 或擷取 IPv4 和 IPv6 位址(在應用選擇上) | |
對于 IPv4,逆向查找域為 in-addr.arpa | 對于 IPv6,用于逆向查找的域為 ip6.arpa,如果找不到, 那麼會使用 ip6.int(請參閱 API getnameinfo()-擷取套接字位址的名稱資訊,以擷取詳細資訊) | |
動态主機配置協定(DHCP) | DHCP 用于動态擷取 IP 位址及其他配置資訊。IBM i 支援對 IPv4 使用 DHCP 伺服器 | 通過 IBM i 實作的 DHCP 不支援 IPv6,但是,可以通過ISC DHCP 伺服器實作 |
檔案傳輸協定(FTP) | FTP 允許通過網絡發送和接收檔案 | |
片段 | 如果一個資訊包對于要傳送它的下一鍊路來說太大,那麼可由發送方(主機或路由器)對其分段 | 對于 IPv6,隻能在源節點進行分段,且隻能在目标節點完成重新裝配;使用分段擴充報頭 |
主機表 | 将網際網路位址與主機名關聯的可配置表,例如, 127.0.0.1 用于回送。在開始 DNS 查找之前或者 DNS 查找失敗之後(由主機名搜尋優先級确定),套接字名稱解析器将使用此表 | |
IBMNavigatorfor i 支援 | IBM Navigator for i 提供完整的 TCP/IP 配置解決方案 | |
接口 | 概念性或邏輯實體,由 TCP/IP 用來發送和接收資訊包, 即使不以 IPv4 位址命名也始終與 IPv4 位址緊密關聯, 有時稱為邏輯接口 | |
可使用 IBM Navigator for i 以及 STRTCPIFC 和 ENDTCPIFC 指令彼此獨立并獨立于 TCP/IP 啟動和停止 IPv4 接口 |
網際網路控制資訊協定(ICMP) | 由 IPv4 用來進行網絡資訊通信 | 與 IPv6 的使用情況類似;然而,ICMPv6 提供一些新的屬性 |
保留了基本錯誤類型,如目标不可到達、回傳請求和應答;添加了新的類型和代碼以支援鄰節點發現和相關的功能 | ||
IGMP | IGMP 由 IPv4 路由器查找需要特定多點廣播組通信的主機,并由 IPv4 主機向 IPv4 路由器通告(主機上) 現有的多點廣播組偵聽器 | IGMP 在 IPv6 中由 MLD(多點傳播偵聽器發現)協定取代。MLD 執行 IGMP 對 IPv4 所執行的必要操作,但通過添加一些特定于 MLD 的 ICMPv6 類型值來使用 ICMPv6 |
IP 報頭 | 根據提供的 IP 選項,有 20~60 個位元組的可變長度 | 40 個位元組的固定長度; 沒有 IP 報頭選項。通常,IPv6 報頭比 IPv4 報頭簡單 |
IP 報頭選項 | IP 報頭(在任何傳輸報頭之前)可能附帶各種選項 | IPv6 報頭沒有選項;而 IPv6 添加了附加(可選)的擴充報頭。擴充報頭包括AH 和ESP(和IPv4 一樣)、逐跳擴充、路由、分段和目标。目前,IPv6 支援一些擴充報頭 |
IP 報頭協定位元組 | 傳輸層或資訊包有效負載的協定代碼,例如,ICMP | 報頭類型緊跟在 IPv6 報頭後面。使用與 IPv4 協定字段相同的值。此結構的作用是允許以後的報頭使用目前定義的範圍并且易于擴充。下一個報頭将是傳輸報頭、擴充報頭或 ICMPv6 |
IP 報頭“服務類型”位元組 | 由 QoS 和差别服務指定通信類 | 但使用不同的代碼來指定 IPv6 流量類。目前,IPv6 不支援 TOS |
LAN 連接配接 | LAN 連接配接由 IP 接口到達實體網絡,存在許多類型,例如,令牌環和以太網。有時,它被稱為實體接口、鍊路或線路 | IPv6 可與任何以太網擴充卡配合使用并且可通過虛拟以太網在邏輯分區間使用 |
第2 層隧道協定(L2TP) | 可将 L2TP 看作是虛拟 PPP,并通過任何支援的線路類型工作 |
回送位址 | 回送位址是位址為127.*.*.*(通常是127.0.0.1)的接口,隻能由節點向自身發送資訊包。該實體接口(線路描述) 被命名為 *LOOPBACK | 與 IPv4 的概念相同。單個回送位址為 0000:0000:0000:00 00:0000:0000:0000:0001 或 ::1(簡短版本)。虛拟實體接口被命名為 *LOOPBACK |
MTU | 鍊路的MTU 是特定鍊路類型(如以太網或數據機) 支援的最大位元組數。對于 IPv4,最小值一般為 576 | IPv6 的 MTU 下限為 1280 個位元組,也就是說,IPv6不會在低于此極限時對資訊包分段。要通過位元組數小于 1280 的 MTU 鍊路發送 IPv6,鍊路層必須以透明的方式對 IPv6 資訊包進行分段及合并 |
Netstat | Netstat 是一個用于檢視 TCP/IP 連接配接、接口或路由狀态的工具。在使用 IBM Navigator for i 和字元界面時可用 | |
網絡位址轉換(NAT) | 內建到 TCP/IP 中的基本防火牆功能,是使用 IBMNavigator for i 配置的 | 目前,NAT 不支援 IPv6。通常,IPv6 不需要 NAT。IPv6 擴充了位址空間,解決了位址短缺問題并使重新編号變得更加容易 |
網絡表 | IBM Navigator for i 上一個将網絡名稱與無掩碼的 IP位址相關聯的可配置表。例如,主機網絡 14 與 IP 位址1.2.3.4 | 對于 IPv6,目前此表不變 |
節點資訊查詢 | 不存在 | 一種簡易的網絡工具,其工作方式應類似于 Ping,隻是内容不同:IPv6 節點可查詢目标 DNS 名稱的另一個 IPv6 節點、IPv6 單點廣播位址或 IPv4 位址。目前不支援 |
開放式最短路徑優先協定 (OSPF) | OSPF 是在優先于 RIP 的較大型自治系統網絡中使用的路由器協定 | |
資訊包過濾 | 資訊包過濾是內建到 TCP/IP 中的基本防火牆功能。它是通過 IBM Navigator for i 配置的 | 資訊包過濾不支援 IPv6 |
資訊包轉發 | 可将 IBM i TCP/IP 堆棧配置為轉發其接收到的非本地IP 位址的 IP 資訊包。通常,入站接口和出站接口各自連接配接到不同的 LAN | 資訊包轉發對 IPv6 的支援有限。IBM i TCP/IP 堆棧不支援作為路由器而執行的鄰節點發現 |
Ping | Ping 是測試可達性的基本 TCP/IP 工具。在使用 IBM Navigator for i 和字元界面時可用 | |
點到點協定(PPP) | PPP 支援基于各種數據機和線路類型的撥号接口 | |
端口限制 | IBM Navigator for i 允許使用者配置已選擇的 TCP 或使用者資料報協定(UDP)端口号或端口号範圍,以便隻對 特定概要檔案可用 | IPv6 的端口限制與 IPv4 的端口限制完全相同 |
端口 | TCP 和 UDP 有 獨 立 的 端 口 空 間, 分 别 由 範 圍 為1~65 535 的端口号辨別 | 對于 IPv6,端口的工作與 IPv4 相同。因為它們處于新位址系列,現在有 4 個獨立的端口空間。例如,有應用程式可綁定的兩個TCP 端口 80 空間,一個在 AF_INET中, 另一個在 AF_INET6 中 |
專用位址和公用位址 | 除由IETF RFC1918 指定為專用的 3 個位址範圍 10.*.*.* (10/8)、172.16.0.0 至 172.31.255.255(172.16/12) 和 192.168.*.*(192.168/16) 之外, 所有 IPv4 位址都是公用的。專用位址域通常在組織内部使用。專用位址不能通過網際網路路由 | IPv6 有類似的概念,但還有重要差别 |
位址是公用的或臨時的,先前稱為匿名位址。請參閱RFC3041。與 IPv4 專用位址不同,臨時位址可進行全局路由。動機也不一樣:IPv6 臨時位址要在它開始通信時屏蔽其客戶機的身份(涉及隐私)。臨時位址的生存期有限,且不包含是鍊路(MAC)位址的接口辨別。它們 通常與公用位址沒有差別 | ||
IPv6 具有受限位址作用域的概念,它由設計的作用域指定(請參閱位址作用域) |
協定表 | 在 IBM Navigator for i 中,協定表是将協定名稱與其配置設定的協定号關聯(例如,将UDP 與17 關聯)的可配置表。随系統傳遞的隻有少量的項:IP、TCP、UDP 和 ICMP | 該表可與 IPv6 直接配合使用而不需要更改 |
QoS | QoS 允許為 TCP/IP 應用程式請求資訊包優先級和帶寬 | 目前,通過 IBM i 實作的 QoS 不支援 IPv6 |
重新編号 | 重新編号通過手工重新配置完成,可能存在 DHCP的例外情況。通常,對于站點或組織,重新編号是應盡可能避免複雜且煩瑣的過程 | 重新編号是 IPv6 的一個重要結構元素,特别是在 /48 字首中已很大限度上實作自動化 |
路由 | 從邏輯上講,是一組 IP 位址(可能隻包含 1 個)的映射,這些 IP 位址映射為實體接口和單個下一中繼段 IP位址。使用該線路将其目标位址定義為該組的一部分的 IP 資訊包轉發至下一中繼段。IPv4 路由與 IPv4 接口關聯,是以,它是一個 IPv4 位址 | 從概念上講,與 IPv4 類似。一個重要的差别是:IPv6路由與實體接口(鍊路,如 ETH03)而不是接口相關聯(綁定)。路由與實體接口相關聯的一個原因是 IPv6與 IPv4 的源位址選擇功能不同,具體請參閱源位址選擇 |
預設路由為 *DFTROUTE | ||
路由資訊協定(RIP) | RIP 是路由守護程式支援的路由協定 | 目前,RIP 不支援 IPv6 |
服務表 | IBM i 上的一個可配置表,它将服務名稱與端口和協定關聯(例如,将服務名稱 FTP 與端口 21、TCP 及使用者資料報協定(UDP)關聯) | 對于 IPv6,此表不變 |
服務表中列出了大量衆所周知的服務。許多應用程式使用此表來确定要使用哪個端口 | ||
簡單網絡管理協定(SNMP) | SNMP 是一個用于系統管理的協定 |
套接字API | 應用程式通過 API 來使用 TCP/IP。不需要 IPv6 的應用程式不受為支援 IPv6 所做的套接字更改的影響 | IPv6 使用新的位址系列:AF_INET6 增強了套接字以便應用程式現在可使用 IPv6 |
設計了這些增強以便現有的 IPv4 應用程式完全不受IPv6 和 API 更改的影響。希望支援并發 IPv4 和 IPv6 通信或純 IPv6 通信的應用程式可以容易地适應使用 IPv4 映射的 IPv6 位址格式 ::ffff:a.b.c.d,其中,a.b.c.d 是客戶機的IPv4 位址 | ||
新的 API 還支援從文本至二進制及從二進制至文本的IPv6 位址轉換 | ||
有關 IPv6 的套接字增強的更多資訊, 請參閱使用 AF_ INET6 位址系列 | ||
源位址選擇 | 應用程式可指定源 IP[通常,使用套接字bind()]。如果它綁定至 INADDR_ANY,就根據路由來選擇源 IP | 與 IPv4 一樣, 應用程式可使用 bind() 指定源 IPv6位址。和 IPv4 類似,它可通過使用 in6addr_any 讓系統選擇IPv6 源位址。但是,因為IPv6 線路有許多IPv6位址, 是以選擇源 IP 的内部方法不同 |
啟動和停止 | 請使用 STRTCP 或 ENDTCP 指令來啟動或結束 IPv4。當運作 STRTCP 指令來啟動 TCP/IP 時,IPv4始終處于啟動狀态 | 請使用 STRTCP 或 ENDTCP 指令的 STRIP6 參數來啟動或結束 IPv6。當 TCP/IP 已啟動時,IPv6 可能未啟動。稍後,可獨立啟動 IPv6 |
如果 AUTOSTART 參數設定為 *YES(預設值),那麼任何 IPv6 接口都會自動啟動。IPv6 必須與 IPv4 配合使用或配置。當啟動 IPv6 時,會自動定義并激活 IPv6回送接口 ::1 |
Telnet | Telnet 允許登入并使用遠端計算機,就好像直接與其連接配接一樣 | |
跟蹤路由 | 跟蹤路由是進行路徑确定的基本 TCP/IP 工具。在使用IBM Navigator for i 和字元界面時可用 | |
傳輸層 | TCP、UDP 和 RAW | IPv6 中存在相同的傳輸 |
未指定位址 | 顧名思義,未定義的位址。套接字程式設計将 0.0.0.0 用作INADDR_ANY | 定義為 ::/128(128 個 0 位)。它在某些鄰節點發現資訊包和各種其他的上下文(如套接字)中用作源 IP。套接字程式設計将 ::/128 用作 IN6ADDR_ANY |
虛拟專用網絡(VPN) | VPN(使用 IPSec)允許在現有的公用網絡上擴充安全的專用網絡 |