.1 – Mơ hình mạng thực hành IPv6 trên Windows server 2003 và Linux

Một phần của tài liệu (LUẬN văn THẠC sĩ) nghiên cứu triển khai mô hình mạng ứng dụng IP version 6 (Trang 119)

Mục đích của thí nghiệm này là kích hoạt thủ tục TCP/IPv6 trên các HĐH Windows và Linux, đồng thời thực hiện một số thao tác cấu hình kết nối mạng giữa chúng.

 Trên máy tính cài HĐH Windows server 2003

Mọi giao tiếp sẽ được thực hiện trên cửa sổ lệnh Run/cmd.

Quan sát cấu hình khi chưa kích hoạt giao thức IPv6 bằng lệnh ipconfig kết

quả sẽ chỉ có những thơng tin liên quan đến IPv4.

Kích hoạt thủ tục IPv6 bằng lệnh netsh interface ipv6 install ta thấy IPv6 trên HĐH được kích hoạt cùng với một số cấu hình mặc định. Quan sát thơng tin cấu hình bằng lệnh ipconfig (/all), sẽ có thêm các thơng tin về địa chỉ IPv6 như hình 6.2.

Hình 6.2 – Thơng tin về IPv6 sau khi cài đặt

Địa chỉ bắt đầu bằng tiền tố FE80 là địa chỉ link-local đã được tự động cấu hình từ địa chỉ MAC của card mạng. Chúng ta đã thảo luận về cách thức tự động tạo địa chỉ này từ các phần trên.

Hình 6.3 – Thơng tin về các giao diện IPv6

Hình 6.3 là thơng tin về các giao diện do IPv6 tạo ra. Khi giao thức IPv6 được kích hoạt, HĐH windows sẽ tự động tạo ra nhiều giao diện, trong đó có những giao diện thực vật lý (Local Area Connection) của card mạng, có những giao diện ảo, ví dụ "6to4 Pseudo-Interface" là giao diện ảo được windows tự động cấu hình cho cơng nghệ tunnel 6to4 nếu card mạng của máy có gán sẵn một địa chỉ IPv4 toàn cầu. Mỗi giao diện này được định danh bằng một số index duy nhất.

Cấu hình bằng tay địa chỉ IPv6 cho giao diện card mạng: Gán địa chỉ IPv6

toàn cầu cho giao diện card mạng bằng lệnh netsh>interface ipv6> add address

“Local Area Connection” 2001:dc9::1.

Kiểm tra lại thơng tin cấu hình với lệnh ipconfig “Local Area Connection” hoặc lệnh ipconfig /all ta sẽ quan sát thấy trên giao diện vật lý, có thơng tin về địa chỉ IPv6 mà vừa được gán bằng tay.

Hình 6.4 – Thông tin về địa chỉ IPv6 được khai báo bằng tay

Nhận dạng giao diện của địa chỉ IPv6 có thể tự động tạo ra từ địa chỉ MAC hoặc nhận một dãy số ngẫu nhiên. Khi kích hoạt giao thức IPv6 trên HĐH Window, cách thức tạo địa chỉ tự động bằng cách nhận dãy số ngẫu nhiên làm nhận dạng giao diện được mặc định kích hoạt. Nếu muốn tắt chức năng này, ta sử dụng lệnh:

netsh>interface ipv6> set privacy state=disabled store=persistent.

Khi chưa tắt chức năng trên, nếu lúc này trong mạng LAN có router quảng bá thơng tin tiền tố thì máy tính windows sẽ đồng thời có ba địa chỉ IPv6:

- Địa chỉ IPv6 gán bằng tay

- Địa chỉ IPv6 tự động tạo từ tiền tố quảng bá của router và địa chỉ MAC - Địa chỉ IPv6 từ tiền tố và 64 bít nhận dạng giao diện ngẫu nhiên, thay đổi theo khoảng thời gian nhất định.

 Trên máy tính cài Linux

Khi chưa kích hoạt giao thức IPv6 sử dụng lệnh ifconfig ta cũng sẽ chỉ nhận được các thông tin liên quan đến IPv4.

