1) Giới thiệu
Với nguy cơ thiếu hụt không gian địa chỉ, cùng với những hạn chế của IPv4 thúc đẩy sự đầu tư nghiên cứu một giao thức Internet mới, khắc phục những hạn chế của giao thức IPv4 và đem lại những đặc tính mới cần thiết cho dịch vụ và cho hoạt động mạng thế hệ tiếp theo.
Mục tiêu phát triển của IPv6:
Dựa trên các nhược điểm bộc lộ kể trên, hệ thống IPv6 hay còn gọi là IPng (Next Generation: thế hệ kế tiếp) được xây dựng với các điểm chính như sau:
Hỗ trợ kết nối đầu cuối và loại bỏ hoàn toàn công nghệ NAT.
Cung cấp không gian địa chỉ rộng lớn hơn và dễ dàng quản lý.
Quản trị TCP/IP dễ dàng hơn: DHCP được sử dụng trong IPv4 nhằm giảm cấu hình thủ công TPC/IP cho thiết bị. IPv6 được thiết kế với khả năng tự động cấu hình mà không cần sử dụng máy chủ DHCP, hỗ trợ hơn nữa trong việc giảm cấu hình thủ công.
Cấu trúc định tuyến tốt hơn: Định tuyến IPv6 được thiết kế hoàn toàn phân cấp.
Hỗ trợ tốt hơn Multicast: Multicast là một tùy chọn của địa chỉ IPv4, tuy nhiên khả năng hỗ trợ và tính phổ dụng chưa cao.
Hỗ trợ bảo mật tốt hơn: IPv4 được thiết kế tại thời điểm chỉ có các mạng nhỏ, biết rõ nhau và kết nối với nhau. Do vậy bảo mật chưa phải là một vấn đề được quan tâm. Song hiện nay, bảo mật mạng Internet trở thành một vấn đề lớn, là mối quan tâm hàng đầu.
Hỗ trợ tốt hơn cho di động: Thời điểm IPv4 được thiết kế, chưa tồn tại khái niệm về thiết bị IP di động. Trong thế hệ mạng mới, dạng thiết bị này ngày càng phát triển, đòi hỏi cấu trúc giao thức Internet có sự hỗ trợ tốt hơn.
2) Triển khai Ipv6: Công nghệ đường hầm (Tunneling)
i) Hoạt động của tunneling
Tunneling (đường hầm) là công nghệ sử dụng cơ sở hạ tầng của mạng IPv4 để truyền tải gói tin IPv6, phục vụ cho kết nối IPv6. Địa chỉ IPv6 phát triển khi Internet IPv4 đã sử dụng rộng rãi và có một mạng lưới toàn cầu. Trong thời điểm ban đầu, các mạng IPv6 sẽ chỉ là những cụm rất nhỏ, thậm chí là những host riêng biệt trên cản một mạng lưới IPv4 rộng lớn. Làm thế nào để những mạng IPv6, hay thậm chí những host IPv6 riêng biệt này có thể kết nối với nhau, hoặc kết nối với mạng Internet IPv6 khi chúng chỉ có đường kết nối IPv4. Sử dụng chính cơ sở hạ tầng mạng IPv4 để kết nối IPv6 là mục tiêu của công nghệ tunneling.
Hình 1. Công nghệ tunneling
Công nghệ tunneling là một phương pháp sử dụng cơ sở hạ tầng sẵn có của mạng IPv4 để thực hiện các kết nối IPv6 bằng cách sử dụng các thiết bị mạng có khả năng hoạt động dual-stack tại hai điểm đầu và cuối nhất định. Các thiết bị này đóng gói gói tin IPv6 trong gói tin IPv4 và truyền tải đi trong mạng IPv4 tại điểm đầu và gỡ bỏ gói tin IPv4, nhận lại gói tin IPv6 ban đầu tại điểm đích cuối đường truyền IPv4. Tức là thiết lập một đường kết nối ảo (một đường hầm) của IPv6 trên cơ sở hạ tầng mạng IPv4.
ii) Phân loại công nghệ tunneling
Tùy theo công nghệ đường hầm, các điểm bắt đầu và kết thúc đường hầm có thể được cấu hình bằng tay bởi người quản trị, hoặc được tự động suy ra từ địa chỉ nguồn và địa chỉ đích của gói tin IPv6, đường hầm sẽ có dạng kết nối điểm - điểm hay điểm – đa điểm.
Dựa theo cách thức thiết lập điểm đầu và cuối đường hầm, công nghệ đường hầm có thể phân thành hai loại: tunnel bằng tay (configured), tunnel tự động (automatic).
Tunnel bằng tay (Configured)
Tunnel bằng tay là hình thức tạo đường hầm kết nối IPv6 trên cơ sở hạ tầng mạng IPv4, trong đó đòi hỏi phải có cấu hình bằng tay tại các điểm kết thúc đường hầm. Trong đường hầm cấu hình bằng tay, các điểm kết cuối đường hầm này sẽ không được suy ra từ các địa chỉ nằm trong địa chỉ nguồn và địa chỉ đích của gói tin IPv6.
Tunnel tự động (Automatic)
Tunnel tự động là công nghệ tạo đường hầm trong đó không đòi hỏi cấu hình địa chỉ IPv4 của điểm bắt đầu và kết thúc đường hầm bằng tay. Địa chỉ IPv4 của điểm bắt đầu và kết thúc đường hầm được suy ra từ địa chỉ nguồn và địa chỉ đích của gói tin IPv6.
Cả hai cơ chế này khác nhau cơ bản là việc quyết định địa chỉ cuối của quá trình đường hầm, còn lại về cơ bản hoạt động của hai cơ chế này là giống nhau.
iii) Một số công nghệ tạo đường hầm
Manual tunnel - đường hầm bằng tay
Đây là hình thức tạo đường hầm đuợc áp dụng khi muốn có một kết nối ổn định, riêng biệt, thường giữa hai mạng IPv6, có kết nối IPv4 thông qua hai bộ định tuyến (router) biên. Nếu hai router biên này có khả năng hoạt động dual-stack, người ta có thể cấu hình bằng tay một đường hầm (tunnel) giữa hai router biên nhằm kết nối hai mạng IPv6 sử dụng cơ sở hạ tầng mạng IPv4. Đường hầm được cấu hình bằng tay tại các thiết bị điểm đầu và điểm cuối đường hầm. Cấu hình bằng tay đường hầm giữa máy tính và router được áp dụng trong công nghệ Tunnel Broker, đề cập chi tiết tại mục sau. Phương thức này có thể được áp dụng với các mạng có ít phân mạng hoặc cho một số lượng hạn chế các kết nối từ xa. Tương tự như trường hợp định tuyến tĩnh trong công nghệ định tuyến, độ linh động và yêu cầu cấu hình thủ công là những hạn chế cơ bản của công nghệ đường hầm cấu hình bằng tay.
Tunnel Broker:
Tunnel Broker là hình thức tạo đường hầm, trong đó một tổ chức đứng ra làm trung gian, cung cấp kết nối tới Internet IPv6 cho những thành viên đăng ký sử dụng dịch vụ Tunnel Broker do tổ chức cung cấp.
Tổ chức cung cấp dịch vụ Tunnel Broker có vùng địa chỉ IPv6 độc lập, toàn cầu, xin cấp từ các tổ chức quản lý địa chỉ IP quốc tế, mạng IPv6 của tổ chức cung cấp Tunnel Broker có kết nối tới Internet IPv6 và những mạng IPv6 khác. Người sử dụng sẽ được cung cấp thông tin để thiết lập đường hầm từ máy tính hoặc mạng của mình đến mạng của tổ chức duy trì Tunnel Broker và dùng mạng này như một trung gian để kết nối tới các mạng IPv6 khác. Công nghệ tạo đường hầm trongTunel Broke là tạo đường hầm bằng tay.
Hình 2. Kết nối IPv6 với Tunel Broke
Tổ chức duy trì Tunnel Broker sẽ cung cấp cho người sử dụng:
Một vùng địa chỉ IPv6 từ không gian địa chỉ IPv6 của nhà cung cấp dịch vụ Tunnel Broker, thoả mãn nhu cầu của người sử dụng.
Chuyển giao cho người sử dụng một tên miền cấp dưới không gian tên miền của nhà cung cấp dịch vụ Tunnel Broker. Đây là tên miền hợp lệ toàn cầu, thành viên của Tunnel Broker có thể sử dụng tên miền này để thiết lập website IPv6 Website cho phép những mạng IPv6 có kết nối tới mạng của nhà cung cấp dịch vụ Tunnel Broker truy cập tới.
Các thông tin và hướng dẫn để người sử dụng thiết lập đường hầm (tunnel) đến mạng của tổ chức cung cấp Tunnel Broker.
Hình 3. Mô hình Tunnel Broker
Trong đó:
Tunnel Broker là những máy chủ dịch vụ làm nhiệm vụ quản lý thông tin đăng ký, cho phép sử dụng dịch vụ, quản lý việc tạo đường hầm, thay đổi thông tin đường hầm cũng như xóa đường hầm. Trong hệ thống dịch vụ Tunnel Server (thực chất là các bộ định tuyến dual-stack) và máy chủ tên miền của nhà cung cấp Tunnel Broker để thiết lập đường hầm từ phía nhà cung cấp dịch vụ và tạo bản ghi tên miền cho người đăng ký sử dụng dịch vụ Tunnel Broker. Người sử dụng thông qua mạng Internet IPv4 sẽ truy cập máy chủ Tunnel Broker và đăng ký tài khoản sử dụng dịch vụ Tunnel Broker thông qua mẫu đăng ký dưới dạng web.
Máy chủ đường hầm (Tunnel Server) thực chất là các bộ định tuyến dual-stack làm nhiệm vụ cung cấp kết nối để người đăng ký sử dụng dịch vụ kết nối tới và truy cập vào mạng IPv6 của tổ chức cung cấp Tunnel Broker. Các bộ định tuyến này là điểm kết thúc đường hầm của phía nhà cung cấp. Tunnel Server nhận yêu cầu từ máy chủ Tunnel Broker, sau đó tạo hoặc xóa đường hầm theo yêu cầu.
Automatic tunnel - đường hầm tự động
Trong công nghệ đường hầm tự động, không đòi hỏi cấu hình địa chỉ IPv4 của điểm bắt đầu và kết thúc đường hầm bằng tay. Điểm bắt đầu và điểm kết thúc đường hầm được quyết định bởi cấu trúc định tuyến. Địa chỉ IPv4 của điểm bắt đầu và kết thúc đường hầm được suy ra từ địa chỉ nguồn và địa chỉ đích của gói tin IPv6. Một số công nghệ đường hầm tự động là ISATAP tunneling, Teredo tunneling, 6to4 tunneling.
Intra-Site Automatic Tunnel Addressing Protocol (ISATAP)
Là công nghệ chuyển đổi qua lại giữa các IPv4 node sang IPv6 node trong mạng Intranet, các địa chỉ được chuyển đổi là địa chỉ dành riêng (private) IPv4 và IPv6 link-local.
Teredo tunneling
Sử dụng cho các địa chỉ private IPv4, kỹ thuật này đóng gói gói tin IPv6 bên trong các gói UDP của IPv4 để có thể được định tuyến hay đi qua các thiết bị NAT trong mạng IPv4.
6to4 tunneling
6to4 là công nghệ sử dụng địa chỉ IPv4 toàn cầu tạo ra các khối địa chỉ IPv6 riêng, khác biệt với địa chỉ IPv6 cấp bởi các tổ chức quản lý tài nguyên quốc tế (thường được gọi là địa chỉ thuần IPv6).
Những khối địa chỉ tạo nên từ IPv4 này sẽ dùng cho các mạng IPv6 6to4, đồng thời thiết lập đường hầm tự động kết nối các mạng này, coi cơ sở hạ tầng IPv4 như một môi trường kết nối vật lý ảo.
Công nghệ hiện nay được sử dụng khá rộng rãi. IANA giành riêng dải địa chỉ 2002::/16 để sử dụng cho 6to4 tunneling.
Hình 4. Mô hình 6to4 tunneling
Router đứng giữa mạng IPv4 và IPv6 thực hiện 6to4 tunneling được gọi là “edge router”. Địa chỉ 6to4 có prefix là 2002::/16, kết hợp với 32 bits của một địa chỉ IPv4 sẽ tạo nên một địa chỉ 6to4 có prefix /48 duy nhất toàn cầu được sử dụng cho mạng IPv6. Prefix /48 của địa chỉ IPv6 trong mạng 6to4 tương ứng với một địa chỉ IPv4 toàn cầu được cấu tạo theo nguyên tắc sau:
Hình 5. Cấu trúc địa chỉ IPv6 6to4
Phần tiền tố của địa chỉ được tạo nên bằng cách gắn 16 bits tiền tố dành riêng của Tunnel 6to4 2002::/16, 32 bits tiếp theo là địa chỉ IPv4 được viết dưới dạng hexa.
Vùng địa chỉ /48 này có thể sử dụng để phân bổ tạo nên một mạng IPv6 6to4. Một mạng con trong IPv6 được gắn tiền tố mạng /64. Như vậy, với vùng địa chỉ /48 thì 16 bits được sử dụng để đánh số và có khoảng tới 65536 mạng LAN 6to4. Đây là con số rất lớn và khó có thể sử dụng hết vùng địa chỉ /48 chỉ từ một địa chỉ IPv4.
Ví dụ:
Một edge router có địa chỉ kết nối mạng IPv4 là 192.168.99.1 thì địa chỉ IPv6 tương ứng của nó sẽ là 2002:c0a8:6301::/48. Bởi vì c0a86301 chính là 32 bits phần địa chỉ 192.168.99.1 viết dưới dạng hexa.
3) Lab demo
Configure for R1
Cấu hình IP cho Interface Loopback 0
R1>enable
R1#configure terminal
R1(config)#interface loopback 0
R1(config-if)#ip address 192.168.1.1 255.255.255.0
R1(config-if)#exit
Cấu hình IP cho Interface s0/1
R1(config)#interface s0/1
R1(config-if)#no shutdown
R1(config-if)#ip address 192.168.12.1 255.255.255.0
R1(config-if)#exit
Cấu hình IP cho Interface e1/1
R1(config)#interface e1/1
R1(config-if)#no shutdown
R1(config-if)#ipv6 address 2013::1/64
R1(config-if)#exit
R1(config)#
Cấu hình định tuyến RIPv2
R1(config)#router rip
R1(config-router)#version 2
R1(config-router)#no auto-summary
R1(config-router)#network 192.168.12.0
R1(config-router)#network 192.168.1.0
R1(config-router)#exit
R1(config)#
Cấu hình IP một đường hầm 6to4 tự động để kết nối với R2
R1(config)#interface tunnel 12
R1(config-if)#no ip address
R1(config-if)# ipv6 address 2002:C0A8:101::/128
R1(config-if)#tunnel source loopback 0
R1(config-if)#tunnel mode ipv6ip 6to4
R1(config-if)#exit
Cấu hình định tuyến IPv6
R1(config)#ipv6 unicast-routing
R1(config)# ipv6 route 2002::/16 Tunnel12
R1(config)# ipv6 route 2024::/64 2002:C0A8:201::
R1(config)#
Configure for R2
Cấu hình IP cho Interface Loopback 0
R2>enable
R2#configure terminal
R2(config)#interface loopback 0
R2(config-if)#ip address 192.168.2.1 255.255.255.0
R2(config-if)#exit
Cấu hình IP cho Interface s0/2
R2(config)#interface s0/2
R2(config-if)#no shutdown
R2(config-if)#ip address 192.168.12.2 255.255.255.0
R2(config-if)#exit
Cấu hình IP cho Interface e1/2
R2(config)#interface e1/2
R2(config-if)#no shutdown
R2(config-if)#ipv6 address 2024::2/64
R2(config-if)#exit
R2(config)#
Cấu hình định tuyến RIPv2
R2(config)#router rip
R2(config-router)#version 2
R2(config-router)#no auto-summary
R2(config-router)#network 192.168.12.0
R2(config-router)#network 192.168.2.0
R2(config-router)#exit
R2(config)#
Cấu hình IP một đường hầm 6to4 tự động để kết nối với R1
R2(config)#interface tunnel 12
R2(config-if)#no ip address
R2(config-if)# ipv6 address 2002:C0A8:201::/128
R2(config-if)#tunnel source loopback 0
R2(config-if)#tunnel mode ipv6ip 6to4
R2(config-if)#exit
Cấu hình định tuyến IPv6
R2(config)#ipv6 unicast-routing
R2(config)#ipv6 route 2002::/16 Tunnel12
R2(config)#ipv6 route 2013::/64 2002:C0A8:101::
R2(config)#
Cấu hình cho R3
Cấu hình IPv6 cho Interface e0/3
R3#conf t
R3(config)#interface e0/3
R3(config-if)#no shutdown
R3(config-if)#ipv6 address 2013::3/64
R3(config-if)#exit
Cấu hình default route
R3(config)#ipv6 route ::/0 2013::1
Lưu cấu hình
R3#wr
Cấu hình cho R4
Cấu hình IPv6 cho Interface e0/0
R4#conf t
R4(config)#interface e0/0
R4(config-if)#no shutdown
R4(config-if)#ipv6 address 2024::4/64
R4(config-if)#exit
Cấu hình default route
R4(config)#ipv6 route ::/0 2024::2
Lưu cấu hình
R4#write
Kiểm tra kết nối và 6to4 tunnel
» Tin mới nhất:
» Các tin khác: