Neighbor Discovery Protocol

Neighbor Discovery Protocol (NDP, ND) là một giao thức được phát triển mới trong bộ giao thức Internet để sử dụng với giao thức Internet phiên bản 6 (IPv6). Nó hoạt động trong tầng liên kết dữ liệu của mô hình OSI (RFC 1122), và phụ trách các quy trình giao tiếp giữa các node IPv6 trên cùng một đường kết nối, khám phá các nút khác trong liên kết, xác định các địa chỉ của các nút khác, phát hiện địa chỉ trùng lặp, tìm các bộ định tuyến đang hoạt động và máy chủ tên miền (DNS) và duy trì thông tin về khả năng tiếp cận của các nút lân cận đang hoạt động khác.
Giao thức định nghĩa năm loại gói tin ICMPv6 khác nhau để thực hiện các chức năng cho IPv6 tương tự như ARP, ICMP, Router Discovery và Router Redirect cho IPv4. Tuy nhiên, nó cung cấp nhiều cải tiến đối với các đối tác IPv4 của nó (RFC 4861, phần 3.1). Chẳng hạn, nó bao gồm Neighbor Unreachability Detection (NUD), do đó cải thiện tính bền vững của việc phân phối gói tin khi các router hoặc các liên kết hoặc các nút di động
hư.
Giao thức mở rộng Inverse Neighbor Discovery (IND) (RFC 3122) cho phép các nút xác định và quảng bá một địa chỉ IPv6 tương ứng với một địa chỉ tầng liên kết nhất định, giống như Reverse ARP cho IPv4. Giao thức Secure Neighbor Discovery (SEND), một phần mở rộng an ninh của NDP, sử dụng các địa chỉ được tạo ra mã hóa (CGA) và Resource Public Key Infrastructure (RPKI) để cung cấp một cơ chế thay thế bảo vệ NDP bằng một phương pháp mật mã độc lập với IPsec. Neighbor Discovery Proxy (ND Proxy) (RFC 4389) cung cấp một dịch vụ tương tự như IPv4 Proxy ARP và cho phép cầu nối nhiều phân đoạn mạng trong một single subnet prefix khi không thể kết nối được tại tầng liên kết.
Chức năng.
ND sử dụng tập hợp 5 thông điệp ICMPv6 sau đây để trao đổi giữa các node lân cận trên một đường kết nối, trong các quy trình hoạt động cần thiết của địa chỉ IPv6:
an die Router-Multicast-Adresse werden alle Router im selben Netz aufgefordert, sich zu melden.
Thông điệp này là ICMPv6 type 133. IPv6 host truyền gói tin Router Solicitation để định vị trí router trên một đường kết nối qua địa chỉ router multicast. Các Router tạo ra Router Advertisements gửi thông tin cho host ngay khi nhận được thông điệp này chứ không phải đợi tới thời gian dự kiến tiếp theo. Do quá trình tự động cấu hình và định tuyến phụ thuộc vào khả năng tìm thấy router và prefix địa chỉ, thông điệp này là cần thiết trước khi bất cứ giao tiếp nào được thiết lập.
Router quảng bá sự hiện diện của chúng với các thông số liên kết và Internet khác nhau. Hoặc theo định kỳ, hoặc để đáp ứng với một thông điệp Router Solicitation.
Thông điệp Neighbor Solicitation được một nút sử dụng để yêu cầu các node khác trên đường kết nối cung cấp địa chỉ tầng liên kết dữ liệu của chúng. Nó cũng được dùng để xem một nút còn hoạt động hay không. Chức năng này giống như giao thức ARP trong IPv4.
Neighbor Advertisement được dùng để trả lời về địa chỉ tầng liên kết của nó cho một thông điệp Neighbor Solicitation.
Thông điệp này được router gửi để thông báo cho host IPv6 rằng có một router khác tốt hơn có thể sử dụng làm next hop để gửi gói tin đến một đích nhất định. Khi nhận được host sẽ cập nhật hóa Destination Cache. Nếu mục từ không có trong đó thì nó sẽ được thêm vào.
Những thông điệp trên được dùng để cung cấp các chức năng: