Do vậy cần có những nghiên cứu về quá trình định tuyến, phục vụ cho việc chuyển đổi từ địa chỉ IPv4 sang địa chỉ IPv6 và đảm bảo không phá vỡ cấu trúc Internet cũng như làm gián đoạn hoạ
Trang 1TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG
-
LÊ TUẤN HƯNG
NGHIÊN CỨU VÀ MÔ PHỎNG KỸ THUẬT ĐỊNH
TUYẾN TRONG MẠNG IPV6
Chuyên ngành: Khoa học máy tính
Trang 2Học viên : Lê Tuấn Hưng Lớp CK09B
Trang 3Học viên : Lê Tuấn Hưng Lớp CK09B
MỤC LỤC
MỤC LỤC 1
ĐẶT VẤN ĐỀ 8
LỜI CẢM ƠN 10
CHƯƠNG I HIỆN TRẠNG VÀ CÁCH THIẾT LẬP BÀI TOÁN 11
1.1 Hiện trạng về không gian địa chỉ IP 11
1.2 Tổng quan về IPv6 12
1.2.1 Không gian địa chỉ IPv6 12
1.2.2 Ưu điểm của IPv6 so với IPv4 13
1.2.3 Cách viết địa chỉ IPv6 14
1.2.4 Đặc điểm các dạng địa chỉ IPv6 16
1.2.6 Anycast Address 20
1.3 Thiết lập bài toán 21
1.3.1 Tình hình triển khai IPv6 trên toàn cầu 22
1.3.2 Tình hình triển khai IPv6 ở Việt Nam 23
1.4 KẾT LUẬN 24
CHƯƠNG II IPv6 VÀ VẤN ĐỀ CHUYỂN ĐỔI IPv6 SANG IPv4 25
2.1 Cấu trúc và đặc điểm về địa chỉ IPv6 25
2.1.1 Tìm kiếm hàng xóm (Neighbor Discovery-ND) 25
2.1.2 Tự động cấu hình địa chỉ 26
2.1.3 Tự động cấu hình địa chỉ có trạng thái 27
2.1.4 Tự động cấu hình địa chỉ không trạng thái 27
Trang 4Học viên : Lê Tuấn Hưng Lớp CK09B
2.2 Cấu trúc gói tin IPv6 30
2.2.1 IPv6 header 30
2.2.2 Cấu trúc Header chung 30
2.2.3 Các trường trong IPv6 header 31
2.3 Vấn đề định tuyến và kỷ thuật chuyển đổi Tunel trong IPv6 34
2.3.1 Kỹ thuật chuyển đổi tunnel trong IPv6 37
2.3.1.1 Tổng quan về cơ chế chuyển đổi 37
2.3.1.2 Kỹ thuật Tunneling 39
CHƯƠNG III MÔ PHỎNG CÁC KỸ THUẬT CHUYỂN ĐỔI TUNNEL TRONG IPv6 45
3.1 Lựa chọn công cụ (GNS3) 45
3.1.1 Một số phần mềm mô phỏng mạng phổ biến 45
3.1.1 Giới thiệu việc mô phỏng mạng trên GNS3 46
3.2 Quá trình mô phỏng 50
3.3 Mô phỏng kết nối 2 host IPv6 51
3.3.1 Mô hình chuyển đổi giữa hai mạng IPv4 và IPv6 51
3.3.2 Mô phỏng chuyển đổi trên công cụ GNS3 53
3.4 Kết luận 61
CHƯƠNG IV KẾT LUẬN 62
TÀI LIỆU THAM KHẢO 64
Trang 5Học viên : Lê Tuấn Hưng Lớp CK09B
DANH MỤC HÌNH VẼ
Trang 6Học viên : Lê Tuấn Hưng Lớp CK09B
DANH MỤC BẢNG BIỂU
Bảng 2.1 Cấu trúc vùng header của IPv4 khi thực hiện
Tunneling Cơ chế mở gói khi thực hiện Tunneling
Trang 7Học viên : Lê Tuấn Hưng Lớp CK09B
DANH MỤC TỪ VIẾT TẮT
Trang 8Học viên : Lê Tuấn Hưng Lớp CK09B
ĐẶT VẤN ĐỀ
Một trong những vấn đề quan trọng mà kỹ thuật mạng trên thế giới đã và đang giải quyết là đối mặt với sự phát triển với tốc độ quá nhanh của mạng lưới Internet toàn cầu Sự phát triển này cùng với sự tích hợp dịch vụ, triển khai những dịch vụ mới, kết nối nhiều mạng với nhau, như mạng di động với mạng Internet đã đặt ra vấn đề thiếu tài nguyên dùng chung Việc sử dụng hệ thống địa chỉ hiện tại cho mạng Internet là IPv4 đã không thể đáp ứng nổi sự phát triển của mạng Internet toàn cầu, do đó IPv6 đã ra đời Hệ thống địa chỉ mới – IPv6 đã giải quyết được vấn
đề thiếu hụt địa chỉ Hệ thống địa chỉ IPv6 phát triển khi IPv4 đã được phát triển rộng rãi, mạng lưới Internet hoàn thiện hoạt động tốt Vì vậy, trong quá trình triển khai thế hệ địa chỉ IPv6, hai thế hệ mạng IPv4 và IPv6 sẽ cùng tồn tại trong một thời gian rất dài Trong quá trình phát triển, các kết nối của IPv6 sẽ tận dụng cơ sở
hạ tầng sẵn có của IPv4 Do vậy cần có những nghiên cứu về quá trình định tuyến, phục vụ cho việc chuyển đổi từ địa chỉ IPv4 sang địa chỉ IPv6 và đảm bảo không phá vỡ cấu trúc Internet cũng như làm gián đoạn hoạt động của mạng Internet Đề tài “nghiên cứu và mô phỏng kỹ thuật định tuyến trong mạng IPv6” nhằm mục đích nghiên cứu các giao thức định tuyến, chuyển đổi từ IPv6 sang IPv4 và dùng công cụ
mô phỏng mạng để mô phỏng và đánh giá các kỹ thuật định tuyến này
Chương I Qua nghiên cứu, tìm hiểu và biết được sự cạn kiệt của tài nguyên IPv4, Sự cần thiết của IPv6, tình hình triển khai IPv6 ở Việt Nam và trên thế giới IPv6 có một không gian địa chỉ vô cùng lớn so với IPv4, khi IPv4 chỉ dùng 32bit địa chỉ trong khi IPv6 dùng 128bit Trong tương lai IPv6 không chỉ phục vụ cho Internet mà còn dùng cho tất cả các mạng máy tình, hệ thống viễn thông Có thể sau này từng chiếc điều hòa, tủ lanh, Tivi hay từng chiếc công tơ điên… cũng mang một địa chỉ IPv6 để chủ nhân của ta có thể kết nối và điều khiển và ra lệnh từ xa Điều quan trọng hơn là Tôi thấy được ưu nhược điểm IPv6 so với IPv4 và để có thể từng bước triển khai thay thế dần mạng IPv4 bằng IPv6
Trang 9Học viên : Lê Tuấn Hưng Lớp CK09B
Chương II Nghiên cứu về IPv6, từng cấu trúc, đặc điểm, các trường và vấn
đề định tuyến Kỷ thuật chuyển đổi Tunneling cơ chế đóng gói tin khi thực hiện Tunneling, cơ chế mở gói khi kết thúc tunneling
Chương III Tìm hiểu và so sánh các phần mềm giả lập, ưu nhược điểm của
nó và GNS3 là phần mềm được chọn để mô phỏng, mô phỏng giữa việc kết nối hai host trực tiếp với nhau bằng địa chỉ IPv6 thông qua router Và kỷ thuật Tunneling
đã được thể hiện rõ hơn trong trương trình mô phỏng giữa một Công ty sử dụng IPv6 trên tài nguyên IPv4
Thái Nguyên, ngày 15 tháng 09 năm 2012
Học viên: Lê Tuấn Hưng
Trang 10Học viên : Lê Tuấn Hưng Lớp CK09B
LỜI CẢM ƠN
Để hoàn thành chương trình cao học và viết luận văn này, tôi đã nhận được sự hướng dẫn, giúp đỡ và góp ý nhiệt tình của quý thầy cô trường Đại học Công nghệ thông tin và truyền thông - Đại Học Thái Nguyên
Trước hết, tôi xin chân thành cảm ơn đến quí thầy cô trường Đại học Công nghệ thông tin và truyền thông - Đại Học Thái Nguyên, Đặc biệt là những thầy cô
đã tận tình dạy bảo cho tôi trong suốt thời gian học tập tại trường
Tôi xin gửi lời biết ơn sâu sắc đến Tiến sĩ Lê Quang Minh, Thầy đã dành rất nhiều thời gian và tâm huyết hướng dẫn nghiên cứu và giúp tôi hoàn thành luận văn tốt nghiệp
Nhân đây, tôi xin chân thành cảm ơn Ban giám hiệu trường Đại học Công nghệ thông tin và truyền thông- Đại Học Thái Nguyên đã tạo rất nhiều điều kiện để tôi học tập và hoàn thành tốt khóa học
Mặc dù tôi đã có nhiều cố gắng hoàn thiện luận văn bằng tất cả sự nhiệt tình
và năng lực của mình, tuy nhiên không thể tránh khỏi những thiếu sót, tôi rất mong nhận được những đóng góp quí báu của quý thầy cô và các bạn
Lời cảm ơn sau cùng tôi xin dành cho gia đình và những người bạn đã hết lòng quan tâm và tạo điều kiện tốt nhất để tôi hoàn thành luận văn tốt nghiệp này!
Tôi xin chân thành cảm ơn !
Thái Nguyên Tháng 9 năm 2012
Học Viên : Lê Tuấn Hưng
Trang 11Học viên : Lê Tuấn Hưng Lớp CK09B
CHƯƠNG I HIỆN TRẠNG VÀ CÁCH THIẾT LẬP BÀI TOÁN
1.1 Hiện trạng về không gian địa chỉ IP
Internet đã và đang phát triển với tốc độ khủng khiếp, theo tính toán của giới chuyên môn, mạng Internet hiện nay đang kết nối hàng trăm site với nhau, với hàng trăm triệu host Trong trương lai không xa, những con số này không chỉ dừng lại ở
đó Sự phát triển nhanh chóng này đòi hỏi phải kèm theo sự mở rộng, nâng cấp không ngừng của cơ sở hạ tầng mạng cũng như công nghệ sử dụng
Bước sang những năm đầu của thế kỷ XXI, ứng dụng Internet phát triển nhằm cung cấp cho người dùng notebook, modem và thậm chí nó còn thâm nhập vào nhiều ứng dụng khác như TV… Để có thể đưa ra những khái niệm mới dựa trên
cở sở TCP/IP này thành hiện thực, ICP/IP phải mở rộng Nhưng có một thực tế mà không chỉ giới chuyên môn mà ngay cả các ISP cũng nhận thức được đó là tài nguyên mạng ngày càng hạn hẹp.Việc phát triển về thiết bị, cơ sở hạ tầng, nhân lực…không phải là một khó khăn lớn Vấn đề ở đây là địa chỉ IP, không gian địa chỉ IP ngày càng cạn kiệt, càng về sau thì địa chỉ IP (IPv4) càng không thể đáp ứng nhu cầu mở rộng mạng đó Bước tiến quan trọng mang tính chiến lược đối với kế hoạch mang tính mở rộng này là việc nghiên cứu cho ra đời một thế hệ sau của giao thức IP, đó chính là IPv6
Xuất phát điểm của IPv6 có tên gọi là IPng (Internet Protocol Next Generation) là một phiên bản mới của IP, được thiết kế để thay cho giao thức IP đang được sử dụng rộng rãi hiện nay là IPv4 Quan điểm chính khi thiết kế IPv6 là từng bước thay thế IPv4, không tạo ra sự biến động lớn đối với hoạt động của mạng Internet nói chung và của từng dịch vụ Internet nói riêng, đảm bảo được tính tương thích tuyệt đối với mạng Internet hiện nay, những chức năng đã được kiểm duyệt trong IPv4 vẫn được duy trì trong IPv6 Chức năng không sử dụng trong IPv4 sẽ bị loại bỏ và đồng thời triển khai một số chưc năng mới liên quan đến địa chỉ, bảo mật
và triển khai các dịch vụ mới [6, 11]
Trang 12Học viên : Lê Tuấn Hưng Lớp CK09B
1.2 Tổng quan về IPv6
1.2.1 Không gian địa chỉ IPv6
Ipv4 có 32 bit địa chỉ với khả năng lý thuyết có thể cung cấp một không gian địa chỉ là 232 =4 294 967 296 địa chỉ Còn Ipv6 có 128 bit địa chỉ hơn 4 lần so với Ipv4 nhưng khả năng lý thuyết có thể cung cấp một không gian địa chỉ là 2128
ra lệnh từ xa Nhu cầu hiện tại chỉ cần 15% không gian địa chỉ IPv6 còn 85% dự phòng trong tương lai
Không gian địa chỉ IPv6 được chia trên cơ sở các bít đầu trong địa chỉ, được gọi là tiền tố định dạng Cơ chế phân bổ địa chỉ như sau [10]:
Bảng 1.1 Cơ chế phân bổ địa chỉ IPv6
Phân bổ Tiền tố định dạng Tỷ lệ trong không gian
Trang 13Học viên : Lê Tuấn Hưng Lớp CK09B
Địa chỉ link local 1111 1110 10 1/1024
Địa chỉ site local 1111 1110 11 1/1024
1.2.2 Ưu điểm của IPv6 so với IPv4
IPv4 hỗ trợ trường địa chỉ 32 bit do đó IPv4 ngày nay hầu như không còn đáp ứng được nhu cầu sử dụng của mạng Internet Hai vấn đề lớn mà IPv4 đang phải đối mặt là việc thiếu hụt các địa chỉ, đặc biệt là không gian địa chỉ tầm trung (lớp B) Thêm vào đó nhu cầu tự động cấu hình (Auto-Config) ngày càng trở nên cần thiết
Ngày càng có nhiều thiết bị tế bào và các dịch vụ mới, “liên tục kết nối, liên tục xuất hiện”, và điện thoại thời gian thực sự là lý đo để 3GPP và 3GPP2 lựa chọn phiên bản IPv6 cho mạng vô tuyến, trong đó có mạng truy nhập vô tuyến (RAN), mạng lõi (CN), do IPv6 có những ưu điểm có thể giải quyết được sự hạn chế khi triển khai IPv4:
-Mở rộng không gian địa chỉ: IPv6 mở rộng không gian địa chỉ từ 32 bit lên
128 bit, cho phép phân chia địa chỉ theo cấu trúc phân cấp để đơn giản hóa việc cấp địa chỉ và định tuyến Nó đưa ra phương thức mới tự động cấu hình địa chỉ và tự động xây dựng một phép kiểm tra tính duy nhất của định chỉ IP
Ngoài ra IPv6 còn đưa ra khái niêm “phạm vi” trong địa chỉ Unicast và khái niệm đia chỉ anycast dùng để giửi các gói tin đến một tập hợp các node mạng
Trang 14Học viên : Lê Tuấn Hưng Lớp CK09B
-Đơn giản hóa định dạng Header địa chỉ: Một vài trường trong định dạng Header địa chỉ các gói tin IPv4 sẽ bị loại bỏ hoặc đưa vào Header nhằm mục đích giảm thiểu các chi phí cũng như băng thông trong việc sử lý các định dạng Header địa chỉ IPv6 trong các trường hợp chung
-Cải thiện việc hỗ trợ cho các định dạng mở rộng: Bổ sung nhiều định dạng Header địa chỉ mở rộng tùy chọn, điều này cho phép thêm các chức năng mạng mới
-Khả năng đánh nhãn nguồn dữ liệu: hỗ trợ nhiều dạng truyền dẫn theo yêu cầu như Video thời gian thực
-Hỗ trợ khả năng xác thực, tính bảo mật, tính toàn vẹn dữ liệu tại mức mạng -IPv6 còn hỗ trợ tính di động: với tính năng này, mạng IPv6 dễ dàng cho phép người sử dụng truy cập mạng từ bất kỳ đâu mà không cần thay đổi địa chỉ IP của mình [22]
1.2.3 Cách viết địa chỉ IPv6
=> Địa chỉ IPv6 của 192.168.25.234 là C0A8:19EA
Vì đ/c IPv4 chỉ có 32bit, trong khi đ/c IPv6 là 128bit, ta còn thiếu 96bit 96bit này
là 1 dãy số 0 Do đó, để ghi chính xác, ta có 2 cách ghi như sau :
Trang 15Học viên : Lê Tuấn Hưng Lớp CK09B
Trên thực tế các địa chỉ IPv6 thường có nhiều chữ số 0 trong một địa chỉ, ví
dụ như: 1080:0000:0000:0000:0008:0800:200c:423a 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ố không ở đầu mỗi nhóm, ví dụ 0 thay cho 0000, và 8 thay cho 0008 Địa chỉ trên sẽ trở thành 1080:0:0:0:8:800:200c:423a
Hơn nữa ta có thể sử dụng ký hiệu :: để chỉ một chuỗi số 0 Địa chỉ trên sẽ trở thành 1080::8:800:200c:423a Tuy nhiên ký hiệu trên chỉ được sử dụng một lần trong một địa chỉ Do địa chỉ IPv6 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 giữa hay ở cuối các đị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 địa chỉ chưa chỉ định
Trang 16Học viên : Lê Tuấn Hưng Lớp CK09B
Tiền tố địa chỉ IPv6 đƣợc biểu diễn theo cú pháp CIDR nhƣ IPv4 nhƣ sau: adress/prefix length Trong đó IPv6-adress là bất kỳ biểu diễn địa chỉ nào, còn prefix length là độ dài tiền tố theo bit
IPv6-VD: biểu diễn mạng con có tiền tố 64 bit: fe80::36/64
1.2.4 Đặc điểm các dạng địa chỉ IPv6
IPv6 có 3 dạng địa chỉ: unicast, multicast, và anycast
Địa chỉ IPv6 đƣợc chia ra thành 3 loại chính sau đây :
* Unicast Address: Unicast Address dùng để xác định một interface trong
phạm vi các Unicast Address Gói tin ( Packet) có đích đến là Unicast Address sẽ thông qua Routing để chuyển đến 1 interface duy nhất
H ình 1.1 Gói tin gửi tới địa chỉ
* Anycast Address: Anycast Address dùng để xác định nhiều Interfaces
Tuy vậy, ( Packet) có đích đến là Anycast Address sẽ thông qua Routing để chuyển đến một interface trong số các interface có cùng Anycast Address, thông thƣ ờ n g l à interface gần nhất Chữ “gần nhất” ở đây đƣợc xác định thông qua giao thức định tuyến đang sử dụng
H ình 1.2 Gói tin gửi tới địa chỉ Anycast
Trang 17Học viên : Lê Tuấn Hưng Lớp CK09B
* Multicast Address: Multicast Address dùng để xác định nhiều
interfaces
Packet có đích đến là Multicast Address sẽ thông qua Routing để chuyển
đến tất cả các interfaces có cùng Multicast Address
Trong IPv6 địa chỉ Broadcast đã bị loại bỏ và được thay bằng địa chỉ Multicast [10]
H ình 1.3 Gói tin gửi tới địa chỉ Multicast
1.2.4.1 Unicast Address
a) Global Unicast Address
Địa chỉ này được các ISP cấp cho người sử dụng có nhu cầu kết nối Internet Global Unicast Address giống như địa chỉ Public của IPv4
Trang 18Học viên : Lê Tuấn Hưng Lớp CK09B
Theo ( hình 1.4):
+ 10 bits đầu là giá trị cố định 1111 1110 10 (Prefix FE80::/10)
+ 54 bits kế tiếp có giá trị bằng 0
+ 64 bits cuối : là địa chỉ của interface
+ Kết luận : Trong Link Local Address: 64 bit đầu là giá trị cố định không thay đổi
Tương ứng với prefix là FE80::/10
Vào cmd, gõ lệnh “netsh interface ipv6 show addresses” để xem giá trị
Link-Local Address
Hình 1.5 Xem địa chỉ Link-local của máy tính
Có một lưu ý là Router không thể chuyển bất kỳ gói tin nào có địa chỉ
nguồn hoặc địa chỉ đích là Link Local Addresses
c) Site-local Addresses:
Site-Local Addresses được sử dụng trong hệ thống nội bộ (Intranet) tương
tự các địa chỉ Private IPv4 (10.X.X.X, 172.16.X.X, 192.168.X.X) Phạm vi sử dụng Site - Local Addresses là trong cùng 1 Site
Trang 19Học viên : Lê Tuấn Hưng Lớp CK09B
Hình 1.6 Cấu trúc địa chỉ Site-local
Theo hình 1.6
+ 10 bits đầu là giá trị cố định 1111 1110 11 (Prefix FEC0::/10)
+ 38 bits kế tiếp toàn bộ là bit 0
+ 16 bits kế tiếp là giá trị Subnet ID
+ 64 bits cuối là địa chỉ của interface
+ Kết luận:Trong Site –Locast Addresses:10 bit đầu là giá trị cố định không thay đổi
Tương ứng với prefix là FEC0::/10
1.2.4.2 Multicast Address
Trong địa chỉ IPv6 không còn tồn tại khái niệm địa chỉ Broadcast Mọi chức năng của địa chỉ Broadcast trong IPv4 được đảm nhiệm thay bởi địa chỉ IPv6
Multicast
Hình 1.7 Cấu trúc địa chỉ Multicast Address
+ Địa chỉ IPv6 Multicast được định nghĩa với prefix là FF::/8
+ Từ FF00:: đến FF0F:: là địa chỉ dành riêng được quy định bởi IANA để sử
dụng cho mục đích multicast
Trang 20Học viên : Lê Tuấn Hưng Lớp CK09B
+ Octet thứ hai chỉ ra cờ (flag) và vi phạm vi (Scope) của địa chỉ multicast Flag xác định thời gian sống của địa chỉ Có 2 giá trị của flag:
Flag = 0 : Địa chỉ multilcast vĩnh viễn
Flag = 1 : Địa chỉ multilcast tạm thời
Scope chỉ ra phạm vi hoạt động của địa chỉ Có 7 giá trị của Scope:
Scope = 1 : Interface-local Scope = 5 : Site-local
Scope = 2 : Link-local Scope = 8 : Organization
Scope = 3 : Subnet-local Scope = E : Global
Ngoài ra địa chỉ IPv6 Multicast còn có quy định giá trị của các bit cuối để xác định đối tƣợng thuộc phạm vi của Multicast Address
Bảng 1.3 Bảng mô tả các loại địa chỉ IPv6 Multicast
Địa chỉ Các bit cuối Đối tƣợng Phạm vi
FF02::1:FFXX:XXXX là dạng địa chỉ Multicast với vai trò là các
Solicited-node (thay cho ARP của IPv4) dùng để phân giải địa chỉ IPv6 thành địa chỉ MAC của các node trong cùng 1 vùng (ở đây vùng trong ví dụ là Link-local)
1.2.6 Anycast Address
Anycast là địa chỉ hoàn toàn mới trong IPv6 Còn đƣợc gọi là địa chỉ One-to-
nearest (một đến gần nhất)
Trang 21Học viên : Lê Tuấn Hưng Lớp CK09B
Hình 1.8 Cấu trúc địa chỉ Anycast Address
+ Địa chỉ Anycast là một địa chỉ Global Unicast được gán cho nhiều interface của nhiều Router khác nhau trong cùng một WAN Scope, gói tin chuyển đến Anycast Address sẽ được hệ thống định tuyến chuyển đến router có metric tốt nhất (router gần nhất)
+ Hiện nay, địa chỉ Anycast được sử dụng rất hạn chế, rất ít tài liệu nói về cách sử dụng loại địa chỉ này Hầu như Anycast address như chỉ được dung để đặt cho Router, không đặt cho Host, lý do là bởi vì hiện nay địa chỉ này chỉ được sử dụng vào mục đích cân bằng tải
Ví dụ : khi một nhà cung cấp dịch vụ mạng có rất nhiều khách hàng muốn truy cập dịch vụ từ nhiều nơi khác nhau từ, nhà cung cấp muốn tiết kiệm nên chỉ để một Server trung tâm phục vụ tất cả, họ xây dựng nhiều Router kết nối khách hàng với Server trung tâm, khi đó mỗi khách hang có thể có nhiều con đường
để truy cập dịch vụ Nhà cung cấp dịch vụ đặt địa chỉ Anycast cho các Router kết nối đến Server trung tâm, bây giờ mỗi khách hàng chỉ việc ghi nhớ và truy cập vào một địa chỉ Anycast duy nhất, tự động họ sẽ được kết nối tới Server thông qua Router gần nhất Đây thật sự là một cách xử lý đơn giản và hiệu quả
Địa chỉ Anycast không bao giờ được sử dụng như là địa chỉ nguồn của một gói tin [21, 22]
Hình 1.9 Định dạng chung của địa chỉ IPv6
Global routing prefix Subnet ID Interface ID
1.3 Thiết lập bài toán
Trước nhu cầu sử dụng IPv6 thay thế IPv4 và đồng thời vẫn sử dụng IPv4, trong luận văn này em đã tập trung nghiên cứu công nghệ IPv6 và các kỹ thuật chuyển đổi từ IPv6 sang IPv4 Để giải quyết được vấn đề này, em đã đặt ra các bài toán cho luận văn
Trang 22Học viên : Lê Tuấn Hưng Lớp CK09B
+ Nghiên cứu tổng quan về IPv6
+ Tìm hiểu bài toán chuyển đổi IPv6 sang IPv4 dựa trên kỹ thuật Tunnel
+ Tìm hiểu công cụ mô phỏng mạng (Networking Simulation) và tiến hành
mô phỏng kỹ thuật chuyển đổi Tunnel từ IPv6 sang IPv4 Đánh giá và rút ra bài học kinh nghiệm
1.3.1 Tình hình triển khai IPv6 trên toàn cầu
Tiêu chuẩn hóa và quản lý địa chỉ IPv6:
Tiêu chuẩn hóa IPv6:
- Ý tưởng về việc phát triển giao thức Internet mới được giới thiệu tại cuộc họp IETF 25 tháng 7 năm 1994, trong RFC1752 [7]
- The Recommendationforthe IP Next Generation Protocol (giới thiệu thủ tục
là thủ tục mới của IPv6 và RF 2463 mô tả ICMPv6 [10]
+ Đồng thời, rất nhiều RFC khác được công bố, định nghĩa tiêu chuẩn hóa cho những chức năng của IPv6, mô tả phiên bản mới hỗ trợ IPv6 cho các dịch vụ như DNS, DHCP
+ Thời điểm hiện nay, những tiêu chuẩn cơ bản cho hoạt động của giao thức Internet phiên bản 6 đã được hoàn thiện Tuy nhiên, chúng sẽ tiếp tục được sửa đổi nhằm đáp ứng yêu cầu thực tế, song song với việc phát triển đầy đủ những đặc tính mới trong giao thức IPv6
- Quản lý địa chỉ IPv6
Trang 23Học viên : Lê Tuấn Hưng Lớp CK09B
Cũng như không gian địa chỉ IPv4, địa chỉ IPv6 được quản lý bởi hệ thống phân cấp các tổ chức quản lý địa chỉ toàn cầu Trong đó cấp quản lý cao nhất là IANA (Internet Assigned Numbers Authority), tiếp đó là các tổ chức quản lý địa chỉ khu vực (RIR– Regional Internet Registry)
- Khu vực Châu Á – Thái Bình Dương: APNIC http://www apnic Net
- Khu vực Châu Âu : RIPE NCC http://www ripe Net
- Khu vực Bắc Mỹ: ARIN http://www arin net
- Khu vực Mỹ Latinh và biển Caribe: LACNIC http://www lacnic net [10]
1.3.2 Tình hình triển khai IPv6 ở Việt Nam
Hình 1.10 IPv6 Việt Nam Tại Việt Nam, Ban Công Tác Thúc đẩy IPv6 Quốc gia đã được thành lập từ
ngày 06/01/2009 Sau gần 2 năm nghiên cứu xây dựng trên cơ sở ý kiến đóng góp của giới chuyên gia, bộ ngành liên quan và tham khảo kinh nghiệm triển khai của quốc tế, ban công tác đã hoàn thiện và trình Bộ Thông Tin – Truyền Thông kế hoạch hành động quốc gia về chuyển đổi địa chỉ IPv6
Với các định hướng, mục tiêu, lộ trình cụ thể, bản kế hoạch là cơ sở để các doanh nghiệp Internet xây dựng kế hoạch chuyển đổi, ứng dụng IPv6 cho phù hợp với tình hình thực tế và mạng lưới của đơn vị mình Đồng thời các cơ sở đào tạo về lĩnh vực CNTT trong nước cũng sẽ có kế hoạch cụ thể lồng ghép nội dung về IPv6 trong các trương trình giảng dạy Cùng với việc ban hành Kế hoạch Hành động Quốc gia, Bộ trưởng cũng yêu cầu các IPs phải nhanh chóng xây dựng, triển khai kế hoạch hành động IPv6 cụ thể của mình, phù hợp với kế hoạch chung quốc gia Ban
Trang 24Học viên : Lê Tuấn Hưng Lớp CK09B
công tác cần chuẩn bị nguồn nhân lực được đào tạo cơ bản về IPv6 để đảm bảo cho quá trình chuyển đổi tại Việt Nam
Lộ trình chuyển đổi IPv6 tại Việt Nam chia thành ba giai đoạn:
- Giai đoạn 1 (Từ 2011 – đến 2012): Giai đoạn chuẩn bị
- Giai đoạn 2 (Từ 2013 – đến 2015): Giai đoạn khởi động
- Giai đoạn 3 (Từ 2016 – đến 2019): Giai đoạn chuyển đổi
Mục tiêu chung là bảo đảm trước năm 2020, toàn bộ mạng lưới và dịch vụ Internet Việt Nam sẽ được chuyển đổi để hoạt động một cách an toàn, tin cậy với địa chỉ IPv6 [7, 12]
1.4 KẾT LUẬN
Thông qua CHƯƠNG I em đã có thể hiểu được một cách khái quát về IPv6
và những ưu nhược điểm của nó so với IPv4, để có thể từng bước triển khai và thay thế dần mạng IPv4 bằng IPv6
Trang 25Học viên : Lê Tuấn Hưng Lớp CK09B
CHƯƠNG II IPv6 VÀ VẤN ĐỀ CHUYỂN ĐỔI IPv6 SANG IPv4
2.1 Cấu trúc và đặc điểm về địa chỉ IPv6
2.1.1 Tìm kiếm hàng xóm (Neighbor Discovery-ND)
Các node sử dụng giao thức ND để xác định địa chỉ tầng liên kết cho các hàng xóm gắn trực tiếp vào liên kết Các host cũng dùng kỹ thuật ND để phát hiện các router.Ngoài ra kỹ thuật này còn cho biết các hàng xóm nào còn kết nối hay không cũng như sự thay đổi tầng liên kết Khi một router không làm việc thì kỹ thuật này cũng gúp ta tìm ra một đường đi tương tự
ND thay thế ARP, ICMP Router Discovery và bản tin ICMP Redirect được
Tự động cấu hình địa chỉ: Cách thức một node tự động thiết lập địa chỉ cho giao diện của nó
Phân giải địa chỉ: Cách thức một node xác định địa chỉ lớp liên kết từ một địa chỉ IP cho trước, đây chính là kỹ thuật ARP trong IPv4
Xác định hop tiếp theo: Các host dựa trên địa chỉ đích xác định địa chỉ IP của hàng xóm mà các gói tin phải được giửi đến nó Hop tiếp theo có thể là một router chuyển tiếp trung gian hay chính là đích cuối cùng
Xác định xem một hàng xóm có còn được tiếp cận hay không
Kiểm tra trùng địa chỉ: Làm sao để kiểm tra một địa chỉ mà host muốn sử dụng không trùng với địa chỉ nào khác
Trang 26Học viên : Lê Tuấn Hưng Lớp CK09B
Định hướng lại: Làm sao để thông báo cho node nguồn một đường đi tốt nhất
để đến đích [8, 18, 19]
2.1.2 Tự động cấu hình địa chỉ
Một chức năng mới trong địa chỉ IPv6 là việc tự động cấu hình địa chỉ Trong IPv6 các thiết bị kết nối được giả định là không phải các thiết bị PC hay đầu cuối máy tính Cách thức tự động cấu hình địa chỉ được đưa ra nhằm cho phép các thiết bị này có thể kết nối mạng plug-and-play, giảm đi sự quá tải về việc quản lý Địa chỉ IP được gắn cho mỗi giao diện mạng của một node Một giao diện sử dụng địa chỉ IPv6 thường có ít nhất địa chỉ link-local và địa chỉ toàn cầu Địa chỉ link-local được sử dụng cho các chức nằng điều khiển còn địa chỉ toàn cầu được sử dụng cho giao tiếp dữ liệu thông thường Trong IPv4, nguyên tắc cơ bản là chỉ một địa chỉ được gắn cho một giao diện song trong địa chỉ IPv6, không giới hạn số lượng này
Nói chung, có những cách sau đây để gắn địa chỉ IP cho một node
* Cấu hình bằng tay (Manual Configuration)
Có nghĩa là thực hiện gắn địa chỉ IP cho giao diện bằng nhân công Cũng bao gồm cả địa chỉ được cấu hình trước dựa trên một file cấu hình tại thời điểm bật máy
* Tự động cấu hình có trạng thái (Stateful Address Autoconfiguration)
Nó bao gồm chức năng phân bổ địa chỉ IP cho các node một cách tập trung
Ví dụ như DHCP (Dynamic Host Configuration Protocol) và địa chỉ phân bổ cho kết nối dialup Nó được gọi là “có trạng thái-statefull” bởi vì máy chủ quản lý những địa chỉ này duy trì trạng thái đó Đây là phương thức cấp địa chỉ phổ biến nhất trong IPv4
* Tự động cấu hình địa chỉ không trạng thái (Stateless Andress
Trang 27Học viên : Lê Tuấn Hưng Lớp CK09B
2.1.3 Tự động cấu hình địa chỉ có trạng thái
Sự khác biệt giữa cấu hình stateful và stateless chính là ai là người quản lý địa chỉ Trong mô hình tự động cấu hình địa chỉ có trạng thái, các host dành được địa chỉ trên dao diện của mình và các thông tin cấu hình cũng như các tham số từ máy chủ Máy chủ sẽ duy trì một cơ sở dữ liệu để biết địa chỉ nào được gán cho máy nào Mô hình tự động cấu hình có trạng thái và mô hình tự động cấu hình không trạng thái có sự bổ sung lẫn nhau Ví dụ như một host có thể dùng phương pháp tự động thiết lập cấu hình địa chỉ không trạng thái để thiết lập địa chỉ của nó, còn dùng phương pháp tự động thiết lập cấu hình có trạng thái để lấy các thông tin khác
DHCPv6 là một giao thức UDP client/sever được thiết kế nhằm giảm chi phí quản lý tập trung của các tài nguyên mạng như địa chỉ, thông tin định tuyến thông tin hệ thống, thông tin thư mục dịch vụ… thay vì phân tán chúng trên các tệp nội bộ
ở tất cả các máy trên mạng
DHCPv6 sử dụng các địa chỉ muticast sau:
- FF02::1:2 Đây là địa chỉ multicast cho tất cả các DHCP agent DHCP agent là các máy chủ DHCP hay các node có nhiệm vụ chuyển tiếp các thông báo giữa máy trạm và máy chủ;
- FF05::1:3 Địa chỉ multicast cho tất cả các máy chủ DHCP
2.1.4 Tự động cấu hình địa chỉ không trạng thái
Trong IPv6 128 bit địa chỉ được phân làm hai phần: tiền tố mạng, để xác định mạng và định danh giao diện (interface ID) để xác định giao diện Phần định danh giao diện sẽ được tự node cấu hình lên, còn prefix được thông báo bởi mạng (thường là do router) Hai phần đó hợp lại để cấu thành lên địa chỉ IPv6
Hình 2.1 Địa chỉ IPv6
Trang 28Học viên : Lê Tuấn Hưng Lớp CK09B
Quy trình sau đây là quy trình thực sự của cấu hình tự động địa chỉ IPv6 không trạng thái (stateless)
Node mới trong mạng tạo ra địa chỉ link-local và gắn cho nó giao diện Tiền
tố của địa chỉ link-local có dạng nhƣ sau: fe80:0000:0000:0000:0000
thiết lập cấu hình bằng tay đƣợc yêu cầu
Node mới giửi thông điệp Router Solicitation (RS) trong mạng để yêu cấu thông tin sử dụng địa chỉ link-local vừa tạo Các host giửi RS để yêu cầu RA ngay lập tức hơn là chờ đến lần giửi RA tiếp theo của router vì thông điệp RA đƣợc truyền theo một thời hạn nhất định
Router nhận thông điệp RS sẽ giửi lại thông điệp RA (Router Advertisement) Nếu host không nhận đƣợc thông điệp RA thì để có đƣợc địa chỉ và các tham số cấu hình khác các host phải sử dụng giao thức tự động cấu hình địa chỉ
Trang 29Học viên : Lê Tuấn Hưng Lớp CK09B
cấu hình địa chỉ có trạng thái được sử dụng để đạt được địa chỉ Nếu cờ “Other Stateful Configuration” được thiết lập là “1” thì giao thức tự động cấu hình địa chỉ
có trạng thái được sử dụng để đạt được các tham số cấu hình thêm vào
Chú ý rằng những thiết bị gửi RA, như router, chỉ gửi tiền tố cố định được gắn của mạng Nói cách khác nó không quan tâm đến sẽ giửi RA cho ai Bởi vậy nếu cho hai router thuộc cùng mạng đó và quảng bá các prefix khác nhau bằng RA, node nhận thông điệp sẽ tự động lấy cả hai RA và tạo nên những địa chỉ khác nhau cho cùng một giao diện [17-19]
2.1.5 Các trạng thái địa chỉ được tự động cấu hình
Một địa chỉ IPv6 có ba trạng thái:
- Địa chỉ thăm dò (Tentative address)
Đây là địa chỉ đang trong quá trình sử lý duy nhất Một node không thể nhận lưu lượng unicast từ địa chỉ thăm dò, tuy nhiên nó có thể nhận và sử lý các bản tin
NS được giửi để hồi đáp lại bản tin NA trong quá trình kiểm tra sự trùng lặp địa chỉ
- Địa chỉ hợp lệ (Valid address)
Địa chỉ này có thể giửi và nhận lưu lượng unicast Trạng thái hợp lệ bao gồm
cả hai trạng thái preferred và deprecated Tổng thời gian mà địa chỉ duy trì trong các trạng thái thăm dò, preferred và deprecated được xác định bởi trường Valid Lifetime trong lựa chọn thông tin tiền tố của bản tin RA
- Preferred address
Địa chỉ này là duy nhất và nó có thể dùng để trao đổi thông tin Khoảng thời gian mà địa chỉ duy trì ở trạng thái thăm dò và preferred được xác định bởi trường Preferred Lifetime trong lựa chọn thông tin tiền tố của bản tin RA
- Deprecated address
Việc trao đổi thông tin mới sẽ bị loại bỏ, các phiên trao đổi thông tin đang tồn tại vẫn có thể sử dụng địa chỉ này
- Địa chỉ không hợp lệ (Invalid address)
Địa chỉ này không được sử dụng để giửi và nhận lưu lượng unicast Một địa chỉ sẽ ở trạng thái không hợp lệ khi mà thời gian sống hợp lệ bị hết [7,18, 19]
Trang 30Học viên : Lê Tuấn Hưng Lớp CK09B
2.2 Cấu trúc gói tin IPv6
Gói tin IPv6 bao gồm các thành phần như trong hình sau:
IPv6 header Extension header Upper layer protocol
data unit
Hình 2.3 Cấu trúc gói tin IPv6
IPv6 header: Trong gói tin IPv6 thì phần IPv6 header luôn tồn tại và có chiều dài cố định là 40 byte
Header mở rộng: Trong gói tin IPv6 thì phần Header mở rộng này có thể không tồn tại hoặc có một hay nhiều phần với độ dài khác nhau Trường Next header trong Header IPv6 chỉ ra sự tồn tại có hay không của Header mở rộng Tương tự như vậy, trường Next header trong Header mở rộng này sẽ chỉ ra sự tồn tại của trường Header mở rộng tiếp đó Trường Next header trong Header mở rộng cuối cùng sẽ xác định giao thức lớp trên như TCP, UDP, ICMPv6… được chứa trong phần đơn vị dữ liệu giao thức lớp trên Phần Header mở rộng trong IPv6 thay thế các trường lựa chọn trong phần Header của gói tin IPv4 hiện nay Không giống như các trường lựa chọn trong Header IPv4, phần Header mở rộng của IPv6 không
bị giới hạn bởi kích thước mà nó có thể mở rộng để có thể mang đầy đủ dữ liệu cần thiết cho một gói tin IPv6
Đơn vị dữ liệu giao thức lớp trên: Đơn vị dữ liệu này thường chứa đựng phần Haeder và phần tải trọng của các giao thức lớp trên như là UDP, TCP, ICMPv6…
PlayLoad của gói tin IPv6 bao gồm phần Header mở rộng và đơn vị dữ liệu giao thức lớp trên [1,3]
2.2.1 IPv6 header
Cấu trúc Header của gói IPv6 được chỉ ra trong RFC 2460 Chiều dài của Header cố định là 40 bytes trong đó có 32 bytes dành cho trường địa chỉ nguồn và đích nên thực tế chỉ còn 8 bytes cho thông tin header chung [18, 22]
2.2.2 Cấu trúc Header chung
Trong IPv6 có 5 trường trong Header của IPv4 được gỡ bỏ:
Trang 31Học viên : Lê Tuấn Hưng Lớp CK09B
- Indentification, flag, fragment offset: các trường này điều khiển việc phân đoạn các packet trong Header của IPv4 Việc phân đoạn xảy ra khi muốn giửi đi các gói có kích thước lớn qua mạng mà chỉ hỗ trợ các gói có kích thước nhỏ hơn Trong trường hợp này các router IPv4 sẽ chia packet thành các slice nhỏ hơn và chuyển tiếp nhiều gói Host đích sẽ tập hợp và sắp sếp chúng lại Nếu một gói bị lỗi hoặc mất toàn bộ quá trình truyền dẫn sẽ thực hiện lại, đây chính là điểm không hiệu quả IPv6, các host sẽ học kích thước của path MTU (maximum transmission unit) thông qua thủ tục gọi là Path MTU Discovery Nếu các host giửi muốn phân đoạn packet thì nó sẽ sử dụng mào đâu mở rộng để thực hiện việc đó chứ không phải là các router IPv6 Do đó các trường này được gỡ bỏ khỏi Header IPv6 mà chèn vào Header mở rộng nếu cần
- Header checksum: được gỡ bỏ để cải thiện tốc độ xử lý
Trường type of service được thay thế bằng trường TrafficClass Các trường time to live (TTL), protocol type được đổi tên Còn trường Flow label được thêm vào [18, 19]
2.2.3 Các trường trong IPv6 header
Header của IPv6 có 40 octet ( hay độ lớn 40 byte) trái ngược với 20 octet trong IPv4 Tuy nhiên IPv6 có một số lượng các trường ít hơn, nên giảm được thời gian xử lý Header, tăng độ linh hoạt Trường địa chỉ lớn hơn 4 lần so với IPv4
Trang 32Học viên : Lê Tuấn Hưng Lớp CK09B
Hình 2.4 IPv4 herder và IPv6 herder
Không có Header checksum : Trường checksum của IPv4 được bỏ đi vì các liên kết ngày nay nhanh hơn và có độ tin cậy cao hơn, vì vậy chỉ cần các Host tính chechsum còn Router thì khỏi cần Ngoài ra Header checksum là một tham số sử dụng để kiểm tra lỗi trong thông tin header, được tính toán ra dựa trên những con số của header Tuy nhiên, có một vấn đề nảy sinh là header chứa trường TTL (Time to Live), giá trị thường này thay đổi mỗi khi gói tin được truyền qua 1 router Do vậy, header checksum cần phải được tính toán lại mỗi khi gói tin đi qua 1 router Nếu giải phóng router khỏi công việc này, chúng ta có thể giảm được trể
Không có sự phân đoạn theo từng hop Trong IPv4, khi các packet quá lớn thì router có thể phân đoạn nó Tuy nhiên, việc này sẽ làm tăng thêm Overhead cho packet Trong IPv6 chỉ có Host nguồn mới có thể phân đoạn một packet theo các giá trị thích hợp dựa vào một MTU path mà nó tìm được Do đó, để hỗ trợ Host thì IPv6 chứa một hàm giúp tìm ra MTU từ nguồn đến đích