Luận văn Nghiên cứu về IPV4 va IPV6

doc 67 trang yendo 6080
Bạn đang xem 20 trang mẫu của tài liệu "Luận văn Nghiên cứu về IPV4 va IPV6", để tải tài liệu gốc về máy bạn click vào nút DOWNLOAD ở trên

Tài liệu đính kèm:

  • docluan_van_nghien_cuu_ve_ipv4_va_ipv6.doc

Nội dung text: Luận văn Nghiên cứu về IPV4 va IPV6

  1. LUẬN VĂN TỐT NGHIỆP Đề tài: Nghiên cứu về IPV4 va IPV6 Mục lục
  2. LỜI GIỚI THIỆU 6 CHƯƠNG 1 7 1.1 Những hạn chế của IPv4: 7 1.2 Đặc điểm của IPv6: 7 1.2.1 Không gian địa chỉ lớn: 7 1.2.2 Địa chỉ phân cấp, hạ tầng định tuyến hiệu quả: 8 1.2.3 Khuôn dạng header đơn giản hoá: 8 1.2.4 Tự cấu hình địa chỉ: 8 1.2.5 Khả năng xác thực và bảo mật an ninh: 8 1.2.6 Hỗ trợ tốt hơn về chất lượng dịch vụ QoS: 8 1.2.7 Hỗ trợ tôt hơn tính năng di động : 8 1.2.8 Khả năng mở rộng: 8 1.3 Cấu trúc địa chỉ IPv6: 8 1.3.1 Địa chỉ IPv6: 9 Hình 4 : Địa chỉ CIDR ( CIDR Address) 10 1.3.2 Không gian địa chỉ 10 Hình 5 : Cấu trúc địa chỉ ( Address Structure) 11 1.3.3 Cấp phát địa chỉ IPv6: 12 1.3.3.1 Địa chỉ unicast trên cơ sở người cung cấp: 12 Hình 7: Địa chỉ trên cơ sở người cung cấp (Provider-based Address) 12 Hình 8 : Hệ thống địa chỉ (Address Hierarchy) 13 1.3.3.2 Địa chỉ dự trữ (Reserved Address): 13 Hình 9 : Địa chỉ không rõ (Unspecified Address) 14 Hình 10 : Địa chỉ vòng ngược ( Loopback Address) 14 Hình 11: Địa chỉ thích ứng ( Compatible Address) 15 1.3.3.3 Địa chỉ cục bộ ( Local Address): 16 Hình 13 : Địa chỉ link cục bộ ( Link local Address) 16 Hình 14 : Địa chỉ site cục bộ ( Site Local Address) 17 1.3.3.4 Địa chỉ Multicast: 17 Hình 15 : Địa chỉ Multicast (multicast address) 18 1.3.4 Định dạng gói tin trong IPv6 : 18 Hình 16 : Định dạng gói tin IPv6 (IPv6 Data Packet Format) 19 1.3.4.1 Vùng nền tảng ( Base Header): 19
  3. 1.3.4.2 So sánh giữa vùng header của IPv4 và IPv6 : 23 1.3.5 Vùng header mở rông : 23 Hình 18 : Định dạng vùng header mở rộng ( Extenion header format ) 24 Hình 19 : Những loại vùng header mở rộng (Extension header types) 25 1.3.5.1 Tuỳ chọn nhảy từng bước (Hop–by–hop option): 25 Hình 22 : Pad1 27 Hình 24: Jumbo Payload 27 Hình 25 : Lộ trình nguồn (Source Routing) 28 1.3.5.3 Sự phân miếng ( Fragmentation): 29 Hình 27 : Sự phân miếng (Fragmentation) 29 Hình 28 : Sự chứng thực (Authentication) 30 Hình 29 : Sự tính toán của sự chứng thực dữ liệu 30 1.3.5.5 Payload bảo mật mã hoá (Encrypted Secutity Payload - ESP): 31 Hình 30 : Payload bảo mật mã hoá 31 Hình 31 : Sự mã hoá mode vận chuyển (Transport Mode Encryption) 32 1.3.5.6 Tuỳ chọn đích (Destination Option): 32 CHƯƠNG 2 33 ICMPv6 (Internet Control Message Protocol Version 6) 33 Hình 32 : So sánh giữa mạng lưới phiên bản 4 và 6 33 Hình 33 : Kiểu thông điệp ICMPv6 34 Hình 34 : Khuôn dạng chung của thông điệp ICMP 34 2.1 Error Reporting (Báo cáo lỗi): 34 Hình 35: Báo cáo lỗi thông điệp 35 Bảng 1 . So sánh giữa tin báo lỗi của ICMPv4 và ICMPv6 35 2.1.1 Destination unreachable ( Không thể với tới được nơi đến): 35 Hình 36 : Định dạng thông điệp không thể với tới được nơi đến 36 2.1.2 Packet too Big ( Gói quá lớn ): 36 Hình 37 : Packet too big message format 36 2.1.3 Time Exceeded ( Vượt quá thời gian): 37 2.1.4 Parameter Problem (Vấn đề tham số): 37 Hình 39: Parameter- problem message format 38 2.1.5 Redirection (Sự gửi lại lần nữa): 38 Hình 40: khuôn dạng thông báo sự gửi lại lần nữa 39
  4. 2.2 Query (Truy vấn): 39 Hình 41 : Query message 39 Bảng 2: Comparsion of query message in ICMPv4 and ICMPv6 39 2.2.1 Echo request and reply (Yêu cầu và đáp ứng lặp lại): 40 Hình 42: Thông báo yêu cầu trả lời thông điệp 40 2.2.2 Router solicitation and addvertisement (Yêu cầu và quảng cáo chương trình vận chuyển): 40 2.2.3 Neighbor Solicitation and advertisement ( Sự yêu cầu và quảng cáo lân cận): 41 Hình 44: Neighbor Solicitation And Advertisement Message Format 42 2.2.4 Group Membership ( Sự tham gia nhóm ): Trong phiên bản 6 giao thức này bị loại và nhiệm vụ của nó cũng được bao gồm trong ICMPv6. Mục đích thì hoàn toàn giống. Có 3 loại thông điệp Group Membership: báo cáo, bảng câu hỏi và giới hạn. Thông điệp báo cáo và giới hạn được gửi từ vật chủ cho đường rãnh. Thông điệp truy vấn được gửi từ đường rãnh cho vật chủ 42 Hình 45 : Group Membership Message 43 Hình 46: Group Membership Message Format 43 Hình 47: For Situation Of Group Membership Operation 44 CHƯƠNG 3 : 45 Sự chuyển tiếp từ IPv4 tới IPv6 45 3.2.1. Chồng hai giao thức (Dual Stack) 46 Data link (Ethernet) 46 Hình 48. Chồng hai giao thức 46 3.2.2. Đường hầm IPv6 qua IPv4 (Tunnel) 47 Hình 49. Đường hầm Ipv6 qua Ipv4 47 Gói tin ra klhỏi đường hầm 48 3.2.2.1. Đường hầm có cấu hình (Configured tunnel) 48 Hình 50: Đường hầm có cấu hình. 49 3.2.2.2 Đường hầm tự động (Automatic tunnel) 49 Hình 51: Địa chỉ IPv6 tương thích địa chỉ IPv4 49 3.2.3 6over4 49 Hình 53 : 6 to 4 52 Hình 54 Khuôn dạng địa chỉ 6to4 52
  5. Hình 55 : Cơ chế hoạt động 6 to 4 53 3.2.5. Môi giới đường hầm (Tunnel Broker) 53 Hình 56: Môi trường đường hầm 54 3.2.6 Dịch địa chỉ- Dịch giao thức (SIIT và NAT- PT) 55 Hình 57: NAI- PT 56 3.2.7. Một số cơ chế khác 56 3.2.7.1 BIS (Bump Into the Stack ) 56 3.2.7.2 BIA (Bump Into the API) 57 Hình 58: BIA 57 Hình 3- 13. Kiến trúc của dual- stack host sử dụng BIA 58 Bảng 3- 1. Các hàm API socket được chuyển đổi 60 Các cấu trúc và hàm API cơ bản 60 Bảng 3- 2. Các cấu trúc và hàm API cơ bản 60 3.2.7.3. Cơ chế chuyển đổi hai giao thức (DSTM) 60 Bảng 3- 3. Cơ chế chuyển đổi hai giao thức (DSTM) 61 CHƯƠNG 4: 63 4.2 Cài đặt trên windows 2000: 63 CHƯƠNG 5 65 Kết luận và hướng phát triển tiếp theo 65 Kết luận 65 IPv6 bao giờ được sử dụng tại Việt Nam? 66
  6. LỜI GIỚI THIỆU Phiên bản IPv6 là một phiên bản mới của Internet. Nó được xây dựng trên cơ sở của giao thức IPv4 nhằm tận dụng các ưu điểm và khắc phục hạn chế của IPv4. Thay đổi của IPv6 chủ yếu vào những phạm trù sau: Mở rộng những khả năng định vị.: IPv6 có địa chỉ nguồn và đích dài 128 bít, không gian địa chỉ lớn của IPv6 được thết kế dự phòng đủ lớn cho phép phân bổ địa chỉ và mạng con từ trục xương sống Internet đến từng mạng con trong một tổ chức. Tính biến đổi được lộ trình nhiều sắc thái được cải thiện gần thêm một phạm vi giải quyết tới những địa chỉ nhiều sắc thái. Sự đơn giản hoà khuôn dạng đầu mục (Header): Header của IPv6 được thiết kế để giảm chi phí đến mức tối thiểu. Điều này đạt được bằng cách chuyển các trường không quan trọng và các trường lựa chọn sang các header mở rộng được đặt phía sau của IPv6 header. Khuôn dạng header mới của IPv6 tạo ra sự xử lý hiệu quả hơn tại các ruoter. Tiến bộ hỗ trợ cho những mở rộng và những tuỳ chọn: Thay đổi trong cách mà những tuỳ chọn đầu mục IP được mã hoá kể cả hiệu quả hơn đẩy tới ít hơn những giới hạn về khó khăn trên những tuỳ chọn mới trong tương lai. Khả năng ghi nhãn luồng: Một khả năng mới được thêm để cho phép sự ghi nhãn của những gói thuộc về tới giao thông “chảy” đặc biệt cho người gửi nào những yêu cầu đặc biết điều khiển, như không mặc định chất lượng của dịch vụ hoặc “ thời gian thực “ dịch vụ. Những khả năng chứng thự và riêng tư: Những mở rộng để chứng thực sự toàn vẹn dữ liệu được chỉ rõ cho IPv6.
  7. CHƯƠNG 1 Những hạn chế của IPv4 và đặc điểm của IPv6 1.1 Những hạn chế của IPv4: - Giao thức tầng mạng trong bộ giao thức TCP/IP hiện tại đang là IPv4 (Internet- working protocol verision 4). IPv4 cung cấp truyền thông host- to-host giữa những hệ thống trên Internet. Mặc dù IPv4 được thiết kế khá tốt, sự thông đại thông tin đã tiến triển từ lúc khởi đầu IPv4 vào những năm 1970, nhưng IPv4 có những sự thiếu hụt khiến cho nó không đồng bộ cho sự phát triển nhanh của Internet, gồm những thứ sau: + IPv4 có 2 level cấu trúc địa chỉ (netid và hostid) phân nhóm vào 5 lớp (A, B, C, D và E). Sự sử dụng những ô địa chỉ là không hiệu quả. Ví dụ như khi cos một tổ chức được cấp cho 1 địa chỉ lớp A, 16 triệu địa chỉ từ ô địa chỉ được phân phối duy nhất cho tổ chức sử dụng. Nếu 1 tổ chức được cấp cho 1 địa chỉ lớp C, mặt khác chỉ có 256 địa chỉ được phân phối cho tổ chức, đây không phải là một số đủ. Cũng vậy, nhiều triệu địa chỉ bị lãng phí trong nhóm D và E. Phương thức phân địa chỉ này đã dùng hết những ô địa chỉ của IPv4, và mau chóng sẽ không còn địa chỉ nào còn để cấp cho bất kỳ một hệ thống mới nào muốn kết nối vào Internet. Mặc dù sách lược subnet và supernet đã giảm bớt những vấn đề về địa chỉ, nhưng subnet và suprnet đã làm cho đường truyền trở lên khó khăn hơn. + Internet phải thích nghi được với sự chuyển giao audio và video thời gian thực. Loại chuyển giao này yêu cầu những sách lược trì hoãn ít nhất và sự đặt trước của tài nguyên không được cung cấp trong thiết kế. + Internet phải thích nghi được với sự mã hoá và sự chứng nhận của dữ liệu cho một số ứng dụng. Không một sự mã hoá và sự chứng nhận nào được cung cấp trong IPv4. - Để khắc phục thiếu sót trên IPv6 được biết đến như là IPng (Internet working Protocol, next generation), được đề xướng và nay là một chuẩn. 1.2 Đặc điểm của IPv6: - Trong IPv6 giao thức Internet được cải tiến một cách rộng lớn để thích nghi được sự phát triển không biết trước được của Internet. Định dạng và độ dài của những địa chỉ IP cũng được thay đổi với những gói định dạng. Những giao thức liên quan, như ICMP cũng đựơc cải tiến. Những giao thức khác trong tầng mạng như ARP, RARP, IGMP đã hoặc bị xoá hoặc có trong giao thức ICMPv6. Những giao thức tìm đường như RIP, OSPF cũng được cải tiến khả năng thích nghi với những thay đổi này. Những chuyên gia truyền thông dự đoán là IPv6 và những giao thức liên quan với nó sẽ nhanh chóng thay thế phiên bản IP hiện thời. Thế hệ mới của IP hay IPv6 có những ưu điểm như sau: 1.2.1 Không gian địa chỉ lớn:
  8. - IPv6 có địa chỉ nguồn và đích dài 128 bít. Mặc dù 128 bít có thể tạo hơn 3,4*1038 tổ hợp, không gian địa chỉ của IPv6 được thiết kế dự phòng đủ lớn cho phép phân bổ địa chỉ và mạng con từ trục xương sống internet đến từng mạng con trong một tổ chức. Các địa chỉ hiện đang phân bổ để sử dụng chỉ chiếm một lượng nhỏ và vẫn còn thừa rất nhiều địa chỉ sẵn sàng cho sử dụng trong tương lai. Với không gian địa chỉ lớn này, các kỹ thuật bảo tồn địa chỉ như NAT sẽ không còn cần thiết nữa. 1.2.2 Địa chỉ phân cấp, hạ tầng định tuyến hiệu quả: - Các địa chỉ toàn cục của Ipv6 được thiết kế để tạo ra một hạ tầng định tuyến hiệu qủa, phân cấp và có thể tổng quát hoá dựa trên sự phân cấp thường thấy của các nhà cung cấp dịch vụ Internet (ISP) trên thực tế. Trên mạng Internet dựa trên IPv6, các router mạng xương sống (backbone) có số mục trong bảng định tuyến nhỏ hơn rất nhiều. 1.2.3 Khuôn dạng header đơn giản hoá: - Header của IPv6 được thiết kế để giảm chi phí đến mức tối thiểu. Điều này đạt được bằng cách chuyển các trường không quan trọng và các trường lựa chọn sang các header mở rộng được đặt phía sau của IPv6 header. Khuôn dạng header mới của IPv6 tạo ra sự xử lý hiệu quả hơn tại các router. 1.2.4 Tự cấu hình địa chỉ: - Để đơn giản cho việc cấu hình các trạm, IPv6 hỗ trợ cả việc tự cấu hình địa chỉ stateful như khả năng cấu hình server DHCP và tự cấu hình địa chỉ stateless (không có server DHCP). Với tự cấu hình địa chỉ dạng stateless, các trạm trong liên kết tự động cấu hình chúng với địa chỉ IPv6 của liên kết (địa chỉ cục bộ liên kết) và với địa chỉ rút ra từ tiền tổ được quảng bá bởi router cục bộ. Thậm trí nếu không có router, các trạm trên cùng một liên kết có thể tự cấu hình chúng với các địa chỉ cục bộ liên kết và giao tiếp với nhau mà không phải thiết lập cấu hình thủ công. 1.2.5 Khả năng xác thực và bảo mật an ninh: - Tích hợp sẵn trong thiết kế IPv6 giúp triển khai dễ dàng đảm bảo sự tương tác lẫn nhau giữa các nút mạng. 1.2.6 Hỗ trợ tốt hơn về chất lượng dịch vụ QoS: - Lưu thông trên mạng được phân thành các luồng cho phép sử lý mức ưu tiên khác nhau tại các router. 1.2.7 Hỗ trợ tôt hơn tính năng di động : - Khả năng di động MobileIP tận dụng được các ưu điểm của IPv6 so với IPv4. 1.2.8 Khả năng mở rộng: - Thiết kế của IPv6 có dự phòng cho sự phát triển trong tương lai đồng thời dễ dàng mở rộng khi có nhu cầu. 1.3 Cấu trúc địa chỉ IPv6:
  9. 1.3.1 Địa chỉ IPv6: - Một địa chỉ gồm có 16 bytes, đó là 128 bít độ dài. Kiểu ký hiệu dấu 2 chấm trong hệ đếm 16 ( Hexadecimal Colon Notation): - Để làm cho những địa chỉ trở nên có thể đọc được nhiều hơn, IPv6 trình bầy rõ trong kiểu ký hiệu dấu 2 chấm trong hệ đếm 16. Trong kiểu ký hiệu này, 128 bít được chia thàng 8 phần, mỗi phần rộng 2 byte. 2 byte trong kiểu ký hiệ hệ đếm 16 yêu cầu 4 chữ số trong hệ đếm 16 này. Vì thế cho nên địa chỉ gồm có 32chữ số trong hệ đếm 16 với mỗi 4 chữ số một lại có một dấu : chấm. Hình1. 128 bít= 16 bytes= 32chữ số trong hệ đếm 16 111111101111101100 111111111111  FDEC : : 7654 3210 ADBF 2922 FFFF Hình 1: Địa chỉ IP phiên bản 6 ( IPv6 Address) - Sự rút gọn: + Mặc dù là địa chỉ IP ngay cả khi ở trong định dạnh hệ số đếm 16, vẫn rất dài, nhiều chữ số 0 trong một địa chỉ. Thí dụ: 1080:0000:0000:0000:0008:0800:200C:417A Do đó cơ chế nén địa chỉ được dùng để biểu diễn dễ dàng hơn các loại địa chỉ dạng này. Ta không cần viết các số 0 ở đầu các nhóm, nhưng những số 0 bên trong thì không thể xoá. Chưa rút gọn 1080:0000:0000:0000:0008:0800:200C:417A Đã rút gọn 1080: 0: 0: 0: 8: 800:200C:417A Hình 2 : Sự rút gọn địa chỉ (Abbreviated Address)
  10. - Hơn nữa ta có thể sử dụng ký hiệu :: để chỉ một chuỗi các số 0. Tuy nhiên ký hiệu trên chỉ được sử dụng một lần trong một địa chỉ. Địa chỉ IP có độ dài cố định, ta có thể tính được số các bit 0 mà ký hiệu đó biểu diễn. Ta có thể áp dụng ở đầu hay ở cuối địa chỉ. Cách viết này đặc biệt có lợi khi biểu diễn các địa chỉ multicast, loopback hay các điạ chỉ chưa chỉ định. Chưa rút gọn 1080: 0: 0: 0: 8: 800:200C:417A Đã rút gọn 1080::8:800:200C:417A Hình 3: Sự rút gọn địa chỉ có số 0 liên tiếp (Abbreviated Address with consecutive zeros) - Việc khôi phục lại sự rút gọn địa chỉ là rất đơn giản: thêm số 0 vào cho đến khi nhận được địa chỉ nguyên bản (4 chữ số trong 1 phần , 32 chữ số trong một địa chỉ) - IPv6 cho phép giảm lớn địa chỉ và được biểu diễn theo ký pháp CIDR. Ví dụ: Biểu diễn mạng con có độ dài tiền tố 80 bít: 1080:0:0:0:8::/80 Hình 4 : Địa chỉ CIDR ( CIDR Address) 1.3.2 Không gian địa chỉ - Không gian địa chỉ có độ dài lớn hơn IPv4( 128 bít so với 32 bít) do đó cung cấp không gian địa chỉ lớn hơn rất nhiều. Trong khi không gian địa chỉ 32 bít của IPv4 cho phép khoảng 4 tỉ địa chỉ, không gian địa chỉ IPv6 có 23 thể có khoảng 6.5*10 địa chỉ trên mỗi mét vuông bề mặt trái đất. Địa chỉ IPv6 128 bít được chia thành các miền phân cấp theo trật tự trên Internet. Nó tạo ra nhiều mức phân cấp và linh hoạt trong địa chỉ hoá và định tuyến hiện không có trong IPv4. - Không gian địa chỉ có nhiều mục đích khác nhau. Người ta thiết kế địa chỉ IP đã chia không gian địa chỉ thành 2 phần, với phần đầu được gọi là
  11. kiểu tiền tố. Phần giá trị tiền tố này cho bíêt mục đích của địa chỉ. Những mã số được thiết kế sao cho không có mã số nào giống phần đầu của bất kỳ mã số nào khác. Do đó không có sự nhập nhằng khi một địa chỉ được trao kiểu tiền tố có thể dẽ dàng xác định được. Hình 5 cho chúng ta thấy dạng của địa chỉ IPv6: 128 bít Biến Biến Kiểu tiền tố Phần cón lại của địa chỉ Hình 5 : Cấu trúc địa chỉ ( Address Structure) - Không gian IPv6 được chia trên cơ sở các bít đầu trong địa chỉ. Trường có độ dài thay đổi bao gồm các bít đầu tiên trong địa chỉ gọi là Tiền tố định dạng ( Format Prefix) FP. Cơ chế phân bổ địa chỉ như sau: Phân bố Tiền tồ định dạng Tỷ lệ trong không gian địa chỉ Dự phòng 0000 0000 1/256 Dự phòng 0000 0001 1/256 Dự phòng cho địa chỉ NSAP 0000 001 1/128 Dự phòng cho địa chỉ IPX 0000 010 1/128 Chưa cấp phát 0000 011 1/128 Chưa cấp phát 0000 1 1/32 Chưa cấp phát 0001 1/16 Địa chỉ dựa trên vị trí địa lý ( 001 1/8 Hiện đã loại bỏ) Chưa cấp phát 101 1/8 Chưa cấp phát 110 1/8 Chưa cấp phát 1110 1/16 Chưa cấp phát 1111 0 1/32 Chưa cấp phát 1111 10 1/64 Chưa cấp phát 1111 110 1/128
  12. Chưa cấp phát 1111 1110 0 1/512 Địa chỉ liên kết cục bộ 1111 1110 10 1/1024 Địa chỉ site cục bộ 1111 1110 11 1/1024 Địa chỉ multicast 1111 1111 1/256 Hình 6 : Cơ chế phân bổ địa chỉ 1.3.3 Cấp phát địa chỉ IPv6: 1.3.3.1 Địa chỉ unicast trên cơ sở người cung cấp: - Địa chỉ trên cơ sở người cung cấp được sử dụng chung bởi 1 host bình thường như 1 địa chỉ unicast. Định dạng địa chỉ được diễn tả như sau: 128 bits 8 bits Provider Subscriber Subnet Node Indentifler Indentifler Indentifler Indentifler 010 Registry 3 bits 5 bits Hình 7: Địa chỉ trên cơ sở người cung cấp (Provider-based Address) - Những trường cho địa chỉ người dùng trên cơ sở cung cấp như sau : + Chứng thực kiểu (Type indentifier): Trường 3 bít này định nghĩa những địa chỉ như là 1 địa chỉ trên cơ sở người cung cấp. + Chứng thực đăng ký (Registry indentifier) : Trường 5 bít này trình bày chi nhánh đã đăng ký địa chỉ. Hiện thời thì có 3 trung tâm địa chỉ được định nghĩa: RIPE- NCC (mã 01000): Tại Châu Âu. INTERNIC (mã 11000): Tại Bắc Mỹ. APNIC (mã 10100): Tại Châu á - Thái Bình Dương
  13. + Chứng thực hà cung cấp (Provider indentifier): Trường độ dài tuỳ biến này xác nhận nhà cung cấp (provider) cho truy cập Internet 16 bit độ dài là khuyến cáo đối với trường này. + Chứng thực thuê bao (Subscriber indentifier): Khi một tổ chức đặt mua Internet dài hạn thông qua 1 nhà cung cấp, nó được cấp phát 1 thẻ nhận dạng người đặt mua (Subscriber indentification). 24 bít độ dài là khuyến cáo đối với trường này. + Chứng thực Subnet (Subnet indentifier): Mỗi subscriber có thể có nhiều subnetwork khác nhau, và mỗi network có thể có nhiều chứng thực. Chứng thực. Chứng thực subnet định nghĩa một network cụ thể dưới khu vực của subscriber. 32 bít độ dài là khuyến cáo đối với trường này. + Chứng thực None (None indentifier): trường cuối cùng định nghĩa nhận dạng giao điểm kết nối tới subnet. Độ dài 8 bít là khuyến cáo với trường này để làm nó thích hợp với địa chỉ link 48 bít (Vật lý) được sử dụng bởi Ethernet. Trong tương lai địa chỉ link này có lẽ sẽ giống địa chỉ vật lý node. - Chúng ta có thể nghĩ về một điạ chỉ cung cấp trung tâm như 1 đẳng cấp chứng thự có một số tiền tố. Như những gì thấy ở hình 8, mỗi tiền tố định nghĩa một cấp bậc của hệ thống. Kiểu tiền tố định nghĩa kiểu, tiền tố định nghiã 1 cách duy nhất về nhà cung cấp bậc đăng ký, tiền tố nhà cung cấp định nghĩa 1 cách duy nhất về nhà cung cấp, tiền tố subnet định nghĩa 1 cách duy nhất về subscriber, và tiền tố subnet định nghĩa 1 cách duy nhất về subnet. Subnet Subscriber Provider Provider Subscriber Subnet Node Indentifier indentifier Indentifier indentifier Hình 8 : Hệ thống địa chỉ (Address Hierarchy) 1.3.3.2 Địa chỉ dự trữ (Reserved Address):
  14. - Những địa chỉ mà sử dụng tiền tố dự trữ (0000 0000) sẽ được thảo luận một cách ngắn gọn tại đây. + Địa chỉ không xác định (Unspecified Address): Đây là một địa chỉ mà phần không phải tiền tố chỉ chứa chữ số 0. Nói một cách khác phần còn lại của địa chỉ gồm toàn zero. Địa chỉ này được sử dụng khi host không hiểu được địa chỉ của chính nó và gửi 1 câu hỏi thăm để tìm địa chỉ của nó. Tuy nhiên trong câu hỏi thăm phải định nghĩa 1 địa chỉ nguồn. Địa chỉ không xác định có thể được sử dụng cho mục đích này. Chú ý là địa chỉ không thể được sử dụng làm địa chỉ đích. Địa chỉ này được trình bày trong hình sau : 8 bít 120 bit 00000000 Tất cả toàn bít 0 Hình 9 : Địa chỉ không rõ (Unspecified Address) + Địa chỉ vòng ngược (Loopback Address): Đây là một địa chỉ được sử dụng bởi 1 host để kiểm tr nó mà không cần vào mạng. Trong trường hợp này 1 thông điệp được tạo ra ở tầng ứng dụng nó gửi tới tầng chuyển tải và đi qua tầng mạng. Tuy nhiên thay vì đi đến mạng vật lý nó trở lại tầng chuyển tải và đi qua tầng ứng dụng. Địa chỉ này rất hữu dụng cho việc kiểm tra những gói phần mềm chức năng trong tầng này trước khi thậm chí cả việc kết nối máy tính vào mạng. Địa chỉ được mô tả trong hình dưới đây gồm có tiền tố 0000 0000 và theo sau là 119 bit 0 và 1 bit 1. 8 bít 120 bit 00000000 000000000000 .00000000000001 Hình 10 : Địa chỉ vòng ngược ( Loopback Address) + Địa chỉ IPv4: Những gì chúng ta thấy được trong suốt quá trình chuyển đổi từ địa chỉ IPv4 và IPv6, host có thể sử dụng địa chỉ IPv4 của nó đã được nhúng vào địa chỉ IPv6. Có 2 định dạng địa chỉ được thiết kế cho mục đích này: thích ứng ( compatible) và hoạ đồ (mapped) + Địa chỉ thức ứng ( Compatile Address): Là một địa chỉ của 96 bit 0 theo sau 32 bit của địa chỉ IPv4. Địa chỉ này được sử dụng khi 1 máy tính
  15. sử dụng IPv6 muốn gửi một thông điệp sang 1 máy tính sử dụng IPv6. Tuy nhiên gói tin phải đi qua một miền mà ở đó mạng vẫn sử dụng IPv4. Người gửi sử dụng địa chỉ thích ứng IPv4 để làm cho thuận tiện việc chuyển gói tin qua miền sử dụng IPv4. Thí dụ: Địa chỉ IPv4 là 2.13.17.14 (định dạng dấu chấm trong hệ đếm 10) được chuyển thành 0::020D:110E (định dạng dấu 2 chấm trong hệ đếm 16). Địa chỉ IPv4 được thêm 96 bít 0 để tạo ra địa chỉ IPv6 128 bít. 8 bít 88 bít 32 bít 00000000 Tất cả toàn bít 0 Địa chỉ IPv4 a. Địa chỉ thích ứng Địa chỉ IPv6 Địa chỉ IPv4 0::020D:110E 2.13.17.14 b. Chuyển đổi địa chỉ Hình 11: Địa chỉ thích ứng ( Compatible Address) + Địa chỉ hoạ đồ (Mapped Address): Gồm 80 bít o theo sau là 16 bít 1 sau nữa là 32 bít của địa chỉ IPv4. Địa chỉ này được sử dụng khi 1 máy tính vẫn sử dụng IPv4. Gói tin du lịch phần lớn qua mạng IPv6 nhưng sau hết được chuyển tới 1 host sử dụng IPv4. Địa chỉ IPv4 được thêm 16 bít 1 và 80 bít 0 để tạo địa chỉ IPv6 128 bít.
  16. 8 bít 72 bít 16 bit 32 bít 00000000 Tất cả bít 0 Tất cả bít 1 Địa chỉ IPv4 a.Địa chỉ hoạ đồ Địa chỉ IPv6 Địa chỉ IPv4 0::020D:110E 2.13.17.14 b. Chuyển đổi địa chỉ Hình 12: Địa chỉ hoạ đồ (Mapped Address) - Một điều thú vị về địa chỉ thích ứng và địa chỉ hoạ đồ là chúng được thiết kế bằng một cách mà khi tính toán checksum chúng ta có thể sử dụng hoặc địa chỉ nhúng hoặc địa chỉ đầy đủ vì những bít 0 hoặc bít 1 thêm vào là bội của 16, không có bất kỳ một tác động nào lên việc tính toán checksum. Địa chỉ này quan trọng vì nếu địa chỉ của gói tin được chuyển tư IPv6 sang IPv4 bởi router, việc tính toán checksum sẽ không được tính toán. 1.3.3.3 Địa chỉ cục bộ ( Local Address): Nhũng địa chỉ mà sử dụng tiền tố dự trữ (1111 1110) sẽ được thảo kuận một cách ngắn gọn tại đây. + Địa chỉ link cục bộ ( Link local Address): Những địa chỉ này được sử dụng khi 1 mạng LAN muốn sử dụng giao thức Internet nhưng không kết nói Internet vì lý do an ninh. Kiểu địa chỉ này sử dụng tiền tố 1111 1110 10. Đại chỉ link cục bộ đựơc sử dụng trong mạng đôc lập và không có ảnh hưởng chung nào. Không ai ở ngoài mạng độc lập này có thể gửi thông điệp đến những máy tính gia nhập 1 mạng sử dụng những địa chỉ này. 10 bít 70 bít 48 bít 11111111010 Tất cả bít 0 Địa chỉ Node Hình 13 : Địa chỉ link cục bộ ( Link local Address)
  17. + Địa chỉ site cục bộ (Site Local Address): Những địa chỉ này được sử dụng nếu như 1 site có một số mạng sử dụng giao thức Internet nhưng không kết nối Internet vì những lý do an ninh. Kiểu địa chỉ này sử dụng tiền tố 1111 1110 11. Địa chỉ site cục bộ được sử dụng trong mạng độc lập và không có ảnh hưởng chung nào. Không ai ở ngoài mạng độc lập này có thể gửi thông điệp đến máy tính gia nhập mạng sử dụng những địa chỉ này. 10 bít 38 bít 32 bít 48 bít 11111111010 Tất cả bít 0 Địa chỉ Subnet Địa chỉ Node Hình 14 : Địa chỉ site cục bộ ( Site Local Address) 1.3.3.4 Địa chỉ Multicast: - Địa chỉ multicast được sử dụng để định nghĩa cho một nhóm các host thay vì chỉ 1. Tất cả đều sử dụng tiền tố 1111 1111 trong trường đầu tiên. Trường thứ hai là cờ (flag) định nghĩa 1 nhóm địa chỉ hoặc cố định hoặc tạm thời. Một nhóm địa chỉ cố định được định nghĩa bởi nhà cầm quyền Internet và có thể truy cập bất cứ lúc nào. Một nhóm địa chỉ tạm thời, nói một cách khác được sử dụng một cách tạm thời. Hệ thống tham dự vào một hội nghị từ xa có thể sử dụng một nhóm tạm thời. Trường thứ 3 định nghĩa phạm vi hoạt động của nhóm địa chỉ. Nhiều phạm vi đã được định nghĩa.
  18. 8 bít 4 bít 4 bít 112 bít 11111111 Cờ Phạm vi ID nhóm 0000 Dành trước 0000 Cố định 0001 Node cục bộ 0001 Tạm thời 0010 Link cục bộ 0101 Site cục bộ 1000 tổ chức cục bộ 1110 Chung 1111 Dành tiêng Hình 15 : Địa chỉ Multicast (multicast address) 1.3.4 Định dạng gói tin trong IPv6 : - Gói tin trong IPv6 được thấy như trong hình dưới đây. Mỗi gói tin bao gồm một vùng header nền tảng bắt buộc theo sau bởi payload. Payload gồm có 2 phần: những vùng Header mở rộng tuỳ ý chọn và dữ liệu từ tầng cao hơn. Vùng Header nền tảng chiếm giữ 40 byte, trong khi đó những vùng Header mở rộng và dữ liệu từ tầng cao hơn chứa đến 65535 byte thông tin.
  19. 40 byte Có thể lên đến 65535 byte  Đầu mục nền tảng Payload Đầu mục mở rộng Gói dữ liệu từ tầng cao (tuỳ ý lựa chọn) hơn Hình 16 : Định dạng gói tin IPv6 (IPv6 Data Packet Format) 1.3.4.1 Vùng nền tảng ( Base Header): - Vùng header nền tảng trong hình 17 cho ta thấy nó có 8 trường, những trường này mô tả như sau: VER PRI Flow lable Vùng Header Giới hạn Độ dài Payload kế tiếp nhảy Những địa chỉ nguồn Những địa chỉ đích Những đầu mục mở rộng Payload + Gói dữ liệu từ tầng cao hơn Hình 17 : Định dạng của 1 đơn vị dữ liệu IPv6 ( Format of an IPv6 datagram) + Phiên bản (VER- version): Trường 4 bít này định nghĩa số phiên bản của IP. Với IPv6 giá trị là 6. + Quyền ưu tiên (PRI- prority): Trường 4 bít này định nghĩa sự ưu tiên của những gói tin đối với sự tắc nghẽn giao thông.
  20. + Nhãn lưu lượng (Flow lable): Nhãn lưu lượng là một trường 3 byte – 24 bit được thiết kế để cung cấp sự điều khiển đặc biệt đối với những lưu lượng đặc biệt của dữ liệu. + Độ dài Payload (Payload Length): Trường độ dài Payload 2 byte này được định nghĩa độ dài tổng cộng của đơn vị dữ liệu IP trừ vùng Header nền tảng. + Vùng Header kế tiếp (Next Header): Vùng Header kế tiếp là 1 trường 8 bít định nghĩa 1 đầu mục mà theo sau vùng Header nền tảng trong đơn vị dữ liệu. Vùng header kế tiếp là 1 trong những vùng mở rộng tuỳ ý lựa chọn được sử dụng bởi IP hoặc vùng Header cho 1 giao thức tầng cao hơn như UDP hay TCP. Mỗi vùng Header mở rộng lại có chứa trường này. Bảng sau cho chúng ta thấy những giá trị của vùng Header kế tiếp. Mã số Vùng Header kế tiếp 0 Tuỳ chọn nhảy từng bước một 2 ICMP 6 TCP 17 UDP 43 Routing nguồn 44 Sự phân miếng 50 Payload bảo mật mã hoá 51 Sự chứng thực 59 Trống ( Không vùng Header kế tiếp) 60 Tuỳ chọn đích  Giới hạn nhảy ( Hot Limit): Trường giới hạn nhảy 8 bít này phục vụ cho mục đích tương tự trường TTL trong IPv4.  Địa chỉ nguồn ( Source Address): Trường địa chỉ nguồn là 1 điạ chỉ Internet 16 byte (128 bit) mà xác minh nguồn bản gốc của đơn vị dữ liệu  Địa chỉ đích ( Destination Address): Trường địa chỉ đích là 1 địa chỉ Internet 16 byte ( 128 bit) mà thường xác minh đích cuối cùng của đơn vị dữ liệu. Tuy nhiên nếu router nguồn được sử dụng thì trường này sẽ chứa địa chỉ của router kế tiếp. + Quyền ưu tiên (Priority): Trường quyền ưu tiên của gói tin IPv6 định nghĩa quyền ưu tiên của từng gói tin có quan hệ với những gói tin khác trong cùng 1 nguồn. Ví dụ khi 1 trong 2 đơn vị dữ liệu liên tiếp phải bị loại bỏ đi vì chật chội, đơn vị dữ liệu có quyền ưu tiên nhỏ hơn sẽ bị loại bỏ. IPv6 chia giao thông (traffic) làm 2 loại: điều khiển tắc nghẽn (congestion- controlled) và điều khiển không tắc nghẽn (nocongestion- controlled).  Giao thông điều khiển tắc nghẽn ( congestion- controlled traffic): Nếu 1 nguồn tự điều chỉnh giao thông chậm lại khi có tắc nghẽn, giao thông sẽ gán cho giao thông điều khiển tắc nghẽn. Ví dụ như giao thức
  21. TCP sử dụng giao thức cửa sổ trượt (Sliding window protocol), có thể dễ dàng đáp ứng giao thông. Trong giao thông điều khiển tắc nghẽn nó được hiểu là những gói tin có thể đến chậm hoặc thậm chí mất hoặc được nhận ngoài yêu cầu. Dữ liệu điều khiển tắc nghẽn được cấp phát quyền ưu tiên từ 0 đến 7 được thể hiện ở bảng sau: Quyền ưu tiên Mô tả 0 Không có giao thông cụ thể 1 Dữ liệu nền 2 Giao thông dữ liệu không được quan tâm 3 Dự trữ 4 Giao thông dữ liệu tham dự khối lới 5 Dự trữ 6 Giao thông tương giao 7 Giao thông điều khiển Có thể mô tả quyền ưu tiên như sau:  Không có giao thông cụ thể ( No specific traffic): quyền ưu tiên 0 được cấp phát cho gói tin khi tiến trình không định nghĩa 1 ưu tiên nào.  Dữ liệu nền (Background data): nhóm này (quyền ưu tiên 1) định nghĩa dữl iệu thường xuyên được nhận ở nền. Sự nhận tin tức là 1 ví dụ.  Giao thông dữ liệu không được quan tâm (unattended data tranffic): Nếu người sử dụng đang không đợi dữ liệu sẽ được nhận, gói tin sẽ được quyền ưu tiên 2. Email thuộc nhóm này. Một người sử dụng gửi email cho người sử dụng khác, nhưng người nhận không biết email đó sẽ đến sớm. Thêm vào email thường được lưu trữ trước khi được gửi đi.  Giao thông dữ liệu tham dự khối lớn ( Attended bulk data tranffi): Giao thức mà chuyển phần lớn dữ liệu khi người sử dụng đang đợi nhận dữ liệu (có thể trì hoãn) được quyền ưu tiên 4. FTP và HTTP thuộc nhóm này.  Giao thông tương dao (Interactive tranffic): Giao thức dạng như TELNET cần sự tương giao với người sử dụng cấp sự tương giao với người sử dụng được cấp ưu tiên cao thứ 2 (6) trong nhóm.  Giao thông điều khiển (Control traffic): Giao thông diều khiển được quyền ưu tiên cao nhất (7) trong loại này. Giao thức routing như OSPF và RIP và giao thức quản trị SNMP sử dụng quyền ưu tiên này.  Giao thông điều khiển không tắc nghẽn ( Noncongestion- controlled tranffic): Kiểu này gán cho kiểu giao thông mà chờ đợi một sự hãon lại nhỏ nhất. Loại bỏ gói tin không phải là tốt. Sự chuyển giao lại trong hầu hết tình huống là có thể hti hành được. Nói 1 cách khác nguồn
  22. không sửa lại nó thích nghi với sự tắc nghẽn. Audio và video thời gian thực là những ví dụ điển hình cho dạng giao thông này. Quyền ưu tiên từ 8 đến 15 được cấp phát cho giao thông điều khiển không tắc nghẽn. Mặc dù ở đây không có bát kỳ một sự cấp phát chuẩn đặc biệt nào cho loại dữ liệu này, quyền ưu tiên thường được cấp phát dự vào số lượng cảu dữ liệu nhận có thể bị tác động bởi việc loại bỏ gói tin. Dữ liệu chứa ít sự rườm rà (như audio và video chất lượng thấp) có thể được đưa 1 quyền ưu tiên cao hơn (15). Dữ liệu chứa nhiều sự rườm rà (như video và audio chất lượng cao) có thể bị đưa 1 quyền ưu tiên thấp hơn (8). Quyền ưu tiên Mô tả 8 Dữ liệu với nhiều sự rườm rà nhất . . . 15 Dữ liệu với ít sự rườm rà nhất + Nhãn lưu lượng ( Flow Lable):  Một dãy các gói tin được gửi từ 1 nguồn riêng đến đích riêng, cần sự điều khiển đặc biệt từ router gọi là lưu lượng của những gói tin. Sự kết hợp của địa chỉ nguồn và giá trị của nhãn lưu lượng định nghĩa 1 cách duy nhất 1 lưu lượng của những gói tin.  Đối vơ router 1 lưu lượng là 1 dãy các gói tin chia sẻ cùng đặc tính như là việc di chuyển cùng 1 đường, sử dụng cùng một nguồn, có cùng kiểu an toàn vv Một router mà hỗ trợ sự điều khiển của nhãn lưu lượng có 1 bảng nhãn lưu lượng. Bảng này có 1 mục vào cho mỗi nhãn lưu lượng hoạt động, mỗi mục định nghĩa 1 dịch vụ được yêu cầu bởi nhãn lưu lượng tương ứng. Khi router nhận được 1 gói tin nó tra cứu bảng nhãn lưu lượng của nó để tìm mục vào tương ứng cho giá trị nhãn lưu lượng được định nghĩa trong gói tin. Sau đó nó cung cấp cho gói tin những dịch vụ đã đề cập trong mục vào. Tuy nhiên chú ý là nhãn lưu lượng tự nó không cung cấp thông tin cho những mục vào của bảng nhãn lưu lượng, thông tin được cung cấp bởi những thứ khác như là tuỳ chọn nhảy từng bước một hay những giao thức khác.  Trong hình thức đơn giản nhất của nó, 1 nhãn lưu lượng có thể được sử dụng để tăng tốc 1 tiến trình của 1 gói tin bởi 1 router. Khi router nhận được gói tin thay vì xem bảng tìm đường và đi đến thuật toán tìm đường để định nghĩa địa chỉ cảu bước nhảy kế tiếp, nó có thể dễ dàng được nhìn thấy trong 1 bảng nhãn lưu lượng cho bước nhảy kế tiếp.  Trong hình thức rắc rối hơn của nó 1 nhãn lưu lượng có thể được sử dụng để hỗ trợ quá trình chuyển giao audio và video thời gian thực. Audio
  23. và video thời gian thực một cách đặc biệt trong hình thức kĩ thuật số đòi hỏi những nguồn như băng thông rộng, buffer lớn, thời gian tiến trình dài vv Một tiến trình có thể đặt trước chỗ cho những nguồn này trước để đảm bảo là dữ liệu thời gian thực sẽ không bị tạm hoãn do thiếu nguồn. Sự sử dụng dữ liệu thời gian thực và chỗ đặt trước của những nguồn đòi hỏi những giao thức khác như là giao thức thời gian thực ( Real- Time Protocol- RTP) hay giao thức đặt trước nguồn (Resource Reservation Protocol- RRP) trong bổ sung của IPv6.  Để cho phép những hiệu quả sử dụng của nhãn lưu lượng 3 điều luật được đưa ra :  Nhãn lưu lượng được cấp phát cho 1 gói tin bởi 1 host gốc. Nhãn là một số bất kì từ 1 đến 224 -1. Nó sẽ không sử dụng lại một nhãn lưu lượng cho 1 lưu lượng mới khi lượng dang tồn tại vẫn hoạt động.  Nếu như 1 host không hỗ trợ nhãn lưu lượng, nó sẽ đặt trường này là 0. Nếu như 1 router không hỗ trợ nhãn lưu lượng, nó đơn giản sẽ phớt lờ đi .  Tất cả những gói tin thuộc cùng 1 lưu lượng có thể có cùng nguồn, cùng đích, cùng sự ưu tiên và cùng nhưng tuỳ chọn. 1.3.4.2 So sánh giữa vùng header của IPv4 và IPv6 : - Trường độ dài vùng header đã bị loại đi trong IPv6 vì độ dài vùng header đã được xử lý trong phiên bản này. - Trường kiểu dịch vụ đã bị loại đi trong IPv6. Trường quyền ưu tiên và nhãn lưu lượng cùng kiểm soát chức năng của trường kiểu dịch vụ. - Trường độ dài tổng cộng đã bị loại đi trong IPv6 và được thay thế bằng trường độ dài payload. - Những Trường chứng thực ( identification ), Trường cờ ( flag ), và những Trường offset đã bị loại bỏ từ vùng header nền tảng trong IPv6. Chúng được đi kèm trong vùnh header mở rộng từng miếng. - Trường TTL được gọi là Giới hạn nhày trong IPv6. - Trường giao thức dược thay thế bởi Trường vùng header kế tiếp. - Vùng header checksum bị loại đi vì checksum được cung cấp bởi giao thức của tầng cao hơn nó vì thế không cần thiết ở đây. - Những Trường tuỳ chọn trong IPv4 được trang bị như những vùng header mở rộng trong IPv6. 1.3.5 Vùng header mở rông : - Độ dài của vùng header được bố trí 40 byte. Tuy nhiên, để đem đến nhiều chức năng hơn cho đơn vị dữ liệu IP vùng header nền tảng có thể cho theo sau đến 6 vùng header mở rộng. Nhiều vùng header này là những tuỳ chọn trong IPv4.
  24. VER PRI Flow label Độ dài Payload Vùng Header kế tiếp Giới hạn nhảy Địa chỉ nguồn Địa chỉ đích Vùng Header kế tiếp Độ dài vùng Header Vùng Header kế tiếp Độ dài vùng Header    Vùng Header kế tiếp Độ dài vùng Header Hình 18 : Định dạng vùng header mở rộng ( Extenion header format ) - Sáu loại vùng header đã được định nghĩa. Chúng là tuỳ chọn nhảy từng bước, lộ trình nguồn, sự phân mảnh, sự chứng thực, Payload bảo mật mã hoá và tuỳ chọn đích (Xem hinh 19).
  25. Tuỳ chọn nhảy từng bước Nguồn tìm đường Sự phân miếng Những vùng Header mở rộng Sự chứng thực Bảo mật Payload mã hoá Tuỳ chọn đích Hình 19 : Những loại vùng header mở rộng (Extension header types) 1.3.5.1 Tuỳ chọn nhảy từng bước (Hop–by–hop option): - Tuỳ chọn nhảy từng bước được sử dụng khi nguồn cần chuyển thông tin qua tất cả các router được thăm bởi đơn vị dữ liệu. Ví dụ, không chừng những router sẽ phải bị gây ra bởi sự quản trị, sự gỡ rối hay những chức năng điều khiển nào đó.Hay,nếu như độ dài của đơn vị dữ liệu rộng hơn thông thường là 65,535 byte, nhưng router phải có thông tin này. Hình 20 cho thấy định dạng của vùng header kế tiếp trong một chuỗi vùng header. Độ dài vùng header định nghĩa số byte trong vùng headerbao gồm cả trường vùng header kế tiếp). Phần còn lại của vùng header chứa những tuỳ chọn khác nhau. Vùng header nền tảng Vùng header kế tiếp Độ dài vùng header Những tuỳ chọn Phẫn còn lại của Payload Hình 20 : Định dạng vùng header tuỳ chnj nhảy từng bước (Hop – by – hop option header format)
  26. - Xa hơn, chỉ có 3 tuỳ chọn được định nghĩa: Pad1, PadN và jumbo payload (Xem hình 21). Mã số (8 bít) Độ dài (8 bít) Dữ liệu (Độ dài có thể thay đổi) Hành C Kiểu 2 bít 1 bít 5 bít Hành động : sẽ thực hiện nếu tuỳ chọn không được xác nhận 00 Bỏ qua tuỳ chọn Kiểu 01 Loại bỏ đơn vị dữ liệu không có hành động nào nữa 00000 Pal1 10 Loại bỏ đơn vị dữ liệu và gửi 1 thông điệp lỗi 00001 PadN 11 Như mã 10, nhưng nếu đích không phải địa chỉ munlticast C: (change) giá trị thay đổi tuỳ chọn 00010 jumbo payload 0 : không bị thay đổi trong vận chuyển 1 : Có thể bị thay đổi trong vận chuyển Hình 21 : Định dạng của những tuỳ chọn của vùng header tuỳ chọn nhảy từng bước(Format of options in a hop–by–hop option header)  Pad1: Tuỳ chọn này dài 1 byte và nó được thiết kế cho những mục đích sắp nhóm. Một số tuỳ chọn cần phải băt đầu ở 1 bit riêng biệt trong 32 bit (xem mô tả jumbo payload). Nếu một tuỳ chọn của sự yêu cầu này rớt chính xác là 1 byte, Pad1 sẽ được thêm vào để làm nên sự khác biệt. Pad1 không chứa trường độ dài tuỳ chọn mà còn không cả chứa trường dữ liệu tuỳ chọn. Nó gồm có duy nhất trường mã tuỳ chọn với tất cả các bít được đặt là 0 ( hành động là 00, C là kiểu 00000). Pad1 có thể được chèn vào bất kỳ chỗ nào trong vùng header tuỳ chọn nhảy từng bước.
  27. Những tuỳ chọn Pad1 Mã 00000000 ~ Dữ liệu ~ a. Pad1 b. Sử dụng làm đệm Hình 22 : Pad1  PadN: PadN giống Pad1 về ý tưởng. Sự khác nhau là PadN được sử dụng khi 2 hay nhiều bít được cần cho việc sắp nhóm. Tuỳ chọn này gồm có 1 byte mã tuỳ chọn, 1 byte độ dài tuỳ chọn, và một biến số những số 0 làm byte đệm. Giá trị của mã tuỳ chọn là 1 (hành động là 00, C là 0 và kiểu là 00001). Độ dài tuỳ chọn chứa số byte đệm. Mã Độ dài Dữ liệu 00000001 Tất cả bít 0 1 byte 1 byte số byte có thể thay đổi Hình 24: Jumbo Payload 1.3.5.2 Lộ trình nguồn (Source Routing):  Vùng header mở rộng lộ trình nguồn kết hợp với ý tưởng của những tuỳ chọn lộ trình nguồn chính xác và lộ trình nguồn không chính xác của IPv4. Vùng header lộ trình nguồn chứa một số nhỏ nhất của 7 trường. Hai trường đầu tiên, vùng header kế tiếp và độ dài vùng header, là đúng với vùng header mở rộng nhảy từng bước.  Trường kiểu định nghĩa lộ trình là chính xác hoặc không chính xác. Trường những địa chỉ còn lại chỉ ra số bước nhảy cần để tới đích. Trường mặt nạ tuyệt đối/ tương đối xác định sự chắc chắn của lộ trình. Nếu mặt nạ là tuyệt đối, lộ trình phải theo chính xác những gì được chỉ ra bởi nguồn. Nếu thay vào mặt nạ tương đối những router khác có thể thêm vào trong vùng header.
  28. Vùng header nền tảng Vùng header kế Độ dài vùng Kiểu Những địa chỉ Dự trữ Mặt nạ tuyệt đối/ tương đối Địa chỉ thứ nhất Địa chỉ thứ hai    Địa chỉ cuối cùng Phần còn lại của Payload Hình 25 : Lộ trình nguồn (Source Routing)  Địa chỉ đích trong lộ trình nguồn không tuân theo sự định nghĩa trước đó của chúng ta (địa chỉ cuối cùng trong đơn vị dữ liệu). Thay vào đó nó thay đổi từ router sang router. Thí dụ : Host muốn gửi tới 1 đơn vị dữ liệu sang host B sử dụng 1 lộ trình riêng: A đến R1 đến R2 đến R3 đến B. Chú ý là địa chỉ đích nằm trong những vùng header nền tảng. Nó không liên tiếp như bạn mong đợi. Thay vào đó nó thay đổi theo từng router. Những địa chỉ trong vùng header mở rộng cũng thay đổi theo từng router. Nguồn: A Nguồn: A Nguồn: A Nguồn: A Đích: R1 Đích: R1 Đích: R1 Đích: R1 Còn lại: 3 Còn lại: 3 Còn lại: 3 Còn lại: 3 R2 R2 R2 R2 R3 R3 R3 R3 B B B B A B   R1 R3 R3
  29. Hình 26: Ví dụ lộ trình nguồn (Source Routing Example) 1.3.5.3 Sự phân miếng ( Fragmentation):  Ý tưởng về sự phân miếng như ở trong IPv4. Tuy nhiên nơi mà sự phân miếng chiếm giữ không giống nhau. Ở IPv4 nguồn hoặc router cần phân miếng nếu cỡ của đơn vị dữ liệu lớn hơn MTU của mạng vơi nhóm đơn cị dữ liệu sẽ được đưa đi. Ở IPv6 chỉ những nguồn nguyên thuỷ mới được phân miếng. Một nguồn phải sử dụng 1 kỹ thuật khám phá quỹ đạo MTU (Path MTU Discovery) để tìm MTU nhỏ nhất được hỗ trợ bởi bất kỳ một mạng nào trong quỹ đạo. Nguồn sau đó phân miếng sự khám phát này.  Nếu nguồn không sưe dụng kỹ thuật khám phá quỹ đạo MTU nó có thể phân miếnh đơn vị dữ liệu thành những miếng cỡ 576 byte hoặc nhỏ hơn. Đây là cỡ nhỏ nhất MTU yêu cầu cho mỗi mạng kết nối vào Internet. Hình dưới đây cho ta thấy định dạng của vùng header mở rộng sự phân miếng: Vùng Header nền tảng Vùng header kế Độ dài vùng Sự phân miếng bù 0 M tiếp header đắp Địa chỉ thứ nhất Phần còn lại của Payload Hình 27 : Sự phân miếng (Fragmentation) 1.3.5.4 Sự chứng thực (Authentication):  Vùng header mở rộng sự chứng thực có một mục đích kép: nó làm cho thông điệp gửi có giá trị và đảm bảo sự nguyên vẹn của dữ liệu. Đầu tiên cần để người nhận có thể chắc chắn là từ người gửi thật và không phải là từ 1 kẻ mạo danh. Điều cuối cùng cần kiểm tra là dữ liệu không bị thay đổi trong vận chuyển bởi hacker.  Định dạng của vùng Header mở rộng sự chứng thực được trình bày ở hình 28 . Trường chỉ mục tham gia số bảo mật định nghĩa thuận toán được sử dụng cho sự chứng thực. Trường chứng thực chứa dữ liệu chứa những dữ liệu thật được sinh ra bởi thuật toán.
  30. Vùng Header nền tảng Chỉ mục tham số bảo mật Sự chứng thực dữ liệu Phần còn lại của Payload Hình 28 : Sự chứng thực (Authentication)  Nhiều thuật toán khác nhau có thể được sử dụng cho sự chứng thực. Hình 29 phác hoạ những phương thức tính toán trường chứng thực dữ liệu. Khoá bảo mật 128 bít Đơn vị dữ liệu IP với những trường Sự chứng sự thay đổi và sự Thuật toán sự thực dữ liệu chứng thực được chứng thực 128 bít đặt là 0 Khoá bảo mật 128 bít Hình 29 : Sự tính toán của sự chứng thực dữ liệu (Calculation Of Authentication Data)
  31.  Người gửi đi qua khoá bảo mật 128 bít, toàn bộ đơn vị dữ liệu IP và khoá bảo mật 128 bít lần nữa để đến thuật toán. Những trường này trong đơn vị dữ liệu với những giá trị có thay đổi trong quá trình vận chuyển (Ví dụ như bước nhảy) sẽ được đặt là 0. Đơn vị dữ liệu qua được thuật toán sẽ chứa vùng header sự chứng thực, với trường sự chứng thực dữ liệu được đặt là 0. Thuật toán tạo ra sự chứng thực dữ liệu với những thứ đã được đưa vào trong vùng header mở rộng trước khi tới quá trình vận chuyển đơn vị dữ liệu.  Những chức năng người nhận trong 1 phương pháp tương tự. Nó nhận mang đi khoá bảo mật và nhận lấy đơn vị dữ liệu ( lần nữa với những trường thay đổi được đặt là 0) và đi qua chúng để đến thuật toán sự chứng thực. Nếu kết quả giống sự chứng thực dữ liệu, đơn vị dữ liệu được chứng thực nếu không chúng sẽ bị loại. 1.3.5.5 Payload bảo mật mã hoá (Encrypted Secutity Payload - ESP): - Payload bỏ mật mã hoá là phần mở rộng mà cung cấp một cách tín nhiệm và bảo vệ chống lại sự nghe lén. Hình 30 trình bày sự định dạng. Trường chỉ mục tham số bảo mật 32 bít định nghĩa kiểu mã hoá / không mã hoá được sử dụng. Vùng Header nền tảng Chỉ mục tham số bảo mật Dữ liệu mã hoá Hình 30 : Payload bảo mật mã hoá Trường khác chứa những dữ liệu đang mã hoá với bất kỳ những tham số thêm nào được cần bởi thuật toán. Sự mã hoá có thể được trang bị trong 2 cách :  Mode vận chuyển (Transport Mode): Trong mode vận chuyển một TCP hay đơn vị dữ liệu người sử dụng UDP là cái đầu tiên được mã hoá và được gói vào trong 1 gói IPv6. Sự mã hoá trong mode vận chuyển được sử dụng đa số để mã hoá dữ liệu từ host sang host.
  32. Vùng header nền tảng và những vùng header khác Chỉ mục Dữ liệu thô Sự mã hoá Dữ kiệu mã hoá Hình 31 : Sự mã hoá mode vận chuyển (Transport Mode Encryption)  Mode tunnel (Tunnel Mode): Trong mode tunnel toàn bộ dữ liệu IP với những vùng Header nền tảng của nó và những vùng Header mở rộng được mã hoá và gói vào trong 1 gói IP mới sử dụng vùng Header mở rộng Paylaod bảo mật mã hoá. Nói cách khác chúng ta có 2 vùng Header nền tảng: 1 đã mã hoá, 1 chưa mã hoá. 1.3.5.6 Tuỳ chọn đích (Destination Option): - Tuỳ chọn đích được sử dụng khi nguồn chỉ cần chuyển thông tin đến đích. Những router không ngay lập tức trao quyền truy cập cho những thông tin này. Định dạng của tuỳ chọn đích tương tự như tuỳ chọn nhảy từng bước. Xa hơn chỉ có Pad1 và PadN được định nghĩa.  So sánh giữa IPv4 và IPv6: Chúng ta hãy thực hiện một số sự so sánh giữa những vùng Header mở rộng của IPv4 và IPv6:  Tuỳ chọn không hoạt động (no-operetion) và kết thúc tuỳ chọn ( end- of - option) trong IPv4 được thay bằng Pad1 và PadN trong IPv6.  Tuỳ chọn bản ghi tìm đường không được trang bị trong IPv6 vì nó không được sử dụng.  Tuỳ chọn ten thời gian (timestamp) không được trang bị vì nó không được sử dụng.  Tuỳ chọn nguồn tìm đường (source route) được gọi là vùng Header mở rộng tuỳ chọn nguồn tìm đường trong IPv6.  Những trường sự phân miếng (fragmentation) trong khu vực vùng Header nèn tảng của IPv4 được chuyển đến vùng Header mở rộng tuỳ chọn sự phân miếng của IPv6.  Vùng Header sự chứng thực là mới trong IPv6.  Vùng Header mở rộng Payload bảo mật mã hoá là mới trong IPv6.
  33. CHƯƠNG 2 ICMPv6 (Internet Control Message Protocol Version 6) Một giao thức khác đã được chỉnh sửa trong phiên bản 6 của nhóm giao thức TCP/IP cho phù hợp là ICMP (ICMPv6). Phiên bản mới này mang theo chiến lược và mục đích củ phiên bản 4. ICMPv4 đã được chỉnh sửa cho phù hợp với IPv6. Thêm nữa một vài giao thức độc lập trong phiên bản 4 bây giờ là một phần của ICMPv6. Giao thức ARP và IGMP ở phiên bản 4 được kết hợp trong phiên bản 6. Giao thức RARP bị loại khỏi nhóm vì không thường xuyên được sử dụng. Theo đó BCOTP đã thay thế RARP. IGM ICP ICPMv6 IPv6 IPv4 ARP RAR Lớp mạng trong phiên bản 4 Lớp mạng trong phiên bản 6 Hình 32 : So sánh giữa mạng lưới phiên bản 4 và 6 Trong ICMPv4 ta chia thông điệp ICMP thành 2 loại. Nhưng dù sao đi nữa mỗi loại cũng có nhiều kiểu thông điệp hơn trước.
  34. Thông điệp ICMP Báo cáo lỗi Truy vấn Hình 33 : Kiểu thông điệp ICMPv6 Mặc dù khuôn dạng chung của một thông điệp ICMP thì khác với mỗi kiểu thông điệp, 4 byte đầu tiên thì phổ biến cho tất cả như đã chỉ ra trong hình 34. Trong chương đầu tiên kiểu ICMP xác định loại thông điệp. Mã trường chỉ rã nguyên nhân của kiểu thông điệp riêng biệt. Trường phổ biến cuối cùng là trường tổng kiểm tra, được tính toán theo cùng một kiểu như đã được mô tả trong ICMPv4. 8 bít 8 bít 8 bít 8 bít Mã Tổng kiểm tra Thông tin khác Dựa vào Hình 34 : Khuôn dạng chung của thông điệp ICMP 2.1 Error Reporting (Báo cáo lỗi): - Như chúng ta thấy một trong nhiệm vụ chính của ICMP là báo cáo lỗi. Năm kiểu lỗi được đưa ra : Destination Unrechable, Packet too Big, Time Exceeded, Parameter Problems, Redirection. ICMPv6 một gói lỗi, cái sau đó được đóng gói trong một gói dữ liệu IP. Cái này được chuyển đến nguồn ban đầu của gói dữ liệu sai.
  35. Error Reporting Destination Packet too Time Parameter Redirection Unrechable Big Exceeded Problems Hình 35: Báo cáo lỗi thông điệp - Bảng 1 so sánh giữa tin báo lỗi của ICMPv4 và ICMPv6. Thông điệp nguồn dập tắt bị loại trừ ở phiên bản 6 bởi vì quyền ưu tiên và trường nhãn luồng cho phép tuyến kiểm soát sự tắc nghẽn và loại bỏ những thông điệp không quan trọng. Trong phiên bản này không cần thiết phải nhận dạng người gửi. Thông điệp packet – too – big được thêm vào bởi vì việc rời từng mảnh là trách nhiệm của người gửi ở trong IPv6. Nếu người gửi không làm đúng quyết định cỡ của gói, tuyến đường sẽ không có sự lựa chọn nào ngoài việc loại bỏ gơi và gửi một báo lỗi cho người gửi. Bảng 1 . So sánh giữa tin báo lỗi của ICMPv4 và ICMPv6 Type fo Message Version 4 Version 6 Destination unreachable Yes Yes Source Quench Yes No Packet too big No Yes Time Exceeded Yes Yes Paramenter Problem Yes Yes Redirection Yes Yes 2.1.1 Destination unreachable ( Không thể với tới được nơi đến): - Khái niệm về thông điệp không thể với tới được nơi đến hoàn toàn giống với những gì chúng ta mô tả ở ICMPv4. Hình 36 chỉ ra khổ thông điệp không thể với tới nơi đến. Nó gần giống với cái đã được xác định cho phiên bản 4, với kiểu đánh giá bằng 1.
  36. Kiểu 1 Mã : 0 to 4 Tổng kiểm tra Không sử dụng (All 0s) Gói dữ liệu bộ phận của IP nhận được bao gồm đầu mục IP cộng với 8 byte của dữ liệu gói dữ liệu Hình 36 : Định dạng thông điệp không thể với tới được nơi đến - Mã trường kiểu này chỉ ra nguyên nhân cho việc loại bỏ gói dữ liệu và giải thích chính xác cái gì bị lỗi.  Code 0 : không có đường dãn đến đích.  Code 1 : Giao tiếp bị cản.  Code 2 : Rãnh nguồn chính xác không thể làm được  Code 3 : Địa chỉ đến không tới.  Code 4 : Cổng không sẵn sàng. 2.1.2 Packet too Big ( Gói quá lớn ): - Đây là một kiểu thông điệp mới được thêm vào phiên bản 6. Nếu một đường rãnh nhận được gói dữ liệu mà rộng hơn khổ MTU (Maximum Transmission Unit) của mạng, cái gói mà gói dữ liệu cần qua thì hai điều sẽ xảy ra. Đầu tiên đường rãnh loại bỏ gói dữ liệu và sau đó một gói báo lỗi, ICMP được gửi cho nguồn. Hìng 37 chỉ ra khổ của gói. Cần phải chú ý rằng chỉ có duy nhất một mã (code 0) và trường MTU định dạng người gửi của gói cỡ lớn nhất được nhận bởi mạng. Kiểu: 2 Mã : 0 to 4 Tổng kiểm tra MTU Gói dữ liệu bộ phận của IP nhận được bao gồm đầu mục IP cộng với 8 byte của dữ liệu gói dữ liệu Hình 37 : Packet too big message format
  37. 2.1.3 Time Exceeded ( Vượt quá thời gian): - Thông điệp này gần giống với 1 kiểu thông điệp tỏng phiên bản 4. Điểm khác biệt duy nhất là kiểu giá trị đã đươc thay đổi tới 3. Hình 38 chỉ ra khổ của thông điệp vượt quá thời gian. Kiểu :3 Mã : 0 to 4 Tổng kiểm tra Không sử dụng (All 0s) Gói dữ liệu bộ phận của IP nhận được bao gồm đầu mục IP cộng với 8 byte của dữ liệu gói dữ liệu Hình 38 : Định dạng thông điệp vượt quá thời gian - Như trong phiên bản 4, mã 0 được sử dụng khi gói dữ liệu bị loại khỏi đường rãnh phụ thuộc vào trường bước nhảy ngắn- giới hạn không giá trị. Mã 1 được sử dụng khi những đoạn của gói dữ liệu bị loại bởi các mảnh khác không tới được trong thời gian quy định. 2.1.4 Parameter Problem (Vấn đề tham số): - Thông điệp này giống với loại thông điệp kế thừa trong phiên bản 4. Nhưng dù sao giá trị của kiểu này cũng đã được thay đổi tới 4 và cỡ của trường bù lại được tăng lên thành 4 byte. Nó cũng có 3 mã khác nhau thay vì 2 mã. Mã trường chỉ ra nguyên nhân loại bỏ dữ liệu và nguyên nhân của lỗi : + Code 0: Một trong những trườngchủ có lỗi hoặc sự nhập nhằng. Trong trường hợp này giá trị của trường điểm chỉ ra byte có vấn đề. Ví dụ nếu giá trị bằng 0, byte đầu tiên sẽ không phải trường hiệu quả. + Code 1: Mã này nhận dạng phần mở rộng chủ không thể nhận ra + Code 2: Mã này nhận dạng lựa chọn không thể xảy ra.
  38. Kiểu : 4 Mã : 0 to 4 Tổng kiểm tra Offset Pointer Gói dữ liệu bộ phận của IP nhận được bao gồm đầu mục IP cộng với 8 byte của dữ liệu gói dữ liệu Hình 39: Parameter- problem message format 2.1.5 Redirection (Sự gửi lại lần nữa): - Mục đích của thông điệp này giống với những gì chúng ta mô tả trong phiên bản 4. Nhưng khổ của gói tin đã được thay đổi cho phù hợp với cỡ của IP trong phiên bản 6. Do đo, một lựa chọn được thêm vào để host (chủ) biết được địa chỉ vật lý của đường rãnh đích. Kiểu : 137 Mã: 0 Tổng kiểm tra Dự trữ Đích (chương trình vận chuyển) mà IP hướng vào Nơi đến của địa chỉ IP Mã .OPT Độ dài .OPT Đích (chương trình vận chuyển) vật lý hướng vào Gói dữ liệu bộ phận của IP nhận được bao gồm đầu mục IP cộng với 8 byte của dũ liệu gói dữ liệu
  39. Hình 40: khuôn dạng thông báo sự gửi lại lần nữa 2.2 Query (Truy vấn): - Để thêm vào báo cáo lỗi ICMP cũng có thể chuẩn đoán một vài vấn đề về mạng. Cái này hoàn thành toàn bộ thông điệp Query. Bốn nhóm thông điệp khác nhau đã được nhận dạng : hỏi đáp lặp lại, đường kéo và quảng cáo, sự nài xin và quảng cáo và nhóm thành viên. Query Echo Router solicitation Neighbor Group request and and advertisement solicitation and membership advertisement Hình 41 : Query message - Bảng 2 cho ta thấy sự so sánh giữa thông điệp Query của phiên bản 4 và phiên bản 6. Hai bộ thông điệp của Query loại khỏi ICMPv6: thời gian yêu cầu đáp ứng, địa chỉ yêu cầu đáp ứng, thông điệp dấu thời gian yêu cầu và đáp ứng bị loại bởi vì chúng là dụng cụ của giao thức khác như TCP và bởi vì chúng không được sử dụng trước đó. Thông điệp che dấu địa chỉ yêu cầu và đáp ứng bị loại khỏi IPv6 bởi vì phần subnet của một địa chỉ cho phép người đặt mua được sử dụng tới subnet thứ 232 -1. Trước đó subnet bị dấu đi như địa chỉ định dạng ở IPv4 không cần thiết ở đây. Bảng 2: Comparsion of query message in ICMPv4 and ICMPv6 Type of message ICMPv4 ICMPv6 Echo Request And Reply Yes Yes Timestamp Request And Reply Yes No Address mask Request And Reply Yes No Router solicitation and addvertisement Yes Yes Neighbor Solicitation and advertisement ARP Yes
  40. Group Menmbership IGMP Yes 2.2.1 Echo request and reply (Yêu cầu và đáp ứng lặp lại): - Ý tưởng và khổ thông điệp yêu cầu và đáp ứng giống với những gì trong phiên bản 4. Điểm khac duy nhất là giá trị của kiểu như đã được chỉ ra ở hình dưới đây: Kiểu: 128 hoặc 129 Mã: 0 tới 4 Tổng kiểm tra Identifier Số nối tiếp Dữ liệu để chọn Nhắn bởi thông báo yêu cầu : Lặp lại bởi thông báo trả lời Hình 42: Thông báo yêu cầu trả lời thông điệp 2.2.2 Router solicitation and addvertisement (Yêu cầu và quảng cáo chương trình vận chuyển): - Ý tưởng bên dưới thông điệp Router solicitation and addvertisement cũng giống như trong phiên bản 4. Khổ Router solicitation and addvertisement giống như ICMPv4. Nhưng dù sao một lựa chọn đã được thêm vào để cho phép máy chủ thông báo địa chỉ vật lý của nó, để đường rãnh đáp lại dẽ dàng hơn. Khổ của Router solicitation and addvertisement khac vói ICMPv4: ở đây một đường rãnh chỉ thông báo về nó không mang thông tin địa chỉ vật lý của đường rãnh cho sự tiện lợi của máy chủ. Lựa chọn khác cho phép đường rãnh thông báo về cỡ của MTU. Lựa chọn thứ 3 cho phép đường rãnh định dạng thời gian có hiệu lực và được ưa thích.
  41. Type 113 Code : 0 Checksum Unused (All 0s) Option Code:1 Option length Host Physical Address a. Router solicitation format Type 134 Code : 0 Checksum Unused (All Max hop M 0 0s) Router lifetime Reaxhability Lifetime Reachabili Transmission Interval Option Code: Option Length Router physical Address Option Code: Option length MTU size b. Router Advertisement Format Hình 43 : Khuôn dạng thông báo yêu cầu và quảng cáo chương trình chuyển vận 2.2.3 Neighbor Solicitation and advertisement ( Sự yêu cầu và quảng cáo lân cận): - Như đã được đề cập đến mạng lưới trong phiên bản 4 chứa đựng 1 giao thức độc lập gọi là ARP. Trong phiên bản 6 giao thức này bị loại và nhiệm vụ của nó cũng bao gồm trong ICMPv6. ý tưởng cũng trùng khớp nhưng khổ của thông điệp đã thay đổi. Hình dưới đây sẽ chỉ ra khổ của Neighbor Solicitation and advertisement. Một lựa chọn duy nhất mang thông tin của địa chỉ vật lý người gửi chjo sự thuận tiện của người nhận.
  42. Type: 135 Code: 0 Checksum Unused (All 0s) Terget IP Address Option Code: Option Length Solicitor Physical Address a. Neighbor Solicitation Type: 136 Code: 0 Checksum Unused (All 0s) Terget IP Address Option Code: Option Length Target Physical Address b. Neighbor Advertisement Hình 44: Neighbor Solicitation And Advertisement Message Format 2.2.4 Group Membership ( Sự tham gia nhóm ): Trong phiên bản 6 giao thức này bị loại và nhiệm vụ của nó cũng được bao gồm trong ICMPv6. Mục đích thì hoàn toàn giống. Có 3 loại thông điệp Group Membership: báo cáo, bảng câu hỏi và giới hạn. Thông điệp báo cáo và giới hạn được gửi từ vật chủ cho đường rãnh. Thông điệp truy vấn được gửi từ đường rãnh cho vật chủ.
  43. Host Report Router Report Termination Hình 45 : Group Membership Message Type: 130 Code: 0 Checksum Maximum response delay Reserved IP multicast Address a. Query Type: 131 Code: 0 Checksum Reserved IP multicast Address b. Report Type: 132 Code: 0 Checksum Reserved IP multicast Address b. Report Hình 46: Group Membership Message Format - Như chúng ta đã chú ý trong cuộc thảo luận về phiên bản 4, 4 tình huống khác nhau kếo theo thông điệp Group Membéhip đã được chỉ ra ở hình 47 :
  44. Host Report Router 131 Group Address a. Joining The Group Host Query Router 131 b. Monitoring The Group Host Report Router 131 c. Membership Continuation Host Termination Router 131 d. Leaving The Group Hình 47: For Situation Of Group Membership Operation
  45. CHƯƠNG 3 : Sự chuyển tiếp từ IPv4 tới IPv6 3.1.Đặt vấn đề: - Giao thức IPv6 có nhiều ưu điểm vượt trội so với IPv4, đáp ứng được nhu cầu phát triển của mạng Internet hiện tại và trong tương lai. Do đó, giao thức IPv6 sẽ thay thế IPv4. Tuy nhiên, không thể chuyển đổi toàn bộ các nút mạng IPv4 hiện nay sang IPv6 trong một thời gian ngắn. Hơn nữa, nhiều ứng dụng mạng hiện tạichưa hỗ trợ IPv6. Theo dự báo của tổ chức ISOC, IPv6 sẽ thay thế IPv4 vào khoảng 2020- 2030. Vì vậy, cần có một quá trình chuyển đổi giữa hai giao thức để tránh hiện tượng tương tự như sự cố Y2K. Các cơ chế chuyển đổi (Transition mechanism) phải đảm bảo khả năng tương tác giữa các trạm, các ứng dụng IPv4 hiện có với các trạm và ứng dụng IPv6. Ngoài ra, các cơ chế cũng cho phép chuyển tiếp các luồng thông tin IPv6 trên hạ tầng định tuyến hiện có. Trong giai đoạn chuyển đổi, điều quan trọng là phải đảm bảo sự hoạt động bình thường của mạng IPv4 hiện tại. Yêu cầu đối với các cơ chế chuyển đổi: + Việc thử nhiệm IPv6 không ảnh hưởng đến các mạng IPv4 hiện đang hoạt động. + Kết nối và các dịch vụ IPv4 tiếp tục hoat động bình thường. + Hiệu năng hoạt động của mạng IPv4 không bị ảnh hưởng. Giao thức IPv6 chỉ tác động đến các mạng thử nghiệm. + Quá trình chuyển đổi diễn ra từng bước. Không nhất thiết phải chuyển đổi toàn bộ các nút mạng sang giao thức mới. - Các cơ chế chuyển đổi được phân thành 2 nhóm với hai chức năng khác nhau: + Kết nối các mạng và các nút mạng IPv6 qua hạ tầng định tuyến IPv4 hiện có. Các cơ chế này bao gồm: Đường hầm (tunnel), 6to4, 6over4. + Kết nối các nút mạng IPv4 với các nút mạng IPv6. Các cơ chế này bao gồm: SIIT, NAT- PT, ALG, DSTM, BIS, BIA, SOCK64. - Mối cơ chế đều có ưu, nhược điểm và phạm vi áp dụng khác nhau. Tùy từng thời điểm trong giai đoạn chuyển đổi, mức độ sử dụng của các cơ chế chuyển đổi sẽ khác nhau. + Giai đoạn đầu: Giao thức IPv4 chiếm ưu thế. Các mạng IPv6 kết nối với nhau trên nền hạ tầng IPv4 hiện có thông qua các đường hầm IPv6 qua IPv4.
  46. + Giai đoạn giữa: Giao thức IPv4 và IPv6 được triển khai về phạm vi ngang nhau trên mạng. Các mạng IPv6 kết nối với nhau qua hạ tầng định tuyến IPv6. Các mạng IPv4 kết nối với các mạng IPv6 sử dụng các phương pháp chuyển đổi địa chỉ giao thức như NAT- PT, ALG +Giai đoạn cuối: Giao thức IPv6 chiếm ưu thế. Các mạng IPv4 còn lại kết nối với nhau trên hạ tầng định tuyến IPv6 thông qua các đường hầm IPv4 qua IPv6 khi chuyển hoàn toàn sang IPv6. 3.2. Các phương thức chuyển đổi: 3.2.1. Chồng hai giao thức (Dual Stack) - Đây là cơ chế đơn giản nhất cho phép nút mạng đồng thời hỗ trợ cả hai giao thức IPv6 và IPv4. Có được khả năng trên do một trạm Dual Stack càI đặt cả hai giao thức, IPv4 và IPv6. Trạm Dual Stack sẽ giao tiếp bằng giao thức IPv4 với các trạm IPv4 và băng giao thức IPv6 với các trạm IPv6. Application TCP UDP Ipv4 Ipv6 Data link (Ethernet) Hình 48. Chồng hai giao thức - Do hoạt động với cả hai giao thức, nút mạng kiểu này cần ít nhất một địa chỉ IPv4 và một địa chỉ IPv6. Địa chỉ IPv4 có thể được cấu hình trực tiếp hoặc thông qua cơ chế DHCP. Địa chỉ IPv6 được cấu hình trực tiếp hoặc thông qua khẳ năng tự cấu hình địa chỉ. - Nút mạng hỗ trợ các ứng dụng với cả hai giao thức. Chương trình tra cứu tên miền có thể tra cứu đồng thời cả các truy vấn kiểu A lẫn kiểu AAAA(A6). Nếu kêt quả trả về là bản ghi kiểu A, ứng dụng sẽ sử dụng giao thưc IPv4. Nếu kêt quả trả về là bản ghi AAAA(A6), ứng dụng sẽ sử
  47. dụng giao thức IPv6. Nếu cả hai kết quả trả về, chương trình sẽ lựa chọn trả về cho ứng dụng một trong hai kiểu địa chỉ hoặc cả hai. - Ưu điểm: + Đây la cơ chế cơ bản nhất để nút mạng có thể hoạt động đồng thời với cả hai giao thứ do đó, nó được hỗ trợ trên nhiều nền tảng khác nhau như FreeBSD, Linux, Windows và Solaris. + Cho phép duy trì các kết nối bằng cả hai giao thức IPv4 và IPv6. Nhược điểm: + Khả năng mở rộng kém vì phảI sử dụng địa chỉ IPv4. 3.2.2. Đường hầm IPv6 qua IPv4 (Tunnel) - Đường hầm cho phép kết nối các nút mạng IPv6 qua hạ tầng định tuyến IPv4 hiện có. Các trạm và các router IPv6 thực hiện bằng cách đóng các gói tin IPv6 bên rong gói tin IPv4.Có 4 cách thực hiện đường hầm: + Đường hầm từ router dến router. + Đường hầm từ trạm đến router. + Đường hầm từ trạm đến trạm + Đường hầm từ router đến trạm. host Ipv4 host Hình 49. Đường hầm Ipv6 qua Ipv4 - Các cách thực hiện đường hầm khác nhau ở vị trí của đường hầm trong tuyến đường giữa hai nút mạng. Trong hai cách đầu, gói tin được định đường hầm tới một router trung gian sau đó, router này sẽ chuyển tiếp gói tin đến đích. Với hai cách sau, gói tin được định đường hầm thẳng tới địa chỉ đích. - Để thực hiện đường hầm, hai điểm đầu đường hầm phải là các nút mạng hỗ trợ cả hai giao thức. Khi cần chuyển tiếp một gói tin IPv6, điểm đầu đường hầm sẽ đóng gói gói tin trong một gói tin IPv4 bằng các thêm phần mở đầu header IPv4 phù hợp. - Khi gói tin IPv4 đến điểm cuối đường hầm, gói tin IPv6 sẽ được tách ra để xử lý tùy theo kiểu đường hầm.
  48. IPv6 header Data Gói tin ban đầu: IPv4 header IPv6 header Data Gói tin đường hầm: IPv6 header Data Gói tin ra klhỏi đường hầm - Có hai loại đường hầm chính là đường hầm có cấu hình và đường hầm tự động. 3.2.2.1. Đường hầm có cấu hình (Configured tunnel) - Đặc điêm của đường hầm có cấu hình là địa chỉ điểm cuối đường hầm không được xác định tự động mà dựa trên những thông tin cấu hình trước tai điểm đầu đường hầm.
  49. 3ff:b00:a:1::1 192.168.1.1 192.168.2.1 3ffe:b00:a::3 11 ::2 IPv6 IPv4 IPv4 6 IPv6 IPv6 IPv4 IPv6 IPv6 IPv6 IPv6 Header Data Header header data Header data header Src=3ffe:b00:a:1::1 Src=192.168.1.1 Dst=3ffe:b00:a:3::2 Dst=192.168.2.1 Hình 50: Đường hầm có cấu hình. 3.2.2.2 Đường hầm tự động (Automatic tunnel) - Đặc điểm của đường hầm tự động là địa chỉ điểm cuối đường hầm được xác định một cách tự động. Đường hầm được tạo ra một cách tự động và cũng tự động mất đi. Mô hình đầu tiên là dùng địa chỉ IPv6 có khuôn dạng đặc biệt: địa chỉ IPv6 tương thích IPv4 để mã hóa thông tin về địa chỉ IPv4 trong địa chỉ IPv6. 96 bit 32 bit 0:0:0:0:0:0: IPv4 ADDR Hình 51: Địa chỉ IPv6 tương thích địa chỉ IPv4 - Tại điểm đầu đường hầm, nút mạng đóng gói sẽ tách phần địa chỉ IPv4 làm địa chỉ điểm cuối đường hầm để đóng gói gói tin. Ưu điểm: + Đường hầm tự động đơn giản, cho phép hai nút mạng IPv6 dễ dàng kết nối với nhau qua kết nối IPv4 hiện có mà không cần các cấu hình đặc biệt. Nhược điểm:
  50. + Hạn chế về không gian địa chỉ do phụ thuộc vào không gian địa chỉ IPv4. + Nguy cơ bị tấn công phá hoại bởi các tin tặc. - Do địa chỉ cuối đường hầm được xác định hoàn toàn tự động và gói tin đường hầm sẽ được giử đến địa chỉ IPv4 đó. Nếu không có cơ chế kiểm tra đặc biệt, giả sử có một gói tin được giửi dén router của mạng (203.162.7.0) với địa chỉ IPv6 đích ::203.162.7.255. Địa chỉ IPv4: 203.162.7.255 là địa chỉ broadcast của mạng do đó, các gói tin đường hầm sẽ được giử tới mọi trạm trong mạng. - Do đó, các đường hầm tự động thường được han chế sử dụng. Sau này người ta đề xuất một số phương pháp cải tiến như 6over, 6to4 3.2.3 6over4 Cơ chế cho phép các trạm IPv6 cô lập trên các liên kết vật lý không có các router IPv6 hoạt động dựa trên các gói tin multicast IPv4 như một liên kết cục bộ ảo. Cơ chế này còn gọi là mạng Ethernet ảo. Để hỗ trợ các cơ chế Phát hiện láng giềng và tự cấu hình địa chỉ stateless, một số các địa chỉ có phạm vi quản trị được sử dụng. Các nhóm multicas để giả lập một tầng liên kết Ethernet. Do đó, cơ chế phat hiện láng giềng (ND) giữa các trạm IPv6 với các trạm 6over4 giống như trong tầng Ethernet thông thường. Cách tiếp cận này tạo ra liên kết IPv6 thật trên một mạng LAN ảo. Điểm khác biệt là các trạm 6over4 vào cùng một miền IPv4 multicast thay vì một mạng chia sẻ đường truyền. IPv6 IPv6 over IPv4 IPv4
  51. Hình 52. 6over4 - Việc ánh xạ địa chỉ IPv6 sang địa chỉ tầng liên kết được thực hiện giống giao thức ND. Trong trường hợp này, tùy chọn Địa chỉ tầng liên kết nguồn/đích sử dụng IPv4 làm tầng liên kết. Do đó, toàn bộ mạng IPv4 được coi như một tầng liên kết chia sẻ đường truyền thông qua việc sử dụng các địa chỉ multicast sau đây: +Địa chỉ multicast tất cả các nút mạng (239.X.0.1): Địa chỉ quản trị này được dùng để đến mọi nút mạng trong miền IPv4 hỗ trợ cơ chế này. + Địa chỉ multicast tất cả các rouuter (239.X.0.2): Địa chỉ quản trị này được dùng để đến mọi router trong miền IPv4 hỗ trợ cơ chế này. + Địa chỉ multicast solicited-node (239.X.C.D): Địa chỉ quản trị này được dùng để xác định địa chỉ nút láng giềng (C và D là hai byte thấp trong địa chỉ IPv4). - Trong tấ cả các địa chỉ này, X chỉ định danh cục bộ liên kết (thường bằng 192). - Sử dụng tầng IPv4 làm tầng liên kết loại bỏ cá hạn chế của tầng vật lý đối với kế hoạch chuyển đổi. Các trạm có thể trải trên nhiều miền và thậm chí cách nhiều bước so với router IPv6. - Các trạm 6over4 nhận cấu hình (địa chỉ liên kết cục bộ và tiền tố, địa chỉ IPv4 của router hỗ trợ IPv6) sử dụng giao thức ND trên các địa chỉ multicast IPv4. - Sau đó các gói dữ liệu IPv6 được giử trong các gói dữ liệu IPv4 với kiểu giao thức 41. Chính các trạm sẽ thực hiện đường hầm. - Ưu điểm: + Các trạm IPv6 không đòi hỏi có địa chỉ tương thích hay đường hầm cấu hình. Chính các trạm sẽ thực hiện đường hầm. Kiến trúc cơ sở bao gồm một router với kết nối IPv6 và hỗ trợ 6over4, một mạng có khả năng multicast kết nối các trạm và router. Trong môi trường đó, các trạm 6over4 có thể kết nối với các trạm IPv6 khác. + Có tính mở rộng như IPv6 trên hầu hết các phương tiện truyền. - Nhược điểm: + Suy giảm MTU của gói tin dẫn đến giảm thông lượng. + Trong quá trình chuyển đổi, các router phải quảng bá ít nhất hai tiền tố IPv6, một cho liên kết LAN thực sự và một cho miền 6over4. Ngoài ra, độ dài tiền tố phải là 128 để phân biệt hai loại tìên tố cùng có kiẻu FE80::/64. 3.2.4 6to4 - 6to4 về bản chất là một cơ chế đường hầm tự động cho phép kết nối các mạng IPv6 với nhau thông qua hạ tầng IPv4 ngăn cách. Cơ chế này được cài đặt tại các router ở biên của mạng. Các router này phải có địa chỉ IPv4
  52. toàn cục có thể định tuyến được trên mạng Internet. Địa chỉ IPv6 sử dụng trong các mạng 6to4 có cấu trúc đặc biệt và được cấp phát riêng một lớp địa chỉ có tiền tố FP=001 và giá trị trường TLA=0x0002 tạo thành tiền tố địa chỉ 2002::/16. Mỗi mạng sẽ có tiền tố địa chỉ mạng hình thành bằng các kết hợp 16 bit tiền tố chung với 3 bit địa chỉ IPv4 của router tương ứng. Tiền tố này có độ lớn 48 bit và có thể biểu diễn dưới dạng 2002:V4ADDR::/48. 6 to 4 router 6 to 4 router Ipv6 Ipv4 Ipv6 network network 192.168.99.1 192.168.30.1 Network Preix: Network Preix: 2002: c0a8:6301::/48 2002: c0a8:6301::/48 Hình 53 : 6 to 4 Khuôn dạng của một địa chỉ 6to4 như sau: FP TLA IPv4ADDR SLAID Interface ID
  53. Hình 54 Khuôn dạng địa chỉ 6to4 Cơ chế hoạt động: Ipv4 IPv6 IPv6 network network Ipv6 Ipv4 IPv6 IPv6 Type: native IPv6 Type: IPv6 in IPv4 2002:c0a8:1e01::1 Dst:2002:c0a8:1e01::1 Dst:192.168.30.1 192.168.30.1 Hình 55 : Cơ chế hoạt động 6 to 4 - Khi có một gói tin IPv6 với địa chỉ đích có dạng 2002::/16 được giử đến một router 6to4, router 6to4 tách địa chỉ IPv4 (địa chỉ Ipv4 vừa tách được chính là địa chỉ IPv4 của 6to4 router đích), bọc gói tin IPv6 trong gói tin IPv4 với địa chỉ đích là địa chỉ IPv4 vừa tách được. Sau đó, các gói tin sẽ được chuyển tiếp trên hạ tầng IPv4. Khi router 6to4 đích nhận được gói tin, gói tin IPv6 sẽ được tách ra và chuyển đến nút mạng IPv6 đích. - Ưu điểm: + Các nút mạng không bắt buộc phải dùng địa chỉ IPv6 kiểu tương thích IPv4 như đường hầm tự động. + Không cần nhiều cấu hình đặc biệt như đường hầm có cấu hình. + Không bị ảnh hưởng bởi các hệ thống tường lửa của mạng, chỉ cần routercủa mạng có địa chỉ IPv4 toàn cục có thể định tuyến. - Nhược điểm: + Chỉ thực hiện với một lớp địa chỉ mạng đặc biệt. + Có nguy cơ bị tấn công theo kiểu của đường hầm tự động nếu phần địa chỉ IPv4ADDR trong địa chỉ đích của gói tin 6to4 là địa chỉ broadcast hay multicast. - Triển khai: + 6to4 được hỗ trợ trên nhiều hệ điều hành như Linux, Windows 2000. + Linux: radvd có thể cấu hình để quảng bá tiền tố địa chỉ 6to4. + Windows 2000: chương trình 6to4cfg dùng để cấu hình mạng 6to4. 3.2.5. Môi giới đường hầm (Tunnel Broker)
  54. - Hiện nay, mạng IPv6 sử dụng rất nhiều đường hầm trên hạ tầng IPv4. Tunnel Broker được đưa ra để giảm nhẹ chi phí cấu hình và duy trì các đường hầm này. - Cơ chế này sử dụng một tập các server chuyên dụng gọi là Tunnel Broker để cấu hinh và duy trì các đường hầm. Chúng có thể xem như các ISP IPv6 ảo cho các người dùng đã kết nối vào Internet IPv4. Cơ chế này phù hợp cho các trạm (hoặc site) IPv6 nhỏ cô lập muốn kết nối dễ dàng vào mạng IPv6. - Cấu trúc của TUnnel broker bao gồm: + Một server tunnel broker. + Một DNS server. + Một số các server đường hầm.
  55. IPv6 IPv4 host IPv4 network IPv4 network IPv6 network Hình 56: Môi trường đường hầm - Cách thức thực hiện: + Các khách hàng của dịch vụ Tunnel broker là các nút mạng IPv6 stack kép (host hoặc router) đã kết nối vào Internet IPv4. Trước khi thiết lập đường hầm, cần có sự trao đổi thông tin giữa Tunnel broker với khách hàng như xác thực, quản lý và thông tin tài khoản. + Khách hàng kết nối tới tunnel broker để đăng kí và kích hoạt các đương hầm. Tunnel broker có thể chia sẻ tại các điểm cuối đường hầm trên các server đường hầm. Nó cũng có thể đăng kí tên và địa chỉ IPv4 của đầu đường hầm phía họ, tên đăng kí trong DNS và đó là một trạm hay một router. + Tunnel broker chọn một server đường hầm làm điểm cuối đường hầm thực sự. Nó chọn tiền tố cấp phát cho khách hàng (từ 0 đến 128) và cố định thời gian tồn tại của đường hầm. + Tunnel broker đăng kí địa chỉ IPv6 cấp cho các điểm cuối đường hầm trong DNS. + Tunnel broker cấu hình đường hầm phía server và thông báo các thông tin liên quan cho khách hàng. - Sau đó, khách hàng có thể kết nối vào mạng IPv6 thông qua cơ chế đường hầm như bình thường. - Ưu điểm: + Quản lý tập trung các đường hầm phía server, giảm bớt chi phí. + Có thể sử dụng các ISP ảo trên IPv6.
  56. - Các Tunnel Broker trên mạng Internet: + Freenet6 www.freenet6.net + Hurriane Electric www.ipv6tb.he.net 3.2.6 Dịch địa chỉ- Dịch giao thức (SIIT và NAT- PT) - Dịch địa chỉ và dịch giao thức được phát triển trên cơ sở cơ chế NAT trong IPv4 nhằm cho phép các nút mạng IPv4 và IPv6 kết nối với nhau. Cơ chế này hoạt động trên cơ sở chuyển đổi các khác biệt giữa các gói tin IPv4 và IPv6. - Khác biệt về địa chỉ: Dịch địa chỉ IPv4- IPv6. - Khác biệt về phần mở đầu header: Dịch giao thức thay đổi header gói tin. Thiết bị NAT- PT được cài đặt tại biên giới giữa mạng IPv4 với Ipv6. Cơ chế này không đòi hỏi các cấu hình dặc biệt tai các máy trạm và các sự chuyển đổi gói tin tại thiết bị NAT- PT hoàn toàn trong suốt với người dùng. - Mỗi thiết bị NAT- PT duy trì một tập các địa chỉ IPv4 dùng đẻ ánh xạ các yêu cầu với địa chỉ IPv6. - NAT- PT có thê mở rộng thành NAPT- PT cho phép sử dụng một địa chỉ - - IPv4 cho nhiều phiên làm việc khác nhau. NAT- PT cũng như NAT cũng như IPv4 không có khả năng hoạt động với các gói tin có chứa địa chỉ trong phần tải tin. Do đó, NAT- PT thường đi kèm với cơ chế Cửa khẩu tầng ứng dụng ALG. Cơ chế này cho phép xử xý các gói tin ứng với từng dịch vụ nhất định như DNS hay FTP, - Ưu điểm: + Quản trị tập trung tại thiết bị NAT- PT. + Có thể triển khai nhiều thiế bị NAT- PT để tăng hiệu năng hoạt động. - Nhược điểm: + Tạo lên một điểm gây lỗi loạn single poin of failure tại thiết bị NAT- PT. - Các triển khai của NAT- PT: NAT- PT đã được thử nghiệm trên các hệ điều hành mạng như: + Linux, Free BSD, Microsoft Windows 2000. + Ngoài ra, nó cũng là một phần của hệ điều hành Cisco IOS IPv6 bản beta với hai phiên bản dựa trên IOS v11.3 và IOS v12.0. Các triển khai này có cho nhiều loại router khác nhau. IPv4 IPv4 Internet
  57. Hình 57: NAI- PT - SIIT (Stateless IP/ICMP Translation Algorithm) là một chuẩn của IETF (RFC2765) mô tả bộ dịch IPv6/IPv4 không lưu trạng thái (Stateless). - Tương tự cơ chế NAT- PT ngoại trừ nó không cấp phát động địa chỉ IPv4 cho các trạm IPv6. Chức năng chuyển đổi thực hiện giữa header IPv6 và IPv4. SIIT không bao gồm các tùy chọn IPv4 và header mở rộng trong IPv6. SIIT cũng thực hiện chuyển đổi các thông điệp điều khiển ICMP giữa hai giao thức. - Đối với quá trình chuyển đổi IPv4 sang IPv6, một địa chỉ IPv4 tạm thời được gán cho nút mạng IPv6. - Các gói tin đến thiết bi SIIT sẽ được chuyển đổi header và địa chỉ từ IPv4 sang các địa chỉ IPv4-dịch (IPv4- translated) và IPv4- ánh xạ (IPv4- mapped). Một địac hỉ IPv4-dịch tương ứng với một nuts mạng IPv6 còn địa chỉ IPv4- ánh xạ tương ứng một nút mạng IPv4. Đối với chiều ngược lại, các địa chỉ này sẽ được chuyển đổi ngược lại thành địa chỉ IPv4. - Do quá trình chuyển đổi không lưu trạng thái, có thể tồn tại nhiều bộ chuyển đổi giữa hai mạng IPv4 và IPv6. Không có sự ràng buộc mỗi phiên truyền phải đi qua một thiết bị duy nhất như trong NAT- PT. 3.2.7. Một số cơ chế khác 3.2.7.1 BIS (Bump Into the Stack ) - BIS là sự kết hợp của hai cơ chế NAT- PT và DNS- ALG nhưng được cài đặt ngay tại các nút mạng IPv6. Qua đó, các ứng dụng trên các trạm IPv4 có thể kết nối với các trạm IPv6. - Ưu điểm: + Hỗ trợ nhanh chóng và đơn giản các ứng dụng IPv4 có thể kết nối với các nút mạng IPv6 khác. + Cài đặt ngay trên từng trạm nên không phụ thuộc vào một thiết bị trung gian như NAT- PT. - Nhược điểm: + Không hỗ trợ khả năng tự cấu hình. + Cần cài đặt và cấu hình riêng rẽ trên từng nút mạng: card mạng, cấu hình IP, NAT. Các thông số cấu hình này cần được thực hiện lại mỗi khi có sự thay đổi về topo và địa chỉ mạng. + Về lâu dài và với các mạng có kích thước lớn, hoạt động không hiệu quả và chi phí quản trị cao. - Triển khai: +Phần mềm Tôlnet6 hỗ trợ BIS hạn chế với một số card mang họ 3Com, NE2000 dưới dạng driver cho card mạng do công ty Hitachi cung cấp. Chương trình hoạt động với Win9x và NT cho phép kết nối với các trạm IPv6.
  58. +Sau7 khi cài đặt phần driver của card mạng, cần cấu hình các ánh xạ địa chỉ IPv6- IPv4 trước khi có thể thực hiện kết nối thông qua chương trình NAT MAnager. 3.2.7.2 BIA (Bump Into the API) Phương pháp này áp dụng cho các dual- stack host (các host hỗ trợ cả IPv4 và IPv6), cho phép các host IPv6 khác với các ứng dụng IPv4 hiện có. Mục đích của phương pháp cũng giống như cơ chế Bump-in-the-stack (BIS) nhưng nó đưa ra cơ chế dịch giữa các API IPv4 và IPv6. DO vậy, quá trình đơn giản không cần dịch header gói tin IP và không phụ thuộc vào các giao thức tầng dưới và trình điều khiển của giao diện mạng. Host Translatorr( BIA) IPv6 hative host (API) IP v6 network IPv4 Applications IPv6 hative host Hình 58: BIA - Phương pháp BIA không sủ dụng được trong các host chỉ hỗ trợ IPv4 như phương pháp BIS. Nó chỉ được sử dụng trên các host IPv6/Ipv4 nhưng có một số trình ứng dụng IPv4 không thẻ hoặc khó chuyển đổi sang hỗ trợ IPv6. - Do BIA hoạt động tại mức API socket nên ta có thể sử dụng các giao thức an ninh tại tầng mạng (IPsec). BIA hiện nay chỉ áp dụng được cho các trao đổi kiểu Unicast, chưa áp dụng được cho kiểu Multicast. Các tính năng mới của socket IPv6 không thể sử dụng. - Phương thức hoạt động:
  59. + Phương pháp BIA chèn thêm một bộ dịch API vào giữa module socket API và module TCP/IP trên dual-stack host và dịch các hàm API socket IPv4 thành các hàm API socket IPv6 và ngược lại. Để áp dụng phương pháp này, host hỗ trợ cả TCP(UDP)/IPv4 và TCP(UDP)/IPv6. + Khi một ứng dụng IPv4 giao tiếp với một host IPv6 khác, bộ dịch API phát hiện các hàm APG socket mà ứng dụng sử dụng và gọi tương ứng các hàm API socket IPv6 để giao tiếp với host IPv6 và ngược lại. + Quá trình chuyển đổi IPv6 sang một tập các địa chỉ IPv4 được thực hiện trong module ánh xạ tên (name resolver). - Kiến trúc của dual-stack host sử dụng BIA. - Module BIA gồm 3 phần: + Module tra cứu tên (Name resolver): Đáp ứng các yêu càu tra cứu tên miền của các ứng dụng IPv4. Khi một ứng dụng giửi một truy vấn các bản ghi kiểu A tới name server, module này sẽ nhận truy vấn này, phân tích và tạo ra truy vấn tương ứng với tên máy đó cho cả các bản ghi kiểu A và AAAA rồi giửi cho name server. IPv4 Applications Socket API (IPv4 , IPv6) API Translator Name Address Function Resolver Mapper Mapper TCP(UDP)/IPv4 TCP(UDP)/IPv6 Hình 3- 13. Kiến trúc của dual- stack host sử dụng BIA Nếu trả lời từ name server chỉ có bản ghi kiểu AAAA, module này sẽ yêu cầu module ánh xạ địa chỉ gán một địa chỉ IPv4 tương ứng với địa chỉ IPv6 này rồi tạo ra một trả lời kiểu A chứa địa chỉ IPv4 trả về cho ứng dụng
  60. + Module ánh xạ địa chỉ (Address mapper). Duy trì một bảng các cặp địa chỉ IPv4 và IPv6. Các địa chỉ IPv4 được gán từ một tập các địa chỉ này và cập nhật thêm một mục trong bảng. Quá trình cập nhật xảy ra trong hai trường hợp: Khi module ánh xạ tên chỉ nhận được trả lời về bản ghi kiểu AAAA và không có mục nào trong bảng chứa địa chỉ IPv6 tương ứng. Khi module ánh xạ hàm nhận được một lời gọi hàm API socket từ dữ liệu thu nhận mà không có mục nào trong bảng tương ứng với địa chỉ IPv6 nguồn. + Module ánh xạ hàm (Function mapper): Chuyển đổi các hàm API socket IPv4 thành các hàm API socket IPv6 và ngược lại. - Các vấn đề liên quan + Chuyển đổi API socket. Các hàm API socket IPv4 được chuyển đổi tương ứng sang các hàm API socket IPv6. Quá trình này chuyển đổi cả các địa chỉ IP nhúng trong các giao thức tầng ứng dụng (FTP, DNS, ). Sự tương thích giữa các hàm API socket là không hoàn toàn do các hàm API socket IPv6 có nhiều tính năng hơn. Các hàm API socket được chuyển đổi: bind() connect() sendmsg() sendto() accept() rrecvfrom() recvmsg() getpeername() gétockname() gétocketopt() sétocketopt() recv() send()
  61. Bảng 3- 1. Các hàm API socket được chuyển đổi Các cấu trúc và hàm API cơ bản AF_ INET AF- INET6 sockaddr_in sockaddr_in6 gethostbyname() getaddrinfo() gethosbyaddr() getnameinfo() inet_ntoa()/inet_addr() inet_pton()/inet_ntop() INADDR_ANY in6addr_any Bảng 3- 2. Các cấu trúc và hàm API cơ bản - Các thông điệp ICMPv4 được chuyển thành ICMPv6 và ngược lại giống trong phưong pháp SIIT. + Tập các địa chỉ IPv4 và bảng ánh xạ địa chỉ. Để tránh hiện tượng dùng hết tập địa chỉ IPv4 dẫn đến không thể tiếp tục đáp ứng các yêu cầu trao đổi với bên ngoài, BIA đưa ra các cơ chế để loại bỏ các mục tồn tại lâu nhất trong bảng để sử dụng trong các yêu càu mới. + Các địa chỉ IPv4 nội bô. Để tránh đụng độ về địa chỉ, BIA sử dụng các địa chỉ không được cấp phát (0.0.0.0 đến 0.0.0.255). + Vấn đề không phù hợp giữa kết quả DNS (AAAA) với phiên bản ứng dụng (v4). - Nếu server ứng dụng chưa hỗ trợ IPv6 nhưng chạy trên một máy có hỗ trợ IPv6 và có tên dưới kiểu bản ghi AAAA trong DNS, ứng dụng client có thể không kết nối được với server do có sự không phù hợp giữa bản ghi kết quả DNS (AAAA) với phiên bản ứng dụng server (IPv4). - Một trong các giải pháp là thử tất cả các địa chỉ trong DNS và không kết thúc ngay sau lần thử đầu tiên. Điều này có thể ứng dụng bởi sự mở rộng module tra cứu tên và bộ dich API trong BIA. BIA thực hiện lặp công việc tìm kiếm các địa chỉ hoạt động sử dụng bởi các ứng dụng khác bên ngoài các địa chỉ trả về từ name server. 3.2.7.3. Cơ chế chuyển đổi hai giao thức (DSTM) - Cơ chế này cho phép kết nối các nút mạng stack kếp (IPv6/IPv4) trên một mạng IPv6 với các nút mạng IPv4 ở xa. DSTM không áp dụng được cho các nút mạng chỉ hỗ trợ IPv6.
  62. - DSTM cấp một địa chỉ IPv4 toàn cục tạm thời cho nút mạng IPv6 và sử dụng đường hầm IPv4-in-IPv6 để truyền gói tin IPv4 trên mạng IPv6. - Đây là cơ chế hai chiều, quá trình truyền thông có thể bắt đầu từ nút mạng IPv6 hoặc nút mạng IPv4. - Cách thức hoạt động: + DSTM được cài đặt trên tất cả các nút mạng trong mạng IPv6 và router biên giới giữa hai miền IPv6 và IPv4. Nó cũng sử dụng DHCPv6. Do vậy, DSTM cần một server DHCPv6 và các client tại mỗi nút mạng. DHCP Border router(Y)IPv4 IPv6 IPv4 only node (Z) Dual stack node (X) DNS Bảng 3- 3. Cơ chế chuyển đổi hai giao thức (DSTM) - Chức năng các bộ phận như sau: + DHCPv6 Server: Cấp địa chỉ IPv4 tạm thời cho các nút mạng muốn giao tiếp với nút mạng IPv4 ở xa. Nó cũng duy trì sự ánh xạ giữa địa chỉ IPv4 và IPv6. Để hỗ trợ DSTM, DHCPv6 phải hỗ trợ một tùy chọn mới cho phép nút mạng IPv6 nhận địa chỉ IPv4 tạm thời và thông báo cho phía client biết địa chỉ IPv6 của cuối đường hầm. + DSTM daemon: Sử dụng DHCPv6 client trên nút mạng để yêu cầu địa chỉ IPv4 toàn cục mỗi khi khởi tạo truyền thông.
  63. + Giao diện đường hầm động (DTI): Đây là một giao diện IPv4 ảo trongnut stack kép để cho phép truyền các gói tin IPv4 một cách trong suốt trên mạng IPv6. Các gói tin chuyển đến giao diện này được bọc trong gói tin IPv6 và được giửi thông qua giao diện IPv6 đến router biên mạng. + Router biên mạng: Đây là một router stack kép kết nối miền IPv4 với IPv6. Đây là nơi kết thúc đường hầm 4 trong 6. Router cũng lưu các ánh xạ giữa địa chỉ IPv6 với địa chỉ IPv4 tạm thời. - Ưu điểm: + Trong suốt đối với mạng, chỉ cần duy trì định tuyến IPv6 trên mạng, giảm chi phí quản trị mạng. + Trong suốt đối với ứng dụng, cho phép các ứng dụng chỉ cho IPv4 hoạt động bình thường trên nút mạng IPv4/IPv6. + Khắc phuc sự thiếu hụt địa chỉ IPv4 bằng cách sử dụng DHCPv6. - Nhược điểm: + Đòi hỏi nhiều cơ chế đặc biệt. + Sử dụng các địa chỉ IPv4 toàn cục. - Triển khai: +Hiên mới chỉ có trên hệ điều hành Free BSD.
  64. CHƯƠNG 4: Thử nghiệm và cài đặt IPv6 trên windows 98 và windows 2000 4.1 Cài đặt trên windows 98: - Bản thân windows 98 không hỗ trợ IPv6. Để kết nối được với nút mạng IPv6, một trong các cơ chế chuyển đổi cần được cài đặt, thí dụ dùng Trumpe winsock. + Trumpe winsock :  Chương trình thay thế thư viện Winsock trong windows cho phép windows 98 kết nối IPv6.  Phiên bản từ 4.1 hỗ trợ IPv6 cho các hệ điều hành win9x và Win NT4.1. Đây là một phần mềm shareware do hãnh Trumper sản xuất. Cơ chế hoạt động của phần mềm dựa trên việc thay đổi thư viện winsock trong windows để hỗ trợ IPv6. Các hàm tương thích winsock 1.1 không tương thích winsock 2. Chương trình có sẵn các tiện ích như ping, traceroute để kiểm tra kết nối, dig để tra cứu tên miền DNS.  Cấu hình địa chỉ IPv6 có thể được thiết lập trong chương trình hoặc tự cấu hình . 4.2 Cài đặt trên windows 2000: - Windows 2000 Service Pack 1 trở lên hỗ trợ IPv6 dưới dạng phiên bản thử nghiệm được cài đặt riêng. - Bộ chương trình bản thử nghiệm cho IPv6 trên windows được cung cấp trên mạng với tên file: tpipv6- 001205.exe. - Yêu cầu mặc định hệ thống: Windows 2000 SP1. - Cài đặt: + Chạy file setup.exe + Cài đặt thêm giao thức mạng IPv6 : Microsoft IPv6 Protocol -Ngoài ra bộ cài đặt cũng chứa các công cụ khác như: + ipv6.exe: Hiển thị thông tin về giao thức IPv6. Ta có thể xem trạng thái các giao diện, các cache láng giềng, cache kết gán, cache đích và bảng định tuyến. + Trancert6.exe: Tương tự trancert.exe trong IPv4 . + Ping6.exe: Tương tự ping.exe trong IPv4. + ttcp.exe: Dùng để gửi các gói tin TCP/UDP giữa hai nút mạng. Hỗ trợ cả hai giao thức. + 6to4cfg.exe: Sử dụng để cấu hình kết nối kiểu 6to4. + ipsec6.exe: Cấu hình các chính sách an ninh IPsec. - Các ứng dụng: + HTTP client: Thư viện liên kết động mới wininet.dll cho phép web browser IE có thể kết nối đến cả các web server IPv4 lẫn IPv6. +FTP client: Ftp.exe kết nối đến các FTP server của cả hai giao thức.
  65. + Telnet client: Hỗ trợ cả IPv4 lẫn IPv6. + Telnet server: Hỗ trợ cả IPv4 lẫn IPv6. - Đối với các hệ thống win 2000 SP2 có thể cài đặt theo các bước sau: + Sau khi giải nén chương trình tpip6-001205.exe vàp một thư mục, ta chạy chương trình setup.exe với tham số setup-x để giải nén các file vào một thư mục. + Sửa file Hotfix.inf. + NTServicePackVersion=256 + NTServicePackVersion=512 + Chạy chương trình Hotfix.exe + Sau đó thực hiện các bước còn lại như bình thường.
  66. CHƯƠNG 5 Kết luận và hướng phát triển tiếp theo Kết luận - Đây là một vấn đề nóng bỏng của toàn thế giới nói chung và của Việt Nam nói riêng. Khi chuyển sang sử dụng IPv6, ta có thể dễ dàng trong việc truy cập vào các địa chỉ trong mạng Internet rộng lớn. Hơn nữa các thiết bị kết nối trong mạng có thể kết nối với nhau và thay đổi thông tin với nhau. Tuy nhiên để kiểu mạng lưới này hoạt động, mỗi thiết bị trong mạng cần phải có một địa chỉ IP (là thông số chỉ vị trí của các thiết bị trên mạng). 5.2 hướng phát triển tiếp theo: - Hiện nay tai Châu á một phần kế hoạch E –Japan initiative có mục đích chính là đưa ngành công nghệ thông tin Nhật Bản vươn lên hàng đầu. Chính phủ Nhật Bản đẫ tài trợ cho Hội Đồng xúc tiến IPv6 (IPv6 Promotion Council) thiết lập thử nghiệm giao thức mới trong mạng của mộn số nhà cung cấp. Information Service International Dentsu (ISID)- công ty tích hợp hệ thống tại Tokyo- đã xây dựng mạng IPv6 trong công ty này, kết nối với hơn 5.000 hệ thống. Đại diện nhóm nghiên cứu ISID cho biết : dù đã triển khai IPv6 nhưng quá trình chuyển đổi trong công ty diễn ra còn chậm. Hệ thống mạng có hai ngăn phần mềm dành cho IPv4 và IPv6 để tiến hành hoà nhập từng bước. IPv6 vẫn còn cần phát triển tiếp vấn đề bảo mật kết nối chạy hoàn toàn trên IPv6 sẽ mất đi một số tính năng bảo mật của IPv4. Hỗ trợ IPv6 tường lửa (firewall ) chẩng hạn sẽ là một đòi hỏi tiên quyết khác công nghệ mới này được chấp nhận rộng rãi hơn trong tương lai. - Tuy nhiên Cico nhà sản xuất bộ định tuyến chính thống trị thế giới mới chỉ cung cấp khả năng IPv6 cho các bộ định tuyến qua các phần mềm, và dự định chỉ sẽ giới thiệu phần cứng hỗ trợ IPv6 trong năm nay. Riêng hệ điều hành Windows XP hiện có sẵn cả tính năng IPv4 và IPv6 , chủ yếu dùng xây dựng sẵn sàng IPv6. Hệ điều hành máy chủ hiện tại của Windows 2000 Server cũng có sẵn một bộ công cụ phảt triển phần mềm dành cho các ứng dụng và thiết bị IPv6. - Vào cuối năm 2002 Microsoft cũng giới thiệu tính năng IPv6 tỏng bộ nâng cấp dành cho Windows XP và thế hệ hệ điều hành máy chủ kế tiếp windows. Net Server. Hãng Sun Microsytems đã hỗ trợ IPv6 trong phiên bản Solari 8 phát hành trên thị trường ngay từ năm 2000. Nếu một máy chủ Solaris 8 được cắm vào mạng IPv6, nó có thể tự đông trao đổi ccs gói tin IPv6. - Riêng trong hệ điều hành Linux, giao thức IPv6 chưa được tích hợp sẵn nhưng nó được cung cấp kèm theo trong phiên bản Red Hat không chính
  67. thức cung cấp hỗ trợ cho thành phần IPv6. Một số ứng dụng cơ bản, như truyền tập tin, email, DNS, đang được điều chỉnh để có thể làm việc với giao thúc mới, tiếp sau dó sẽ là những ứng dụng phức tạp như cơ sở dữ liệu và chương trình CAD. - Đồ gia dụng chắc chắn sẽlà một trong những thiết bị đầu tiên được lựa chọn kết nối vào mạngIP v6, khi mà việc cung cấp địa chỉ IPv6 trở lên dễ dàng vì nó là vô hạn mà lại rất an toàn bởi tính bảo mật cao mà IPv4 không có. Thậm chí ngay bây giờ, các nhà sản xuất đồ gia dụng đang triển khai kỹ thuật kết nối các sản phẩm của mình với mạng “ toàn cầu”. - Rất có thể đến một ngày nào đó tất cả các thiết bị sử dụng dịch vụ không dây (LAN), các server gia đình, automobile telematics và các vật dụng khác đều sẽ được kết nối vói nhau. IPv6 bao giờ được sử dụng tại Việt Nam? - Trên thực tế tại Việt Nam, các doanh nghiệp cung cấp dịch vụ Internet chưa nhận thấy sự càn thiết phải sử dụng đến IPv6 vì không bức xúc trước nguy cơ cạn kiệt tên miền. Cho đến thời điểm này, Việt Na chưa có hoạt động thúc đẩy ứng dụng IP6 và chưa được phân bổ vùng địa chỉ IPv6 từ Quốc tế. Hiện tại chỉ có VNPT và NetNam đã tham gia đề tài “triển khai thử nghiệm mạng IPv6 ở Việt Nam và kết nối mạng IPv6 Quốc tế”. VNPT cũng là đơn vị đầu tiên yêu cầu địa chỉ IPv6 và cũng là doang nghiệp duy nhất đủ tiêu chuẩn cấp phát địa chỉ IPv6. Theo các chuyên gia thì vấn đề đặt ra đối với Việt Nam hiện nay là phải xác định bài toán liệu có đủ sức để phát triển các loại dịch vụ và ứng dụng mới đi theo nền tảng ứng dụng IPv6 hay không? - Hiện trung tâm Internet Việt Nam (VNNIC) cũng đã thực hiện một số hoạt động nghiên cứu về công nghệ và chính sách IPv6 của khu vực và Quốc tế. - VNNIC đang xem xét phương án triển khai thiết lập mạng thử nghiệm IPv6 công cộng có thể dựa trên cơ sở hạ tầng có sẵn. theo đề nghị của VNNIC, cân phải có chính sách khuyến khích phát triển công nghệ phần cứng, phần mềm và ứng dụng IPv6. Ngoài ra, VNNIC còn đề nghị cần đầu tư cho nghiên cứu phát triển các ứng dụng IPv6. Bên cạnh đó, Chính phủ cần phải có chiến lược lâu dài phát triển IPv6 để bắt kịp sự phát triển của công nghệ. Theo một quan chức của Bô bưu chính Viễn thông trong chiến lược BCVT đến năm 2010 cũng đã đề cập đến việc phát triển địa chỉ tên miền IPv6. Vì vậy ngay từ bây giờ Bộ cũng sẽ phải xem xét để có chủ chương, chính sách đối với vấn dề phát triển IPv6 ở Việt Nam.