Professional Documents
Culture Documents
8 bít đầu tiên trong địa chỉ multicast luôn luôn là 1111 1111 (tức là FF theo
dạng thức hexadecimal). “Flag” sử dụng từ bít thứ 9 đến bít 12 và chỉ ra xem
liệu đây có phải là dạng địa chỉ multicast được định nghĩa trước (well-
known). Nếu có là well-known, mọi bít sẽ là 0. “Scope” chiếm từ bít thứ 13
đến bít thứ 16. Nếu Scope ID = 2, ví dụ, thì đó là phạm vi link-local.
Group ID được sử dụng để xác định một nhóm multicast. Có những group
ID được định nghĩa từ trước (predefined group ID), ví dụ Group ID=1 tức là
mọi node. Bởi vậy, nếu địa chỉ multicast là ff02;;1 có nghĩa Scope ID=2 và
Group ID=1, chỉ định mọi node trong phạm vi một link (link-scope). Điều
này giống như broadcast trong địa chỉ IPV4
Địa chỉ multicast của IPV6 có nhiều ưu điểm so với địa chỉ multicast của
IPV4. Một trong số đó là số lượng địa chỉ để sử dụng. Trong IPV4, Class D
được dành cho multicast, đó chỉ là khoảng không gian địa chỉ nhỏ từ
224.0.0.0 tới 239.255.255.255. Nhưng trong địa chỉ IPV6, vùng địa chỉ dành
cho multicast chiếm tới 1/256 không gian địa chỉ khổng lồ. Do vậy địa chỉ
multicast có thể được sử dụng thoải mái hơn. Thêm nữa cơ sở hạ tầng có hỗ
trợ multicast có thể xây dựng dễ dàng hơn, bởi vì không như IPV4, địa chỉ
multicast là bắt buộc trong thực hiện IPV6.
2. Tìm hiểu về IPv6 Header
Khác biệt cơ bản giữa IPv4 Header và IPv6 Header
IPV6 là một cải tiến về version của thủ tục Internet hiện thời, IPV4. Tuy
nhên, nó vẫn là một thủ tục Internet. Một thủ tục là một tập các quy trình để
giao tiếp. Trong thủ tục Internet, thông tin như địa chỉ IP của nơi gửi và nơi
nhận của gói tin dữ liệu được đặt phía trước dữ liệu. Phần thông tin đó được
gọi là header. Cũng tương tự như khi xác định địa chỉ người nhận và người
gửi khi bạn gửi một bưu phẩm qua đường thư tín.
Hãy so sánh về header giữa IPV4 và IPV6.
Hình 1: IPV4 Header.
Mỗi header mở rộng (extension header) cũng chứa trường Next Header và
xác định header mở rộng nào sẽ theo sau nó. Node đầu cuối khi nhận được
gói tin chức extension header sẽ xử lý các extension header này theo thứ tự
được sắp xếp của chúng.
v Dạng của extension header
Có 6 loại của extension header: Hop-by-Hop Option, Destination Option,
Routing, Fragment, Authentication, and ESP (Encapsulating Security
Payload). Khi sử dụng cùng lúc nhiều extension header, thường có một
khuyến nghị là đặt chúng theo thứ tự như thế này.
Hop-by-Hop Option
Phía trên có đề cập là thông thường, chỉ có những node đầu cuối xử lý các
extension header. Chỉ có một ngoại lệ của quy tắc này là header Hop-by-Hop
Option. Header này, như tên gọi của nó, xác định một chu trình mà cần được
thực hiện mỗi lần gói tin đi qua một router.
Destination Option
Destination Option header được sử dụng để xác định chu trình cần
thiết phải xử lý bởi node đích. Có thể xác định tại đây bất cứ chu trình
nào. Chúng tôi đã đề cập là thông thường chỉ có những node đích xử
lý header mở rộng của IPV6. Như vậy thì các header mở rộng khác ví
dụ Fragment header có thể cũng được gọi là Destination Option
header. Tuy nhiên, Destination Option header khác với các header
khác ở chỗ nó có thể xác định nhiều dạng xử lý khác nhau.
Routing
Routing header được sử dụng để xác định đường dẫn định tuyến. Ví dụ, có
thể xác định nhà cung cấp dịch vụ nào sẽ được sử dụng, và sự thi hành bảo
mật cho những mục đích cụ thể. Node nguồn sử dụng Routing header để liệt
kê địa chỉ của các router mà gói tin phải đi qua. Các địa chỉ trong liệt kê này
được sử dụng như địa chỉ đích của gói tin IPV6 theo thứ tự được liệt kê và
gói tin sẽ được gửi từ router này đến router khác tương ứng.
Fragment
Fragment header được sử dụng khi nguồn gửi gói tin IPV6 gửi đi gói tin lớn
hơn Path MTU, để chỉ xem làm thế nào khôi phục lại được gói tin từ các
phân mảnh của nó. MTU (Maximum Transmission Unit) là kích thước của
gói tin lớn nhất có thể gửi qua một đường dẫn cụ thể nào đó. Trong môi
trường mạng như Internet, băng thông hẹp giữa nguồn và đích gây ra vấn đề
nghiêm trọng. Cố gắng gửi một gói tin lớn qua một đường dẫn hẹp sẽ làm
quá tải. Trong địa chỉ IPV4, mối router trên đường dẫn có thể tiến hành phân
mảnh (chia) gói tin theo giá trị của MTU đặt cho mỗi giao diện. Tuy nhiên,
chu trình này áp đặt một gánh nặng lên router. Bởi vậy trong địa chỉ IPV6,
router không thực hiện phân mảnh gói tin (các trường liên quan đến phân
mảnh trong header IPV4 đều được bỏ đi).
Node nguồn IPV6 sẽ thực hiện thuật toán tìm kiếm Path MTU, để tìm băng
thông hẹp nhất trên toàn bộ một đường dẫn nhất định, và điều chỉnh kích
thước gói tin tuỳ theo đó trước khi gửi chúng. Nếu ứng dụng tại nguồn áp
dụng phương thức này, nó sẽ gửi dữ liệu kích thước tối ưu, và sẽ không cần
thiết xử lý tại tầng IP. Tuy nhiên, nếu ứng dụng không sử dụng phương thức
này, nó phải chia nhỏ gói tin có kích thướng lớn hơn MTU tìm thấy bằng
thuật toán Path MTU Discovery. Trong trường hợp đó, những gói tin này
phải được chia tại tầng IP của node nguồn và Fragment header được sử
dụng.
Authentication and ESP
Ipsec là phương thức bảo mật bắt buộc được sử dụng tại tầng IP. Mọi node
IPV6 phải thực thi Ipsec. Tuy nhiên, thực thi và tận dụng lại là khác nhau, và
Ipsec có thực sự được sử dụng trong giao tiếp hay không phụ thuộc vào thời
gian và từng trường hợp. Khi Ipsec được sử dụng, Authentication header sẽ
được sử dụng cho xác thực và bảo mật tính đồng nhất của dữ liệu, ESP
header sử dụng để xác định những thông tin liên quan đến mã hoá dữ liệu,
được tổ hợp lại thành extension header. Trong IPV4, khi có sử dụng đến
Ipsec, thông tin được đặt trong trường Options.
IPV6 ứng dụng một hệ thống tách biệt các dịch vụ gia tăng khỏi các dịch vụ
cơ bản và đặt chúng trong header mở rộng (extension header), cao hơn nữa
phân loại các header mở rộng theo chức năng của chúng. Làm như vậy, sẽ
giảm tải nhiều cho router, và thiết lập nên được một hệ thống cho phép bổ
sung một cách linh động các chức năng, kể cả các chức năng hiện nay chưa
thấy rõ ràng.
3. Tự động cấu hình địa chỉ trong IPv6
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
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:
3.Kết nối các máy tính IPv6 trong mạng lan
Pinging 2001:0dc8::3
from 2001:0dc8::2 with 32 bytes of data:
Pinging 2001:0dc8::4
from 2001:0dc8::4 with 32 bytes of data: