我國IPv6建置發展計畫第五次主持人協調會會議議程

Similar documents
Microsoft PowerPoint - ch1 [相容模式]

財金資訊-80期.indd

ebook140-8

第 7 章 下 一 代 网 际 协 议 IPv6 141 足 的 措 施 只 能 是 权 宜 之 计 (3) 路 由 表 膨 胀 早 期 IPv4 的 地 址 结 构 也 造 成 了 路 由 表 的 容 量 过 大 IPv4 地 址 早 期 为 网 络 号 + 主 机 号 结 构, 后 来 引 入

IP505SM_manual_cn.doc

ARP ICMP

AL-M200 Series

ebook140-9

工程师培训

untitled

R3105+ ADSL

Microsoft PowerPoint - 03.IPv6_Linux.ppt [相容模式]

9 Internet 10 Internet

TCP/IP TCP/IP OSI IP TCP IP IP TCP/IP TCP/IP

Microsoft PowerPoint - 数据通信-ch1.ppt

一.NETGEAR VPN防火墙产品介绍

untitled

Symantec™ Sygate Enterprise Protection 防护代理安装使用指南

ebook140-11

第 1 章 概 述 1.1 计 算 机 网 络 在 信 息 时 代 中 的 作 用 1.2 计 算 机 网 络 的 发 展 过 程 *1.2.1 分 组 交 换 的 产 生 *1.2.2 因 特 网 时 代 *1.2.3 关 于 因 特 网 的 标 准 化 工 作 计 算 机 网 络 在

经华名家讲堂

Chapter #

Windows RTEMS 1 Danilliu MMI TCP/IP QEMU i386 QEMU ARM POWERPC i386 IPC PC104 uc/os-ii uc/os MMI TCP/IP i386 PORT Linux ecos Linux ecos ecos eco

SL2511 SR Plus 操作手冊_單面.doc

AL-MX200 Series

C3_ppt.PDF

Simulator By SunLingxi 2003

计算机网络概论

UDP 8.2 TCP/IP OSI OSI 3 OSI TCP/IP IP TCP/IP TCP/IP Transport Control Protocol TCP User Datagram Protocol UDP TCP TCP/IP IP TCP TCP/IP TC

一、选择题

Microsoft Word - DIR-615_B2_Manual_1.00_T_.doc

end to end 7.2 OSI 7 OSI 3 A B 7.2 Packet Routing LAN WAN

Windows 2000 Server for T100

untitled

计算机网络

ebook67-9

2002/4/24 Toshiba Corp., PC PC IPv6 ) isl.rdc.toshiba.co.jp

OSI OSI 15% 20% OSI OSI ISO International Standard Organization 1984 OSI Open-data System Interface Reference Model OSI OSI OSI OSI ISO Prototype Prot

NSC-161

epub 61-2


IC-900W Wireless Pan & Tilt Wireless Pan & Tilt Remote Control / Night Vision FCC ID:RUJ-LR802UWG

第3章 计算机网络体系结构

RAQMON Context Setting MG PDA Applications RTP / FTP/ HTTP TCP/UDP S ignaling control plane (e.g. RS VP, NS IS) Streaming Media, Transaction, Bulk dat

ansoft_setup21.doc

《计算机网络》实验指导书

¶C¶L§§¬_™¨ A.PDF

投影片 1

網路安全:理論與實務 第二版

计 算 机 网 络 基 础 任 务 教 程 () 组 成 计 算 机 网 络 的 每 台 计 算 机 都 是 独 立 的 即 计 算 机 之 间 没 有 明 显 的 主 从 关 系, 每 台 计 算 机 可 以 连 网 工 作, 也 可 以 不 连 网 工 作 (2) 建 立 计 算 机 网 络 的

1 1 2 OSPF RIP 2

1

Master Thesis_專門用來製作目錄.doc

ebook67-1

第3章

ebook177-1

DOS下常用的网络命令.PDF

Serial ATA ( Silicon Image SiI3114)...2 (1) SATA... 2 (2) B I O S S A T A... 3 (3) RAID BIOS RAID... 5 (4) S A T A... 8 (5) S A T A... 10

投影片 1

1 SQL Server 2005 SQL Server Microsoft Windows Server 2003NTFS NTFS SQL Server 2000 Randy Dyess DBA SQL Server SQL Server DBA SQL Server SQL Se

ch08.PDF

SAPIDO GR-1733 無線寬頻分享器

QL1880new2.PDF

目 彔 1. 准 备 工 作 登 彔 设 置 功 能 说 明 实 时 监 控 基 本 控 制 功 能 设 置 画 质 调 节 彔 像 与 抓 拍

自由軟體教學平台

LinuxÓû§»ù´¡

自由軟體教學平台

TCP/IP LAN : : IPv4 NGI, NGN, GENI, AGN, Veno II 2

ebook71-13

IP Access Lists IP Access Lists IP Access Lists

8 怎 么 实 现 IPv4 到 IPv6 的 平 稳 过 渡? 能 否 告 知 需 要 什 么 样 的 拨 号 软 件 可 以 支 持, 前 面 过 相 似, 我 们 建 议 的 其 实 一 个 路 线 图 目 前 阶 段 用 NAT44+6rd 如 果 你 使 用 vista/win7, 那 么

untitled

第 11 章 互聯網技術 11.1 互聯 網 和 萬 維 網 的 發 展 歷 史 A. 互聯網的發展 互聯網是由 ARPANET 開 始發展的 1969 年 美國國防部高級研究計劃署 (ARPA) 把部分軍事研究所和大 的電腦連接起來 建造了㆒個實驗性的電腦網絡 稱為 ARPANET 並 列 的功能

飞鱼星多WAN防火墙路由器用户手册

NNM_Advance_DS_FNL.qxd

KillTest 质量更高 服务更好 学习资料 半年免费更新服务

IS-IS路由协议中文教程v1

ch09.PDF

SIP/ENUM Trial

GPRS IP MODEM快速安装说明

BYOD Http Redirect convergence Client (1) 2008R2 NLB( ) (2) NLB Unicast mode switch flooding (arp ) NLB DNS Redirect 1. Round-Robin DNS DNS IP/DNS Cli


穨CAS1042快速安速說明.doc

epub83-1

(UTM???U_935_938_955_958_959 V )

A API Application Programming Interface 见 应 用 程 序 编 程 接 口 ARP Address Resolution Protocol 地 址 解 析 协 议 为 IP 地 址 到 对 应 的 硬 件 地 址 之 间 提 供 动 态 映 射 阿 里 云 内

K7VT2_QIG_v3

IPv6 Multicast骨幹網路建置參考

epub

计算机网络概论

<4D F736F F F696E74202D20A1B6CFEEC4BFD2BB20B3F5CAB6BCC6CBE3BBFACDF8C2E7A1B7C8CECEF1C8FD20CAECCFA A1A24950D0ADD2E9BACD4950B5D8D6B72E707074>

Chapter 2

SEC-220

中文朗科AirTrackTM T600 迷你无线路由器用户手册.doc

( CIP) /,. - :, ISBN TP312 CIP ( 2004 ) : ( ) : : : : /16 : 21 : 347 : : : I

Microsoft PowerPoint - Aqua-Sim.pptx

Cadence SPB 15.2 VOICE Cadence SPB 15.2 PC Cadence 3 (1) CD1 1of 2 (2) CD2 2of 2 (3) CD3 Concept HDL 1of 1

Bus Hound 5

自由軟體教學平台

Transcription:

IPv6 產業人才培育教材 -IPv6 網路協定概要 九十九年度 新一代網際網路協定互通認證計畫 期末研究報告附件 IPv6 產業人才培育教材 IPv6 網路協定概要 產業發展分項計畫子計畫二 IPv6 人才培育主持人 : 廖岳祥教授執行單位 : 亞洲大學中華民國九十九年十月 875

876

History of IP Network Introduction to IPv6 IPv6 Header Format IPv6 Host IP Configuration Feature of IPv6 Protocol 2010/12/7 2 877

Internet 起源 1969 年, 美國國防部 (DoD) 開立的美國國防部高等研究計劃局 (ARPA) 建立 ARPANet 1973 年, 全錄公司帕洛亞托研究中心 (PARC), 成功發展出乙太網路 (Ethernet) 1986 年, 美國國家科學基金會根據原先 ARPANet 使用的 TCP/IP 通訊協定, 建立了 NSFNet 1991 年, 國家科學基金會正式宣佈開放於商業用途使用 1993 年,WWW 介面問世 2010/12/7 3 網路的趨勢與發展 Moore s Law: 平均每 18 個月晶片的容量會成長一倍, 而成本卻減少一倍 New Moore s Law- 光纖定律 : 網際網路頻寬每九個月就會增加一倍的容量 而成本降低一半 2010/12/7 4 878

台灣的網際網路發展 1986 年, 幾所國立大學院校之相同廠牌的電腦主機加以電信局的數據線路連接, 形成 IFNET 與 UNINET 兩個網路 教育部電算中心與台灣 IBM 公司 教學研究資訊服務 合作計畫, 連線到台大等十五個學校, 發展至後來建立的 TANet 1987 年, 連線日本 BITNET 國際學術網路, 透過與日本東京理科大學 (SUT) 與全世界 BITNET 節點互傳訊息 1989 年, 教育部電算中心研擬 大學高速學術網路 (TANet) 取代 BITNET, 以 FDDI 網路為骨幹架構, 各校內以 Ethernet 形成校園區域網路, 架構於各主要大學之間 1990 年, 校際之間網路通訊協定採 TCP/IP 標準, 將此命名為台灣學術網路 以 Internet 架構之 9.6kbps 專線串接校際 1991 年,TANetT1 骨幹開始運作,12 月以 64kbps 接通美國美國普林斯頓大學 JvNCnet, 並可直接連通美國國家科學基金會網路 (NSFNET) 骨幹, 正式開啟我國 Internet 的時代 2010/12/7 5 全球 DNS 有註冊的主機數量 2010/12/7 6 879

為什麼要 IPv6? 很明顯 IPv4 的位址空間已經到了一個極限, 也就是說, 目前 32bit IP 位址用完的那天即將要來臨, 而之所以 IP 位址越來越少, 來至以下原因 : 1. 最近幾年網際網路的逢勃發展 2. 越來越多的網路使用者從以往的動態式的撥號網路轉換成固定式的 DSL/Cable 連線網路 3. 網際網路應用程式的激增 ( 會使用到網路資源的應用程式 ) 4. 對於行動電話的新興網路服務需求增加 NAT 是主要用來解決網路位址短缺的方法, 同時為網路使用者帶來一連串新問題, 最主要是由於喪失點對點的透明性和連結性 在 80 年代, 由於 IPv4 被無計劃性的分發使用, 使得網路位址被不平均的分配, 引起大量的路由項目 (Routing Entries) 並轉而影響到整個網際網路發展的擴張性,CIDR(Classless Inter-Domain Routing) 的提出, 暫時解決此問題, 但要一個長久的治本方法, 唯有汰換成 IPv6 的架構, 才得以解決 2010/12/7 7 IPv4 位址枯竭聲明依據國際組織亞太網路資訊中心 (APNIC) 統計研究發現目前 IP(Internet Protocol) 網路仍以 IPv4(Internet Protocol version 4) 為主, 但 IPv4 位址可能於西元 2010 年前後將面臨沒有 IPv4 位址可核發, 為解決 IPv4 位址耗盡及協定本身之各項問題 ( 如 :Security Mobility QoS 等 ), 國際網路技術標準組織 IETF 早已發展 IPv6(Internet Protocol version 6) 協定來予以因應 2010/12/7 8 880

IPv6 的發展 1992 年,IETF 之 IPv4 的 Address 空間不足的問題開始被檢討 1994 年, 下一代的網際網路協定開始被提案,CATNIP (Common Architecture for the Internet),TUBA (TCP/IP with Bigger Addresses),SIPP (Simple Internet Protocol Plus) 三個提案中出線 1995 年,SIPP 被更名為 IPv6, IPv6 的規範將被 RFC1752(The Recommendation for the IP Next Generation Protocol) 公開 1998 年,IPv6 之位址架構與通訊協定之規範分別在 RFC2373 (IP Version 6 Addressing Architecture) 與 RFC2460(Internet Protocol Version 6(IPv6) Specification) 公開 1999 年, 全球第一個業界團體 ( 共有 42 個單位加盟 ) 成立了 IPv6 Forum ARIN 將全球第一個之 IPv6 Prefix:2001 授予給 ESnet 2002 年, 全球各區域性的 Internet Registry RIR(Regional Internet Registries) 實施新的 IPv6 Address Allocation and Assignment Global Policy 2010/12/7 9 2010/12/7 10 881

網路的基本協定 :OSI 與 TCP/IP 網際網路目的是讓電腦能互相溝通 正如人與人相互對話一樣, 只懂中文的人是無法跟只懂英文的人對談的, 因此, 要達成此目的有一必要條件 : 讓電腦說共同的語言 這樣的語言稱之為電腦的通訊協定 (Protocol) 2010/12/7 11 OSI 模型 1980 年國際標準組織 ISO(International Organization for Standardization) 制定 OSI (Open System Interconnection) 基本模型 網路架構模型分成 7 層 (7-Layer Reference Model) 堆疊式的多層模型即稱作協定堆疊 (Protocol Stack) 2010/12/7 12 882

OSI 協定堆疊 2010/12/7 13 OSI 協定的組成 Layer 名稱協定 7 應用層 VT DS FATM CMIP/CMIS MHS ACSE, RTSE, ROSE 6 表現層 OSI Presentation 5 會談層 OSI Session 4 傳送層 TP0, TP1, TP2, TP3, TP4 3 網路層 ES-IS, IS-IS X.25 PLP ANS.1 CLNS 2 鏈結層 IEEE802.3 HDLC, LAP-B 1 實體層 IEEE802.3, 802.4, 802.5, FDDI RS-232C, X.21, RS-449, V.35, ISDN 2010/12/7 14 883

OSI 模型層與層間的關係 2010/12/7 15 DoD 模型 當初 ARPANet 實驗計畫開發出來模型, 又稱為 ARPANet 模型 TCP/IP 是依此建立出來, 又有人稱為 TCP/IP 模型 先成為公認準則後, 才正式成為標準文件 (RFC: Request For Comments) 的一部分, 因此被稱為通信協定的 The Fact Standard 2010/12/7 16 884

DoD 模型層與層間的關係 2010/12/7 17 兩種模型與實際協定對照圖 2010/12/7 18 885

History of IP Network Introduction to IPv6 IPv6 Header Format IPv6 Host IP Configuration Feature of IPv6 Protocol 2010/12/7 19 IP 的角色 網路的門牌號碼 :IP, 位於網路堆疊的中心位置, 兼容不同的網路介面, 對 Transport Protocol 或 Application 提供統一的通訊方式 2010/12/7 20 886

IP 位址分配的組織 以紐約的 IANA 為中心, 依區域分成四個區域註冊中心 (Regional Internet Registries): 歐洲地區 :RIPE NCC(Réseaux IP Européens Network Coordination Centre) 北美地區 :ARIN(American Registry for Internet Numbers) 亞太地區 :APNIC(Asia Pacific Network Information Centre) 拉丁美洲 :LACNIC(Latin American and Caribbean IP address Regional Registry) 2010/12/7 21 IP 的演進 1981 年 9 月,RFC791 制定 IPv4 的版本, 從誕生迄今大約經過 20 年的時間 在這段期間電腦的技術有很大的進步, 出現各式各樣在當初設計 IPv4 時所未被設想到的使用型態 網路的急速普及化, 也使得現在的網路規模遠超過設計當初的預期 1981 年 9 月,RFC791 規定 IPv4 未被設想到的使用型態 - 可移動的節點 網路的急速普及化 - 網路規模遠超過設計當初的預期 1990 年代前期,IETF 開始檢討以下的 3 個問題 今後網路發展的預測及仰賴 IPv4 所能維持的極限 IPv4 的延續策略 設計新的 IP 及策定轉移計畫 2010/12/7 22 887

IPv4 的極限 IP 位址數的不足 類別基礎的 IP 位址分配方法, 類別 C 的 IP 位址是以最後 8 位元為網路大小, 真正單位所需要的 IP 位址數跟實際上所分配到的 IP 位址數會有所差距, 造成位址分配較沒有彈性 路由表太大 接續上的網路數量增加的話, 路由表也會跟著變大 解決的方法 2010/12/7 CIDR NAT IPv6 23 IPv4 位址的分配類別 類別網路位址主機位址 最多主機數量 可分配的組織數 A 8 位元 24 位元 16,777,214 128 B 16 位元 16 位元 65,534 16,384 C 24 位元 8 位元 254 2,097,152 2010/12/7 24 888

IPv4 位址的類別 2010/12/7 25 IPv4 與 IPv6 格式介紹 2010/12/7 26 889

IP 路由 決定要經過何種路徑能到達 IP 位址所表示的目的架構 Datagram (Per Packet) Hop by Hop 參照路徑表 2010/12/7 27 CIDR 廢止 IP 分類方式, 讓一單位可被分配幾個連續的類別 C 位址 (Subnet 大小不一定的 8 的倍數, 而是可變動的 ) 加入維持路徑表大小的技術, 利用路由彙整方式來維持路由表的大小 遭遇困難 : 匯集的網路都必須是集中在附近的 各地域與國家 沿著 Network 的接續構造來分割區塊進而作分配 目前實際依組織分配, 散佈全球的 IP 規劃是大不相同的, 實際達成的可能性微乎其微 2010/12/7 28 890

NAT Network Address Translation 只對出入閘道分配真實位址, 內部的主機則採用私有位址的方式 以閘道器來做轉換 遭遇問題 : 沒有真實位址, 無法達成 P2P 通信 安全性問題 效能不彰 2010/12/7 29 IPv6 IPv4 的各式延續策略, 讓 IP 的短缺暫時脫離了窘境, 然而, 這些方法終究會到達極 限 新一代的 IP 協定的考量 相符於 IPv4 於目前協定堆疊中的流程 基本的動作相同 更單純化的 Protocol 解決至目前為止的問題點 位址空間的不足 Multicast Mobile 更容易運用 Plug and Play Security 可因應後續長時間的發展 2010/12/7 容易擴充新功能 容易自 IPv4 轉移 30 891

IPv6 的發展 最初被稱為下一代 IP(Ipng : IPThe Next Generation) 的協定 CATNIP TUBA 與 SIPP 三種協定, 是最被任認可的版本 IETF 最後決定採用 SIPP 1995 年 SIPP 被更名為 IPv6 2010/12/7 31 IPv5? Internet 的版本序號是由 IANA 管理 第五版被 RFC1190(Experimental Internet Stream Protocol, Version 2(ST-Ⅱ)) 歸為實驗型行的 Protocol 新的 IP 版本就成了第六版 版本序號 :7 8 9 及 15 都已被預約了, 沒被預約的只有 10~14 因此當下一次再有 IP 的下一版本要提出時, 應該是用第十版 2010/12/7 32 892

IPv6 的特徵 提供新的定址方式 可擴充新的通信協定 2010/12/7 33 位址空間的擴充 版本位元數位址數量 IPv4 32 4,294,967,296 個 IPv6 128 340,282,366,920,938,463,463,374,60 7,431,768,211,456 個 ( 3.4x10 38 ) 2010/12/7 34 893

Why not > 128 bits? 考慮到 IP 標頭處理所造成的浪費 協定標頭長度 M T U 標頭浪費 IPv4 20Bytes 576Bytes 3.5% IPv6 40Bytes 1,280Bytes 3.1% 位址空間擴充, 但標頭浪費卻幾乎不變, 可以判斷這樣的位址長為 128Bits 是否妥當 2010/12/7 35 IPv4 與 IPv6 格式介紹 2010/12/7 36 894

標頭的簡化 刪除許多 IPv4 的欄位 標頭長度 識別子 (Identifier) 分段位移 (Fragmentation Offset) 檢查碼 (Checksum) 服務類別 (Type of Service) 減輕網路中路由器的負擔 IPv6 的基本標頭從可變長度變更成固定長度 取消路由器對封包的分割處理 刪除 Checksum 機制 2010/12/7 37 可擴充協定標準 IPv4 使用 Option 欄位, 但只限於一個標頭內 IPv6 除基本標頭外, 可再加上一或多個延伸標頭來形成 IPv6 Basic 標頭 + Extension 標頭 (s) + Data 2010/12/7 38 895

其他特徵 即插即用 DHCPv6 Stateful 自動設定 Stateless 自動設定 並可存於原有 IPv4 的環境下進行通信 強化的安全性 內建 IPsec 更好的服務品質管控 (QoS) 2010/12/7 39 History of IP Network Introduction to IPv6 IPv6 Header Format IPv6 Host IP Configuration Feature of IPv6 Protocol 2010/12/7 40 896

IETF 公開的標準 首先提案 :1995 年 12 月 RFC1883(Internet Protocol, Version6(IPv6) Specification) 目前的標準規範 :1998 年 12 月 RFC2460(Internet Protocol, Version6(IPv6) Specification) 位址的分配方式 : 2003 年 4 月 RFC3513(Internet Protocol Version 6 (IPv6) Addressing Architecture) 2010/12/7 41 IPv4 Packet 傳送架構 2010/12/7 42 897

Local Network 標頭 2010/12/7 43 IPv4 傳送架構欄位 IPv4 標頭 ( 包含 Option) 相當於 OSI 參考模型中第 3 層的協定, 是 TCP/IP 最重要的部分 不含 Option 時, 標頭長度為 20Byte 包含 Option 時, 即為可變長度 TCP/UDP 標頭 相當於 OSI 參考模型的第 4 層 (Transport 層 ) 之 Protocol,TCP 不含 Option 時其標頭長度為 20Byte, 包含 Option 時, 則為可變長度 使用 UDP 時, 標頭長度為 8Byte Application Data 上三層中各式的 Service 所產生的資料 Local Network Layer Tailer 對應於 Local Network 標頭 也就是說, 附加於 Local Network Protocol 之 Packet 的最尾端, 與 OSI 參考模型的第 1 層及第 2 層 ( 物理層及 Data Link 層 ) 相對應 以 Ethernet 而言,Tailer 為附有 4Byte 之 FCS(Frame Check Sequence) 的資料, 可確認 Frame 有無正常運作 2010/12/7 44 898

IPv6 Packet 傳送架構 與 IPv4 不同處 2010/12/7 45 IPv4 Header 於 IPv6 取消或變更的欄位 2010/12/7 46 899

IPv4 Header 欄位 -1 Version (4 Bits) 表示 Internet Protocol 的版本號碼 IPv4 為 0100 IHL:Internet Header Length (4 Bits) 表示 IP 標頭長度的欄位 每 32 Bits(4Bytes) 為一個單位 TOS:Type of Service (8 Bits) 指定 IP Service 品質需求的欄位 因定義不明確導致相互運用不便, 實際上不太被廣泛使用 Total Length (16 Bits) 以 Byte 為單位表示封包的總長度, 長度包含 IP 標頭及資料 2010/12/7 47 IPv4 Header 欄位 -2 Identification (16 Bits) 記錄被分割的封包, 重新組合時的參考資料 Flags (3 Bits) 此旗標是在記錄經分割的封包之後是否還有其他封包存在 Fragment Offset (13 Bits) 表示被分割的資料, 在 Datagram 中的原始位置 Time of Live (8 Bits) 記錄封包可在網路內停留的最長秒數 實際的運用是以通過路由器的台數 (Hop Count) 來計算 2010/12/7 48 900

IPv4 Header 欄位 -3 Protocol (8 Bits) 顯示 IP 的上層 (TCP 或 UDP 等 ) 協定代碼 Header Checksum (16 Bits) 用來檢查標頭內是否有錯誤用 Source Address (32 Bits) 封包來源的 IPv4 位址 Destination Address (32 Bits) 封包目的地的 IPv4 位址 2010/12/7 49 IPv4 Header 欄位 -4 Option ( 可變長度 ) 包含加密等種種附加的服務功能參數都包含在此欄位 Padding ( 可變長度 ) 此欄位的功用為, 使用 Option 時, 當 Option 欄位資料的大小不為 32 Bits 的整數倍時, 以 0 填滿, 是其成為 32 Bits 的整數倍 2010/12/7 50 901

IPv4 Header 欄位 -5 2010/12/7 51 IPv4 Header 欄位 -6 Version (4 Bits) 表示 Internet Protocol 的版本號碼 IPv6 即為 0110 Traffic Class (8 Bit) 表示封包的類別或優先度 這個欄位與 IPv4 之 Service Type 提供相同的功能 Flow Label (20 Bit) 顯示封包所屬的 Flow 編號 在不支援 Flow Label 欄位的機能的主機或路由器上, 會使用其預設值 0 Payload Length (16 Bit) 以無號整數表示在 IPv6 基本標頭之後剩下的封包長度, 以 Byte 為單位計算 2010/12/7 52 902

IPv4 Header 欄位 -7 值 (10 進位 ) 下一個標頭的種類 0 Hop By Hop Option Header 6 TCP 17 UDP 41 Capsule IPv6 Header 43 Routing Header 44 Fragment Header 46 Resource Reservation Protocol 50 Security Payload Capsule Header (RFC2406) 51 Authentication Header (RFC2402) 58 ICMPv6 59 No Next Header 60 Destination Option Header Next Header (8 Bits) 2010/12/7 53 IPv4 Header 欄位 -8 Hop Limit (8 Bits) 以無號數表示 IPv6 封包被捨棄之前最多可經過的節點數 Source Address (128 Bits) 封包來源的 IPv6 位址 Destination Address (128 Bits) 封包目的地的 IPv6 位址 一般來說, 會設定為最終目的地的位址, 但若延伸標頭中有 Routing Header 存在時, 則不設定最終目的地, 而是設定於 Source Routing List 所記錄的下一個 Route Interface 的位址 2010/12/7 54 903

Option 的功能 並不是所有的 IPv6 封包都需使用延伸標頭 : 當遇到沒有支援的延伸標頭時, 回覆給對方 ICMP Parameter Problem Message (Type=1, Code=1), 將封包捨棄 有延伸標頭, 但附有延伸標頭的 Option 不被支援時, 對 Option 編號要求錯誤處理 2010/12/7 55 IPv6 封包延伸標頭的例子 2010/12/7 56 904

延伸標頭完全實作的標準 Hop By Hop Option Header(RFC2460) Routing Header (Type 0) (RFC2460) Fragment Header(RFC2460) Destination Option Header(RFC2460) Authentication Header (RFC2402) Security Payload Capsule (ESP : Encapsulating Security Payload) Header (RFC2406) 2010/12/7 57 延伸標頭出現的順序 1.IPv6 header 2.Hop-by-Hop Options header 3.Destination Options header 4.Routing header 5.Fragment header 6.Authentication header 7.Encapsulating Security Payload header 8.Destination Options header 2010/12/7 58 905

Hop By Hop Option Header Next Header (8 Bits) 顯示緊接於 Hop By Hop Option 標頭之後連續標頭的種類 Hdr Ext Len (Header Extension Length) (8 Bits) 以無號數來表示 Hop By Hop Option 標頭的長度, 以 8 Bytes 為單位 這個長度沒有包含 Hop By Hop Option 標頭最初的 8 Bytes Options ( 可變長度 ) 含一個以上以 TLV (Type-Length-Valve) 方式編碼的選項 2010/12/7 59 Routing Header Next Header (8 Bits) - 顯示緊接於 Routing Header 之後連續標頭的種類 Hdr Ext Len (Header Extension Length) (8 Bits) - 以無號數來表示 Hop By Hop Option 標頭的長度, 以 8 Bytes 為單位 Routing Type (8 Bits) - 表示特定的路由型態 Segments Left (8 Bits) - 以無號數來表示來表示剩餘 Segment 數, 顯示出到達最終目的地必通過之路徑的 Segment 數 Type-Specific Data ( 可變長度 ) - 此欄位的內容與型式由指定的 Routing Type 決定 2010/12/7 60 906

Source Routing (Routing Type=0) LSRR (Loose Source and Record Route) 對於路徑上 Segment, 會傳達已傳送位址後下一個目的位址不緊鄰也可以傳達訊息 SSRR (Strict Source and Record Route) 對於路徑上的 Segment, 會傳達已傳送位址後下一個目的地位址非緊鄰不可的訊息 2010/12/7 61 Source Routing 的例子 2010/12/7 62 907

Fragment Header Next Header (8 Bits) 顯示緊接於 Fragment 標頭之後連續標頭的種類 Reserved (8 Bits) 為被保留之欄位 傳送時為 0, 接收時則忽略掉 Fragment Offset (13 Bit) 無符號整數 相對於原始標頭之分割部分的起點, 跟隨在此標頭之後的資料偏移值, 以 8Bytes 為單位 M Flag (1 Bit) M Flag = 1 尚有 Fragment M Flag = 0 最終的 Fragment Identification (32 Bits) 2010/12/7 原本附加於各 Fragment 之識別子, 可於 Packet 再構成時使用 63 Destination Options Header Next Header (8 Bits) 顯示緊接於 Destination Options Header 之後連續標頭的種類 Hdr Ext Len (Header Extension Length) (8 Bits) 以無號數來表示 Destination Options Header 的長度, 以 8 Bytes 為單位 這個長度沒有包含 Destination Options Header 最初的 8 Bytes Options ( 可變長度 ) 此欄位包含一個以上的 TLV (Type-Length-Valve) 編碼的 Option 選項 2010/12/7 64 908

No Next Header 下一個標頭欄位值為 59 時, 即表示下一個延伸標頭不存在 2010/12/7 65 認證標頭 -1 Next Header (8 Bits) 顯示緊接於認證標頭之後連續標頭的種類 Payload Length (8 Bits) 認證標頭的長度, 以 4 Bytes(32 Bits) 單位表示 這個長度沒有包含認證標頭最初的 8 Bytes Reserved (16 Bits) 為被保留之欄位 傳送時為 0, 接收時則忽略掉 2010/12/7 66 909

認證標頭 -2 Security Parameter Index(SPI) (32 Bits) 這個欄位值 (SPI 值 ) 以 32 Bits 的值將此 Datagram 之 Security Association(SA) 指定出來 Sequence Number (32 Bits) 此欄位為無號數計數器, 是用於防止 SA Replay(Antireplay Protection) 用的 Authentication Data (32 Bits 倍數的可變長度 ) 此欄位值為以 32 Bits 的整數倍之可變長度, 包含為了檢查此封包的安全性之 Integrity Check Valve 值 (ICV) 無法成為 32 Bits 的整數倍時, 用 Padding 來填補 2010/12/7 67 Security Payload Capsule Header-1 2010/12/7 68 910

Security Payload Capsule Header-2 SPI:Security Parameters Index (32 Bits) 此欄位以任意之 32 Bist 的值將此 Datagram 之 Security Association SA 指示出來之識別子 Sequence Number (32 Bit) 此欄位為無號數計數器, 是用於防止 SA Replay(anti-replay Protection) 用的 Payload Data ( 可變長度 ) 此欄位值為以 32 Bits 的整數倍之可變長, 包含下一個標頭所顯示之 Data 此 Filed 是必要的 Padding ( 可變長 0~255 Bytes) 此欄位是被加密所使用 Payload Data 以加密演算法需要之 Block Size 的倍數被填入 2010/12/7 69 Security Payload Capsule Header-3 Padding Length (8 Bits) 計算前一個 Padding 的長度, 以 Bytse 為單位 數值範圍是 0~225,0 則表示沒有 Padding Byte 此欄位是必要的 Next Header (8 Bits) 顯示緊接於 Security Payload Capsule Header 之後連續標頭的種類 Authentication Data (32 Bits 倍數的可變長度 ) 此欄位值為以 32 Bits 的整數倍之可變長度, 包含為了檢查自此 ESP Packet 減去認證標頭後計算之 Packet 的安全性之 Integrity Check Valve 值 (ICV) 無法成為 32 Bit 的整數倍時, 用 Padding 來填補 2010/12/7 70 911

History of IP Network Introduction to IPv6 IPv6 Header Format IPv6 Host IP Configuration Feature of IPv6 Protocol 2010/12/7 71 IPv6 Support Hosts Operating Systems Vendor Versions supporting IPv6 More Information Apple MAC OS X 10.2 http://developer.apple.com/macosx/ BSD FreeBSD 4.0 OpenBSD 2.7, NetBSD 1.5 BSD/OS 4 2 http://www.kame.net/ HP /Compaq HP-UX 11i, Tru64 UNIX V5.1, OpenVMS V5.1 http://docs.hp.com/en/5990-7247/index.html IBM z/os Rel. 1.4, AIX 4.3, OS/390 V2R6 encs http://www01.ibm.com/software/info/ipv6/compliance.jsp Linux Red Hat 6.2, Mandrake 8.0, SuSE 7.1, Debian 2.2 http://www.bieringer.de/linux/ipv6/status/ipv6+linux - status-distributions.html Microsoft Windows Vista, XP, Server 2003, Server 2008, CE.NET, Mobile http://www.microsoft.com/ipv6/ Novell Netware 6.1 http://www.novell.com/documentation/oes2/ntwk_ipv6_nw/ index.html?page=/documentation/oes2/ntwk_ipv6_nw/data/ ai4x21f.html Sun Solaris 8, 9 and 10 http://docs.sun.com/app/docs/doc/817-0573?l=en 912

Host Equipment Windows BSD Linux Solaris Mac OS X 2010/12/7 73 IPv6 on Windows Full support Windows Vista and XP SP1 and later Windows Server 2003 and 2008 Technology preview Windows XP with no SP Windows 2000 (no compatible with SP2 or later) Developer Edition Windows NT 4.0 (Source was Available) No official support but third party products available Windows 95/98/ME Supported features: Auto-configuration, IPv4 tunnel, 6to4 tunnel, 6to4 relay, ISATAP tunnel, IPSec (Manual Keying) 2010/12/7 74 913

IPv6 in Windows Vista IPv6 is enabled by default It not only supports the basic functionalities as in previous versions (i.e. Windows XP and 2003) but also new advanced features such as Dual IP layer architecture Installed and enabled by default Graphical user interface (GUI)-based configuration Full Support for IPsec MLDv2 DNS messages over IPv6 LLMNR (Link Local Multicast Name Resolution) Literal IPv6 addresses in URLs Support for ipv6-literal.net names IPv6 over PPP DHCPv6 2010/12/7 75 Windows Vista Configuration-1 Automatic address configuration 1. Stateless address auto-configuration with IPv6 RA 2. Stateful address auto-configuration with DHCPv6 Manual address configuration 1. The GUI of the properties of TCP/IPv6 component 2. Commands in the netsh interface ipv6 context interface ipv6 add address interface name ipv6 address Address selection configuration RFC3484 provides a standardized method to choose source and destination IPv6 addresses with which to attempt connections 1. A destination address selection algorithm to sort the list of possible destination addresses in order of preference 2. A source address selection algorithm to choose the best source address to use with a destination address 2010/12/7 76 914

Windows Vista Configuration-2 Unlike XP, IPv6 in Vista cannot be uninstalled To disable IPv6 on a specific connection Network Connections folder > properties of the connection > clear the check box next to the TCP/IPv6 component This method disables IPv6 on your LAN interfaces and connections But does not disable IPv6 on tunnel interfaces or the IPv6 loopback interface To selectively disable IPv6 components and configure behaviors Create and configure the following registry value (DWORD type) HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\tcpip6\P arameters\disabled Components Disabled Components is set to 0 by default 2010/12/7 77 IPv6 in Windows XP Not installed by default, and installation varies on service packs SP1 additions: vendor support GUI installation configuration via netsh command SP2 additions Teredo client host-specific relay support IPv6 firewall 2010/12/7 78 915

IPv6 installation in Windows XP No service packs type ipv6 install from the command prompt SP1 install protocol Microsoft IPv6 Developer Edition from Connection Properties window SP2 install protocol Microsoft TCP/IP version 6 from Connection Properties window 2010/12/7 79 Windows XP configuration-1 Command for IPv6 configuration ipv6 (will be discontinued, not present in Windows Server 2003) netsh interface ipv6 Auto-configuration is working netsh interface ipv6 4 interface 1 - loopback interface 2 - ISATAP interface 3-6to4 interface interface 4 - real network interfaces interface 5 - Teredo interface 2010/12/7 80 916

Windows XP configuration-2 Set manual address netsh ipv6 interface {add set} address [interface=] <interface> [address=] <address> <interface> - interface name or index <address> - address in IPv6 format Deleting manual address netsh ipv6 interface delete address [interface=] <interface> [address=] <address> 2010/12/7 81 Windows XP configuration-3 Set/remove static IPv6 route netsh ipv6 interface {add set delete} route [prefix=]<prefix>/<length> [interface=]<interface> [[nexthop=] <address>] Applications ipconfig, netstat, ping6, tracert6, pathping All Wininet.dll based applications ftp, telnet, IExplorer, Windows 2003 server netsh interface ipv6 (only!) file/print sharing-et (site-local) supported over IPv6 IIS and media server 2010/12/7 82 917

Windows XP configuration-4 Neighbor cache netsh interface ipv6 show neighbors (ipv6 nc) IPv6 routing table netsh interface ipv6 show routes (ipv6 rt) Reconfiguration netsh interface ipv6 renew (ipv6 renew) Address selection policy netsh interface ipv6 show prefixpolicy netsh interface ipv6 set prefixpolicy [prefix=]<prefix>/<length> [precedence=]precedence [label=]label 2010/12/7 83 Windows XP configuration-5 IPSec ipsec6 sp/sa/s/l No ESP support by default NET IPv6 support, but IPv6 literal address does not work IPv6 firewall support after SP2 or Advanced networking pack IPv6 teredo support after SP2 or Advanced networking pack Further information: http://www.microsoft.com/ipv6/ Important! You should switch on IPv6 support if you have IPv6 connectivity or you have to tweak RFC3484 knobs 2010/12/7 84 918

Windows XP configuration-6 Windows XP ICF same rules for IPv4 and IPv6 Show configuration: netsh firewall show globalport netsh firewall show adapter Set configuration set globalport [port#=enable disable] [name=name] [protocol=tcp udp] set adapter [name] [icmp type#=enable disable] [port port#=enable disable [name=name] [protocol=tcp udp]] [ignoreglobalport port#=enable disable] [name=name] [protocol=tcp udp]] [filtering=enable disable] set logging [filelocation=<location>] [filesize=integer] [droppedpackets=enable disable] [successfulconnections=enable disable] After SP2 in the firewall you can configure Path MTU discovery support per process configuration possible Further information http://www.microsoft.com/technet/community/columns/cableguy/cg0104.mspx25th September 2010/12/7 85 What Windows cannot do with IPv6 DNS messages over IPv6 not for Windows XP, but Windows Vista and Server 2003 can, there is a builtin proxy for it IPv6 support for file and print sharing Windows 2003 cancan, there is a builtin proxy for it IPv6 support for the WinInet, IPHelper, and DCOM APIs 2010/12/7 86 919

Windows XP/.Net/Vista configuration(netsh) Configure an IPv6 in IPv4 tunnel netsh interface ipv6 add v6v4tunnel Name [Your IPv4 Endpoint] [Server IPv4 Endpoint] netsh interface ipv6 add address Name [Your IPv6 Endpoint] Configure a default route netsh interface ipv6 add route 0::/0 Name publish=yes Configure a static route netsh interface ipv6 add route [Tunnel Prefix]/[Prefix Length] Name Allow ICMP ping Windows XP SP1 and lower netsh firewall set adapter Name icmp all=enable Windows XP SP2 and up, 2003 and Vista netsh firewall set icmpsetting Name enable all 2010/12/7 87 Reminder about RFC3484 (Default Address Selection for IPv6) Multiple source addresses: - linklocal, global, tunneling, mobile, choosing IPv6 or IPv4 for communication which one to select? implement sorting in getaddrinfo()- via policy table: 2010/12/7 88 920

IPv6 on *BSD Supported Auto-configuration, IPv4 tunnel, 6to4, MLDv1, IPSec, Jumbogram, ICMP mode information query, TRT, privacy extension Available since FreeBSD 4.0, OpenBSD 2.7, NetBSD 1.5 KAME extension NAT-PT, DHCPv6, PIM-(S)SM, multicast DNS, EDNS resolver, ISATAP (not any more), Anycast (integrated) 2010/12/7 89 FreeBSD Configuration-1 Installation: not necessary, the default kernel has it The installer asking for IPv6 support ipv6_enable= yes in /etc/rc.conf Auto-configuration is working ipconfig -a 2010/12/7 90 921

FreeBSD Configuration-2 Manual address configuration ipv6_prefix_fxp0= 2001:DB8:1:2 ipv6_ifconfig_fxp0= 2001:DB8:1:2::1 prefixlen 64 then /etc/netstart or ipconfig Neighbor cache ndp -a Routing table route/netstat 2010/12/7 91 FreeBSD Configuration-3 Configuration of further addresses ipv6_ifconfig_if0_alias0="fec0:0:0:5::2/64" What about if you don t have IPv6 Connectivity ip6addrctl(8) program according RFC3484 you canadjust default address selection 2010/12/7 92 922

FreeBSD Configuration-5 Reconfiguration rtsolfxp0 Applications ping6, traceroute6, ftp, telnet, r* commands, sendmail, apache, Mozilla, proftpd, OpenSSH, LPD, NFS/YP (FreeBSD 5.0 tól), courier-imap,irc, openldap, tftp, tcpdump, inn, tin Further information http://www.freebsd.org http://www.kame.net http://ipv6.niif.hu/m/faq 2010/12/7 93 FreeBSD Configuration-6 Configure an IPv6 in IPv4 tunnel ipconfig gif1 create ipconfig g gif1 tunnel @IPv4_source @IPv4_dest ipconfig gif1 inet6 @IPv6_address up Configure an IPv6 in IPv6 tunnel ipconfig gif1 create ipconfig g gif1 tunnel @IPv6_source @IPv6_dest ipconfig gif1 inet6 @IPv6_address up 2010/12/7 94 923

FreeBSD Configuration-7 Configure a static route Default route route add -inet6 default fe80::x:x:x:x%interface route add -inet6 default X:X:X:X::X (if global address) Others route add inet6 X:X:X:X:: -prefixlen YY X:X:X:X::X route add inet6 X:X:X:X:: -prefixlen YY fe80::x:x:x:x%interface %interface notation If link-local address, need to specify on which interface the address is available 2010/12/7 95 FreeBSD Configuration-8 Router advertisement: /etc/rtadvdv.conf default:\ :chlim#64:raflags#0:rltime#1800:rtime#0:retrans#0:\ :pinfoflags="la":vltime#2592000:pltime#604800:mtu#auto: ef0:\ :addr= 2001:DB8:ffff:1000::":prefixlen#64:tc=default: 2010/12/7 96 924

FreeBSD Configuration-9 RIPng: route6d daemon route6d -L IPv6_prefix,interface (receives only prefixes derived from IPv6_prefix on interface interface) -N interface (do not receive and advertise routes on interface) -O IPv6_prefix, interface (advertise only on interface the IPv6 prefix) BGP: bgpd daemon Better to use Zebra/Quaggua BGP daemon 2010/12/7 97 IPv6 on Linux Supported auto-configuration, IPv4 tunnel, 6to4 since Kernel 2.2.x recommended at least 2.4.8 USAGI patch (mostly included in 2.6.x series) Node information query, anycast, ISATAP, privacy extension, IPSec, applications, bug-fix, mobile IP 2010/12/7 98 925

General Linux Configuration-1 Kernel compile options CONFIG_IPv6=m/y If the IPv6 module is loaded, file /proc/net/if_inet6 should be present IPv6 module can be loaded by modprobe ipv6 Auto-configuration supported ipconfig 2010/12/7 99 General Linux Configuration-2 Address configuration ipconfig <interface> inet6 add <ipv6address>/<prefixlength> Neighbor cache ip -6 neigh show IPv6 routing table route -A inet6/netstat 2010/12/7 100 926

Red Hat Configuration-1 Enabling Global IPv6 support/etc/sysconfig/network file: NETWORKING_IPV6="yes" Enabling IPv6 support on a particular interface/etc/sysconfig/networkscripts/ifcfg-eth0 file: IPV6INIT="yes" Configuring IPv6 interface address/etc/sysconfig/network-scripts/ifcfgeth0 file: IPV6ADDR= 2001:DB8:20::291D:6A83/48 Default route configuration/etc/sysconfig/static-routes-ipv6 file: eth0 ::/0 2001:DB8:20::922:A678 2010/12/7 101 Red Hat Configuration-2 Applications ping6, traceroute6, tcpdump, tracepath6, apache, bind, imap (xinetd), sendmail, openssh, telnet, ftp, mozilla, lynx, wget, kde, xchat, etc. Further information http://www.bieringer.de/linux/ipv6 http://www.linux-ipv6.org/ 2010/12/7 102 927

Fedora Configuration (Fedora Core 2 only) append to/etc/sysconfig/network: NETWORKING_IPV6=yes IPV6_DEFAULTDEV= your exit device e.g. tun6to4 (Fedora Core 1 only) append to/etc/sysconfig/network NETWORKING_IPV6=yes IPV6_GATEWAYDEV= your exit device e.g. tun6to4 6to4 gateway- append to/etc/sysconfig/network-scripts/ifcfg-eth0 IPV6INIT=yes IPV6TO4INIT=yes 2010/12/7 103 Debian Configuration-1 Enabling IPv6 You should put "ipv6" in "/etc/modules" Address configuration"/etc/network/interfaces" : iface eth0 inet6 static address 2001:XXXX:YYYY:ZZZZ::1 netmask 64 Further information http://wiki.debian.org/debianipv6 2010/12/7 104 928

Debian Configuration-2 Configure an IPv6 in IPv4 tunnel "/etc/network/interfaces" : iface tun0 inet6 v4tunnel endpoint A.B.C.D address 2001:DB8:1:YYYY::2 gateway 2001:DB8:1:YYYY::1 netmask 64 2010/12/7 105 Debian Configuration-3 RA configuration on Debian router "/etc/radvd.conf" : interface eth0 { AdvSendAdvert on; AdvLinkMTU 1500; prefix 2001:XXXX:YYYY:ZZZZ:/64 { AdvOnLink on; AdvPreferredLifetime 3600; AdvValidLifetime 7200; }; }; 2010/12/7 106 929

Debian Configuration-4 Configuration on Debian router net.ipv6.conf.all.autoconf = 0 net.ipv6.conf.all.accept_ra = 0 net.ipv6.conf.all.accept_redirects = 0 net.ipv6.conf.all.forwarding = 1 net.ipv6.conf.all.router_solicitations = 0 Firewalls iptables -I INPUT -j ACCEPT --proto 41 2010/12/7 107 Solaris Configuration-1 Supported since Solaris 8 auto-configuration, IPv4 tunnel, 6to4, IPSec, applications 2010/12/7 108 930

Solaris Configuration-2 Auto-configuration existing "/etc/hostname6.<intf>" Static address configuration"/etc/hostname6.<intf>" : addif 2001:DB8:1:2::100 up Static name IPv6 address resolution: in /etc/inet/ipnodes DNS resolution should be enabled /etc/nsswitch.conf ipnodes: files dns 2010/12/7 109 Mac OS X Configuration-1 Supported since Mac OS X 10.2 (since Darwin kernel version 6) auto-configuration, IPv4 tunnel, 6to4, IPSec, applications, Apple Filing Protocol (since AFP version 3.1) Rendez - Vous point supports IPv6 Basically - What you can expect from *BSD 2010/12/7 110 931

Mac OS X Configuration-2 Enabled by ip6config command ip6config command interface commands: start-v6 enable IPv6 on given (all) interface stop-v6 disable IPv6 on given (all) interface start-stf enable IPv6 as defined in /etc/6to4.conf start-rtadvd start router advertisement daemon and enable IPv6 packet forwarding between interfaces ip6 enable disable per interface Auto-configuration enabled by default 2010/12/7 111 History of IP Network Introduction to IPv6 IPv6 Header Format IPv6 Host IP Configuration Feature of IPv6 Protocol 2010/12/7 112 932

IPv6 的特性 -1 IPv6 通訊協定除了採取 128 位元的位址長度, 為了解決 IPv4 通訊協定的問題, 其傳輸封包的欄位和長度也和 IPv4 有些許差異 以下舉出幾項 IPv6 通訊協定的特色 : 2010/12/7 113 IPv6 的特性 -2 大量位址空間 :IPv6 通訊協定採用 128 位元長度的位址空間, 可抒解 IPv4 位址不足對於各式網路應用造成的限制, 而 ISP 業者也可因省去網路位址解析設備 (Network Address Translation, NAT) 或 IP 分享器等設備而降低營運成本, 並減少網路上的瓶頸 位址自動配置 :IPv6 通訊協定支援自動組態 (Auto-Configuration), 因此 IPv6 主機接上 IPv6 網路後可自動取得 IPv6 網路位址資訊, 無須如 IPv4 網路另外獨立設置 DHCP 伺服器 這種 隨插即用 的特色可以減輕網路管理者及使用者發放與設定 IP 位址的負擔 網路層安全性 :IPv6 通訊協定內建 IPSec 加密機制, 透過延伸表頭表示封包本身是加密或經過認證簽署的, 因而大幅提昇網路安全性 行動性 (Mobility):Mobile IPv6 可提供較 Mobile IPv4 更強大的移動性, 解決以往跨網段漫游所發生的連線障礙 QoS 機制強化 :IPv6 協定透過封包中基本表頭內的優先順序欄位及流程控制標記等欄位, 可直接支援 QoS 機制 此特性對於講求即時性的多媒體傳輸應用而言極有助益 2010/12/7 114 933

934