Thứ Hai, 9 tháng 9, 2013

Tìm hiểu về tính năng Tự động cấu hình địa chỉ trong IPv6 (Autoconfiguration plug & play)

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 là 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 xong trong địa chỉ IPv6, không giới hạn số lượng này.

Nói chung, có những cách thức sau đây để gắn địa chỉ IP cho một node

1. 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 một bằng nhân công. Cũng bao gồm cả địa chỉ được cấu hình trước dựa theo một file cấu hình tại thời điểm bật máy.

2. Tự động cấu hình có trạng thái (Stateful Address Autoconfiguration)

Nó bao gồm chức năng quản lý 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.

3. Tự động cấu hình địa chỉ không trạng thái (Stateless Address Autoconfiguration)

Tự động cấu hình địa chỉ trong IPv6 là dạng này. Một node có thể tự cấu hình địa chỉ của riêng nó, sử dụng những thông tin trên mạng. Nó được gọi là “không trạng thái – stateless” vì không có gì khác ngoài chính node tự quản lý địa chỉ của nó.

Quá trình phân bổ địa chỉ stateful
Sự khác biệt giữa cấu hình stateful và stateless là ai là người quản lý địa chỉ. Trong ví dụ về phân bổ stateful là DHCP.

Trong thủ tục DHCP, máy chủ DHCP được đặt trong mạng để phân bổ địa chỉ theo quy trình sau đây:

(1) Node gửi DHCPDISCOVER và tìm thấy máy chủ DHCP

(2) Máy chủ DHCP nhận DHCPDISCOVER và gửi trả lại DHCPOFFER.

(3) Node nhận DHCPOFFER và gửi DHCPREQUEST

(4) Máy chủ DHCP nhận DHCPREQUEST và gửi trả lại DHCPACK.

(5) Node nhận DHCPACK và cấu hình giao diện của nó.

Điểm quan trọng ở đây là máy chủ DHCP quản lý thông tin địa chỉ và duy trì là địa chỉ nào sẽ được phân bổ cho ai. Trong phân bổ địa chỉ bằng DHCP, một node chỉ có thể sử dụng duy nhất một DHCP server (mặc dù có thể có nhiều máy chủ DHCP trong một mạng. Như vậy chỉ có một địa chỉ IP được phân bổ cho giao diện của một node.

Qúa trình tự động cấu hình không trạng thái (stateless)

Vậy địa chỉ IPv6 được tự động cấu hình như thế nào ?

Trong IPv6, 128 bít đị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 đó sẽ kết hợp lại để cấu thành lên địa chỉ IPv6.

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

(1) Node mới trong mạng tạo địa chỉ link-local và gắn nó cho giao diện. Địa chỉ link-local có dạng như sau: fe80:0000:0000:0000:0000:



(2) Node thực hiện kiểm tra để chắc chắn rằng địa chỉ link-local không có sử dụng rồi trong cùng mạng bằng DAD- Duplicate Address Detection. Trước tiên, node truyền thông điệp Neighbor Solicitation (NS) trong mạng. Nếu một node nào đó đã sử dụng cùng địa chỉ rồi, node này sẽ gửi thông điệp Neighbor Advertisement (NA). Node mới sẽ sử dụng địa chỉ link-local nó vừa tạo nếu sau một khoảng thời gian nó không nhận được thông điệp NA nào. Nếu trong khoảng thời gian đó nó nhận được thông báo về tình trạng trùng lặp địa chỉ link-local, nó sẽ không sử dụng địa chỉ link-local đó và ngắt giao diện.

(3) Node mới gử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. Việc node truyền đi thông điệp RS không phải là bắt buộc, node có thể thụ động đợi thông điệp RA vốn được gửi theo thời đoạn từ router.

(4) Router nhận thông điệp RS sẽ gửi lại thông điệp RA (Router Advertisement). Thông điệp RA được truyền theo thời hạn thời gian nhất định, do vậy node cũng không bắt buộc phải gửi thông điệp RS.

(5) Node nhận RA và thu được tiền tố địa chỉ IPv6 của nó.

(6) Khi đó node cấu thành địa chỉ IPv6 bằng cách kết hợp tiền tố mạng (prefix) và định danh giao diện (interface ID), như là nó đã thực hiện với địa chỉ link-local.

The node forms the global IPv6 address by combining prefix and interface ID, just as it did for link-local address.



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ên đến sẽ gử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.

Cấu hình định danh giao diện (Interface ID) từ địa chỉ MAC

Định danh giao diện (Interface ID) trong địa chỉ IPv6 là 64 bít cuối trong 128 bít địa chỉ IPv6. Định danh này có thể được tự động cấu hình lên từ địa chỉ card mạng MAC theo quy trình như sau:

0 nhận xét:

Đăng nhận xét