Sử dụng lệnh modprobe ipv6 để kích hoạt tính năng IPv6 trên máy Linux sau đó sử dụng lại lệnh ifconfig ta sẽ quan sát thấy các thông tin liên quan đến địa chỉ IPv6 được tự động sinh ra. Hệ điều hành Linux không tự động sinh ra giao diện ảo cho tunnel 6to4 như trong Windows.

Sử dụng một số lệnh như: ifconfig eth0 hoặc ip -6 route show dev eth0 sẽ

cho ta thông tin về giao diện eth0 hoặc các tuyến tạo ra cho giao diện này.

Tiếp theo ta sẽ cấu hình bằng tay địa chỉ IPv6 tồn cầu cho giao diện của card

mạng sử dụng lệnh ifconfig eth0 inet6 add 2001:dc9::2/64 và sử dụng lệnh ifconfig

Hình 6.5 – Thơng tin về địa chỉ IPv6 được tạo ra và dược gán

 Kiểm tra trạng thái kết nối giữa hai máy bằng địa chỉ IPv6 + Trên máy chạy Windows ta sử dụng các lệnh:

ping -6 -t fe80::202:55ff:fe56:8cb0%4 (địa chỉ link-local máy windows) ping -6 -t fe80::202:44ff:fe84:3891%4 (địa chỉ link-local máy linux) ping -6 -t 2001:dc9::1 (địa chỉ toàn cầu máy windows)

ping -6 -t 2001:dc9::2 (địa chỉ toàn cầu máy linux)

Ta thu được kết quả thành cơng như hình 6.6.

Ở đây khi ping địa chỉ link-local, ta phải xác định chỉ mục của giao diện. Trong HĐH Window, chỉ mục được xác định bằng cách đặt sau dấu %.

+ Trên máy chạy Linux ta sử dụng các lệnh:

ping6 -I eth0 fe80::202:44ff:fe84:3891(địa chỉ link-local máy linux) ping6 -I eth0 fe80::202:55ff:fe56:8cb0(địa chỉ link-local máy windows) ping6 2001:dc9::2 (địa chỉ toàn cầu máy linux)

ping6 2001:dc9::1 (địa chỉ toàn máy windows)

Hình 6.6 – Kết quả sử dụng lệnh Ping trên máy Windows

 Xoá địa chỉ gắn bằng tay và gỡ bỏ giao thức IPv6

Trên máy window: Xoá địa chỉ đã gán bằng tay sử dụng lệnh: netsh>interface

ipv6> delete address “Local Area Connection” 2001:dc9::1. Để gỡ bỏ giao thức IPv6 ta sử dụng lệnh uninstall.

Trên máy linux: Xoá địa chỉ đã gán bằng tay sử dụng lệnh: ifconfig eth0 inet6 del 2001:dc9::2.

Modul thực thi giao thức IPv6 trên HĐH Linux không được tự động load lên khi máy tính khởi động. Địa chỉ IPv6 đã gắn bằng tay sẽ bị xóa đi sau khi máy linux khởi động lại. Để load modul thực thi IPv6 khi khởi động lại máy và địa chỉ IPv6 đã gán bằng tay khơng bị xóa đi mỗi khi khởi động lại máy, chúng ta cần trực tiếp thêm thơng tin vào các file cấu hình mạng như sau:Cấu hình để load IPv6 modul tự động

Kiểm tra thư viện script IPv6 tồn tại:

Kiểm tra có tồn tại file /etc/sysconfig/network-scripts/network-functions ipv6.

Hoặc test bằng lệnh: test -f /etc/sysconfig/network-scripts/network-functions-ipv6 &&

echo "Có thu vien IPv6 script" Sửa đổi file cấu hình mạng dùng vi thêm dịng

―NETWORKING_IPV6=yes‖ vào file /etc/sysconfig/network.

Cấu hình vĩnh viễn địa chỉ IPv6 Sửa đổi file cấu hình giao diện. Dùng vi sửa

đổi file /etc/sysconfig/network-scripts/ifcfg-eth0, thêm những dịng thơng tin sau vào file: IPV6INIT=yes IPV6ADDR=<địa_chỉ_IPv6>.

6.2. Khảo sát hoạt động của các nút IPv6[4],[9],[10],[11]

Xét mô hình mạng thử nghiệm như trong hình 6.2, bao gồm một máy tính cài HĐH Windows server 2003, một máy tính cài HĐH Linux và một router Cisco 2801 sử dụng hệ điều hành c2801-adventerprisek9-mz.124-16.bin được kết nối với nhau qua một Hub/Switch (mạng LAN).

2801

Mục đích của thí nghiệm này là khảo sát hoạt động của TCP/IPv6 trên các node IPv6, sự quảng bá thông tin về tiền tố của các router IPv6, và cách thức tự động cấu hình địa chỉ dựa trên các tiền tố nhận được.

Tương tự như thí nghiệm trên ta cũng tiến hành kích hoạt giao thức IPv6 trên các máy tính trong mạng. Tắt chức năng tự động tạo nhận dạng giao diện của máy chạy Windows. Ở đây ta chỉ kích hoạt giao thức IPv6 mà không thực hiện gán địa chỉ bằng tay cho các giao diện. Khi đó các máy tính trên mạng sẽ chỉ tự động cấu hình địa chỉ link-local. Ta cũng có thể kiểm tra các địa chỉ này trên các máy tính giống như thí nghiệm trước. Lúc này hai máy tính hồn tồn có thể liên lạc với nhau bằng các địa chỉ link-local của mình.

Bây giờ ta sẽ kiểm tra bảng lưu trữ neighbor của các máy:

Trên máy windows sử dụng lệnh netsh> interface ipv6> show neighbors

Trên máy linux ip -6 neigh show dev eth0 ta sẽ thấy hai máy lưu trữ thông tin về các node lân cận (địa chỉ IP, địa chỉ MAC...). Thơng tin này được trình bày trên hình 6.10.

Hình 6.9 – Thơng tin về các host cạnh nhau

 Kích hoạt IPv6 và quảng bá thông tin trên router Cisco

Kiểm tra version của HĐH: show version, với version phù hợp mới có thể hỗ

trợ giao thức IPv6. Trong bài thực hành này chúng ta sử dụng hệ điều hành:

Kiểm tra xem HĐH có hỗ trợ IPv6 khơng:. Vào chế độ cấu hình và đặt tên cho

router là ―router-ipv6‖ Enable

Hostname router-ipv6

Kiểm tra xem có tồn tại tập lệnh ipv6 hay không ipv6?. Nếu lệnh khơng hiển thị tập hợp các lệnh của ipv6 thì hệ điều hành khơng hỗ trợ thủ tục IPv6. Sau đó kích hoạt thủ tục IPv6 trên router bằng các lệnh:

ipv6 unicast-routing: kích hoạt một cách tồn diện giao thức ipv6 trên router

Cisco.

ip cef: kích hoạt chức năng cef trên router Cisco. ipv6 cef: kích hoạt chức năng cef cho ipv6.

Tiếp theo ta tiến hành cấu hình địa chỉ IPv6 cho giao diện của router. Khi cấu hình địa chỉ cho một giao diện, tiến trình IPv6 trên router đó sẽ tự động được kích hoạt và theo mặc định, router sẽ quảng bá thơng tin trên giao diện đó.

Vào chế độ cấu hình cho giao diện FastEthernet 0/0 bằng lệnh interface

fastethernet 0/0 đặt tiền tố cho router và hướng dẫn cho nó biết tự động cấu hình 64

bit còn lại từ địa chỉ MAC theo cơ chế EUI-64 bằng lệnh ipv6 address 2001:dc9::/64

eui-64. Sau khi được gán tiền tố địa chỉ, router sẽ quảng bá thông tin này trên giao

diện Fastethernet 0/0 cho các máy tính trong mạng.

Kiểm tra cấu hình router bằng các lệnh: show ipv6 interface fastethernet 0/0,

show ipv6 route, show ipv6 trafics…ta có thơng tin như trên hình 6.11.

Lúc này trên cửa sổ của máy Linux sử dụng lệnh tcpdump –t –n –i eth0, ta sẽ thấy router đang quảng bá thông tin về tiền tố và những tham số khác cho các máy tính trong mạng.

Hình 6.11 – Tiền tố được quảng bá cho các host hiển thị trên máy linux

Quan sát lại các máy tính trong mạng LAN trước đây chỉ có địa chỉ link-local bây giờ đã nhận được thông tin quảng bá của router và tự động cấu hình địa chỉ IPv6 tồn cầu cho mình.

Trên máy Windows: Thực hiện các lệnh ipconfig và netsh>interface

ipv6>show routes sẽ cho ta thông tin về địa chỉ IP mới được tạo và các tuyến tương

tứng.

Hình 6.12 – Địa chỉ được tạo ra từ tiền tố do router gửi

Khi nhận được thông tin quảng bá từ router, host sẽ tự động cấu hình địa chỉ, đồng thời tuyến tương ứng với tiền tố địa chỉ quảng bá bởi router cũng được thiết lập tự động, host sẽ sử dụng router quảng bá làm gateway mặc định.

Trên máy tính Linux: sử dụng các lệnh ifcofig và ip -6 route show dev eth0 cũng sẽ quan sát được các thông tin về địa chỉ và tuyến tương ứng được tạo ra.

Hình 6.13 – Địa chỉ được tạo ra từ tiền tố do router gửi

Lúc này ta hồn tồn có thể sử dụng các địa chỉ vừa được tạo ra để liên lạc giữa hai máy tính với nhau.

Hình 6.14 – Kết quả ping từ máy windows sang router và máy linux

 Kích hoạt các máy tính Linux và Windows thực hiện chức năng router Ở đây vì thiếu router chuyên dụng nên ta hồn tồn có thể cấu hình các máy tính chạy windows hay linux làm chức năng router để thay thế. Trong phần này sẽ hướng dẫn cách kích hoạt chức năng này trên các máy tính và quan sát thấy trên một mạng LAN IPv6, có thể có nhiều router quảng bá nhiều tiền tố khác nhau và một giao diện của một host IPv6 có thể một lúc được cấu hình nhiều địa chỉ.

Kích hoạt chức năng router của máy window: Kích hoạt chức năng chuyển tiếp gói tin và quảng bá thơng tin trên giao diện vật lý “Local Area Connection”

netsh>interfaceipv6>set interface "Local Area Connection" forwarding=enabled advertise=enabled store=active

Gắn tiền tố địa chỉ cho giao diện, tạo tuyến và xác định quảng bá thông tin qua

giao diện bằng lệnh add route 2001:dc8::/64 “Local Area Connection”

publish=yes. Khi đó trên máy windows sẽ tự động cấu hình địa chỉ theo tiền tố trên.

Kích hoạt chức năng router của máy Linux: Để máy tính cài HĐH Linux có thể thực hiện chức năng chuyển tiếp gói tin và quảng bá thơng tin của router ipv6, cần cài đặt gói tin radvd và sửa đổi thơng tin cấu hình cần thiết (trong file cấu hình /etc/radvd.conf)

Cài đặt gói tin radvd-0.7.2-9.i386.rpm

Chúng ta có thể download gói tin tại website www.rpmfind.net và lưu vào một thư mục trên máy linux. Chuyển đến thư mục lưu trữ gói tin và thực hiện lệnh cài đặt:

rpm –Uvh radvd-0.7.2-9.i386.rpm

Kích hoạt chức năng ipv6 forwarding và debug

sysctl -w net.ipv6.conf.all.forwarding=1

Hoặc sửa bằng tay (sử dụng vi) file

/proc/sys/net/ipv6/conf/all/forwarding. Đặt giá trị là 1

radvd --debug 0

Sửa đổi file cấu hình của radvd để router quảng bá đúng tiền tố cần thiết. Cách thức cư xử của router, thơng tin quảng bá được cấu hình trong file cấu hình của radvd (/etc/radvd.conf)

vi /etc/radvd.conf

Cấu hình tiền tố cần thiết (2001:dc7::/64) thay thế cho tiền tố 3FFE::/64 mặc định. Kích hoạt radvd bằng lệnh /etc/init.d/radvd start

Tiến hành quan sát lại thơng tin cấu hình trên các máy tính trong mạng LAN thử nghiệm, ta sẽ thấy giao diện vật lý của các máy này đồng thời được gán nhiều địa chỉ tự động tạo ra tương ứng với các tiền tố địa chỉ được quảng bá bởi router và đồng thời cũng tự động tạo ra các tuyến tương ứng với các tiền tố này.

Hình 6.16 – Các địa chỉ được tạo ra trên giao diện của máy windows

Hình 6.17 – Các địa chỉ được tạo ra trên giao diện của máy linux

Khi trên các host đã cấu hình xong địa chỉ từ các tiền tố nhận được, lúc này ta có thể sử dụng các địa chỉ đó để liên lạc với nhau.

Hình 6.19 – Kết quả lệnh ping từ router đến hai host

6.3. Khảo sát hoạt động của NAT-PT[6],[8],[9]

NAT-PT được sử dụng với các trường hợp chuyển đổi từ IPv4 sang IPv6 và mục đích của nó là cung cấp khả năng kết nối hai chiều giữa các miền IPv4 và IPv6. Một router hai ngăn xếp với các giao diện ở trong cả mạng IPv4 và IPv6 có thể thực hiện nhiệm vụ này. Sự khác biệt so với NAT trong IPv4 cổ điển là các thông dịch sẽ được thực hiện theo cả hai cách: Các gói tin IPv6 được định tuyến tới các host IPv4 sẽ có các địa chỉ nguồn và địa chỉ đích được thay đổi thành một vài địa chỉ IPv4 tương ứng và ngược lại: Các gói tin IPv4 được gửi tới các host IPv6 sẽ có cả địa chỉ nguồn và địa chỉ đích được thay thế với các địa chỉ IPv6.

Câu hỏi đầu tiên đặt ra là làm sao để miền IPv6 học được về các host IPv4 và miền IPv4 biết về sự tồn tại của IPv6. Giải pháp ở đây là cung cấp các ánh xạ tĩnh hai chiều. Ví dụ, chúng ta có thể cấu hình bằng tay cho router để chuyển các địa chỉ đích trong các gói tin IPv6 gửi tới địa chỉ IPv6 2000::960B:0202 (một địa chỉ mẫu, ở đây giá trị 960B là 150.11) thành địa chỉ 150.11.2.2. Địa chỉ nguồn là gì? Để thơng dịch địa chỉ nguồn (ví dụ 3001:11:0:1::1) chúng ta thiết lập một ánh xạ khác, thay đổi các gói tin IPv4 (theo hướng ngược lại) gửi tới địa chỉ 150.11.1.1 thành địa chỉ 3001:11:0:1::1. Vì ánh xạ là hai chiều, các gói tin IPv6 với cặp địa chỉ nguồn/đích [3001:11:0:1::1, 2000::960B:0202] sẽ được biến đổi thành các gói tin IPv4 với cặp địa chỉ [150.11.1.1, 150.11.2.2] và ngược lại – địa chỉ nguồn/đích gói tin IPv4 [150.11.2.2, 150.11.1.1] sẽ được thơng dịch thành cặp địa chỉ [2000::960B:0202, 3001:11:0:1::1].

Điều này sẽ được thực hiện trong IOS như sau: Đầu tiên, ngăn xếp giao thức IPv6 phân lớp các gói tin IPv6 cho NAT-PT bằng một tiền tố NAT IPv6 đặc biệt. Tiền

tố này đại diện cho tồn bộ khơng gian địa chỉ IPv4 (232) được nhúng trong không gian

siêu lớn IPv6, và ln có độ dài 96 bit (128-32). Mỗi gói tin IPv6 gửi với tiền tố này được kiểm tra bởi NAT-PT.

R1 R3 R2 Fa1/0 Fa0/0 Fa0/0 Fa0/0 2001:13::/64 :2 :3 192.168.23.0/24 .3 .2 3001:13:0:1::1/64 L0 150.13.3.3/24 L1 3001:13:0:3::3/64 L0 150.13.2.2/24 L0 Cisco 3640 Cisco 3640

Hình 6.20 – Mơ hình mạng thử nghiệm NAT-PT

Một phần của tài liệu (LUẬN văn THẠC sĩ) nghiên cứu triển khai mô hình mạng ứng dụng IP version 6 (Trang 119)