Professional Documents
Culture Documents
Giới thiệu về địa chỉ IPv6
Giới thiệu về địa chỉ IPv6
IPv6 là gì?
IPv6 (Internet Protocol version 6) là phiên bản mới nhất của Giao thức Internet (IP), giao thức
truyền thông cung cấp một hệ thống định vị vị trí cho các máy tính trên mạng và định tuyến lưu
lượng trên Internet. IPv6 đã được IETF phát triển để giải quyết vấn đề cạn kiệt địa chỉ IPv4. IPv6
được tạo ra để thay thế IPv4.
Như vậy, giao thức IPv6 đang dần được sử dụng phổ biến và chúng tôi viết loạt bài viết
này để giới thiệu cho các bạn về giao thức IPv6.
Một địa chỉ IPv4 được chia thành các phần khác nhau, trong địa chỉ IPv6 cũng vậy.
Trong bài trước, bạn đã biết được về các địa chỉ IPv6 có 128 bit chiều dài. Khi một địa
chỉ IPv6 được viết theo dạng đầy đủ, nó được diễn tả thành 8 phần khác nhau, mỗi
phần có 4 số và được phân tách bằng dấu “:”. Mỗi phần có 4 chữ số này biểu thị 16 bit
dữ liệu, mỗi trường 16 bit này lại được sử dụng cho các mục đích riêng biệt.
Không giống như site prefix, subnet ID mang tính riêng bởi vì nó ở bên trong mạng của
bạn, subnet ID miêu tả cấu trúc trang của mạng. Subnet ID làm việc rất giống với cách
mà mạng con làm việc trong giao thức IPv4. Sự khác nhau lớn nhất ở đây là các mạng
có đó có thể dài 16 byte là được biểu thị trong định dạng hex nhiều hơn là ký hiệu chữ
thập phân có nhiều dấu chấm. Một IPv6 subnet điển hình tương đương với một nhánh
mạng đơn (trang) như một subnet của IPv4.
Interface ID làm việc giống như một ID cấu hình IPv4. Số này nhận dạng duy nhất một
host riêng trong mạng. Interface ID (thứ mà đôi khi được cho như là một thẻ) được cấu
hình tự động điển hình dựa vào địa chỉ MAC của giao diện mạng. ID giao diện có thể
được cấu hình bằng định dạng EUI-64.
Để xem một địa chỉ IPv6 được phân chia như thế nào thành các phần con khác nhau
của nó, bạn hãy quan sát đến địa chỉ dưới đây:
2001:0f68:0000:0000:0000:0000:1986:69af
Phần site prefix của địa chỉ này là: 2001:0f68:0000. Trường tiếp theo là 0000 biểu thị
subnet ID. Các byte còn lại (0000:0000:1986:69af) biểu thị interface ID.
Điển hình khi một tiền tố được biểu diễn, nó được viết trong một định dạng đặc biệt.
Các số 0 trong đó đã giải thích trong bài viết trước và các tiền tố được theo sau bởi một
dấu sổ và số. Số sau dấu sổ chỉ số lượng của các bit trong tiền tố. Trong ví dụ trước tôi
đã đề cập đến site prefix cho địa chỉ 2001:0f68:0000:0000:0000:0000:1986:69af
là 2001:0f68:0000. Khi tiền tố này có chiều dài 48 bit thì chúng ta nên thêm vào đó a
/48 để kết thúc nó hợp thức. Với các con số 0 đã bỏ, tiền tố đó sẽ viết như
sau: 2001:f68::/48
Như chúng tôi đã giải thích ở phần trước, các địa chỉ
Multicast được sử dụng để nhận dạng một nhóm các
giao diện mạng, được biết đến như một nhóm Multicast.
Các giao diện mạng điển hình được định vị trên các
máy tính phức hợp nhưng đây không phải là một thiết bị
thuần túy. Các địa chỉ Multicast được sử dụng để gửi
thông tin đến bất kỳ giao diện mạng nào đã được định
nghĩa thuộc về nhóm Multicast.
Một trong những điều thú vị nhất về các địa chỉ
Multicast đó là chúng hoàn toàn riêng biệt, một giao diện mạng có một địa chỉ Multicast
không có nghĩa là máy đó không thể có một địa chỉ Unicast hoặc là nằm trong các
nhóm Multicast khác Trong thực tế, một vài hệ điều hành đã thêm vào đó một adapter
mạng của máy tính đối với các nhóm Multicast khác nhau tại thời điểm địa chỉ unicast
của adapter được định nghĩa. Ví dụ: hệ điều hành Solaris tự động thêm vào các
adapter mạng vào nút Solicited và các nhóm multicast tất cả các nút (hoặc tất cả các
router). Trong trường hợp bạn không quen với Solaris, nhóm nút Solicited được sử
dụng cho việc phát hiện ra IPv6 khác đã kích hoạt các thiết bị trên mạng. Windows
Vista cũng có một chức năng tương tự.
Chúng tôi đã giải thích cho các bạn nghe về các địa chỉ multicast được sử dụng cho
những địa chỉ Multicast trông như thế nào. Mặc dù một địa chỉ IPv6 dài 128 bit nhưng 8
bit đầu tiên của địa chỉ lại định nghĩa cho địa chỉ Multicast. Mỗi một địa chỉ Multicast sử
dụng một định dạng tiền tố là 11111111. Khi được biểu diễn trong ký hiệu hex và “:” thì
một địa chỉ multicast luôn luôn bắt đầu bằng FF.
Bốn bit tiếp theo của địa chỉ Multicast là các bit cờ (flag). Tại thời điểm hiện tại, ba bit
đầu trong nhóm bốn bit là không dùng đến (chính vì vậy chúng được thiết lập là 0). Bit
cờ thứ tư được biết đến như một bit nốt đệm. Nhiệm vụ của nó là để biểu thị xem địa
chỉ đó là một địa chỉ tạm thời hay thường xuyên. Nếu địa chỉ đó là địa chỉ thường xuyên
thì bit này sẽ được gán bằng 0 còn ngược lại nó sẽ được gán bằng 1.
Bốn bit tiếp theo trong địa chỉ Multicast được biết đến như các bit ID Scope. Số lượng
của không gian dự trữ cho các bit Scope ID là 4 bit, điều đó có nghĩa là có 16 giá trị
khác nhau được biểu thị. Mặc dù không phải tất cả 16 giá trị đều được sử dụng tại thời
điểm hiện tại, 7 trong số các giá trị đó được sử dụng để xác định phạm vi của địa chỉ. Ví
dụ: nếu một địa chỉ có phạm vi toàn cầu thì địa chỉ là hợp lệ trên toàn bộ Internet. Hiện
tại đã sử dụng các bit Scope ID như sau:
0 0000 Dự trữ
15 1111 Dự trữ
112 bit còn lại được sử dụng cho nhóm ID. Kích thước của nhóm ID cho phép các địa
chỉ Multicast dùng hết 1/256 phần không gian địa chỉ của IPv6.
Để đặt lược đồ địa chỉ này trong phần sắp tới, chúng tôi cho bạn xem một số địa chỉ
Multicast được sử dụng thường xuyên nhất:
FF0x0:0:0:0:0:1
Đây là một Multicast cho tất cả các nút. Bạn có thể phải lưu ý đến chữ “x” trong địa chỉ,
nó không phải là một kí tự hệ số hex. Nó là một trình giữ chỗ cho phạm vi. Địa chỉ cụ
thể này có thể sử dụng phạm vi nút nội bộ (FF01:0:0:0:0:0:1) hoặc phạm vi liên kết nội
bộ (FF02:0:0:0:0:0:1).
FF0x:0:0:0:0:0:2
Địa chỉ Multicast này được gán cho tất cả các router bên trong phạm vi đã định nghĩa.
Ở đây cũng có kí tự “x”, nó cũng có chức năng tương tự. Các phạm vi hợp lệ là nút nội
bộ (FF01:0:0:0:0:0:2), liên kết nội bộ (FF02:0:0:0:0:0:2) và trang nội bộ
(FF05:0:0:0:0:0:2).
Địa chỉ Anycast:
Nếu đã nghiên cứu giao thức IPv4 thì bạn có thể biết được rằng các khái niệm của
Unicast và Multicast cũng tồn tại ở IPv4, mặc dù vậy ở IPv6 chúng được bổ sung nhiều
vấn đề khác. Anycast là duy nhất với IPv6. Anycast làm việc giống như một sự kết hợp
các địa chỉ Unicast và Multicast. Một địa chỉ unicast được sử dụng để gửi dữ liệu đến
một người nhận cụ thể nào đó, một địa chỉ Multicast được sử dụng để gửi dữ liệu đến
một nhóm người nhận còn một địa chỉ anycast thì được sử dụng để gửi dữ liệu đến một
người nhận cụ thể ở ngoài nhóm người nhận.
Trong trường hợp bạn đang phân vân rằng anycast được tạo như một cách làm cân
bằng tải trở lên dễ dàng hơn. Hãy hình dung một tình huống bạn cần cung cấp một số
lượng lớn người dùng để họ có thể truy cập đến các dịch vụ hoặc đến một router của
họ. Trong tình huống như vậy thì nó thường làm cho bạn phải sử dụng nhiều máy chủ
để cấu hình dịch vụ đang được cung cấp hoặc sử dụng các router phức hợp hay bất cứ
trường hợp nào có thể. Lý do ở đây là vì nó có thể cho phép phân phối luồng công việc
giữa các thiết bị phức hợp.
Loại cân bằng tải này thực hiện rất khó khăn nếu sử dụng Ipv4 (mặc dù nó đã được
thực hiện). Siệc sử dụng các địa chỉ anycast với IPv6 sẽ cho hiệu quả tuyệt đối với việc
cân bằng tải. Bạn cần gửi một yêu cầu người dùng đến một trong những thiết bị, trong
khi không thể quan tâm đến các thiết bị đã được chỉ định quản lý yêu cầu mà chỉ là yêu
cầu phải được quan tâm. Bằng việc sử dụng các địa chỉ Anycast, mỗi yêu cầu sẽ tự
động gửi đến thiết bị gần nhất về mặt địa lý đến máy tính đưa ra yêu cầu. Trong một số
tình huống, anycast thậm có thể được sử dụng để cung cấp lỗi dung sai cho một router
lỗi. Lỗi có thể được phát hiện và các yêu cầu có thể được gửi lại vòng qua một router
khác lân cận.
Vấn đề kỳ lạ nhất với các địa chỉ anycast là không có lược đồ định địa chỉ đặc biệt nào.
Với những gì trong bài viết này, bạn đã thấy được có rất nhiều loại nguyên tắc bao trùm
sử dụng và cấu trúc của các địa chỉ unicast và Multicast là để gán cùng một địa chỉ
Unicast cho các host phức hợp. Với cách làm như vậy các địa chỉ Unicast trở thành một
địa chỉ Anycast.
Trong loạt bài viết này, chúng tôi đã cố gắng lướt qua một cách cơ bản về giao thức
IPv6. Hầu hết các quản trị viên có thể không cần phải trở thành các chuyên gia ngay
lập tức nhưng IPv6 là một thành phần cần thiết trong Windows Vista và Longhorn
Server. Chính vì vậy, chúng ta tìm hiểu để biết chút ít về nó là một việc làm cần thiết.