Làm thế nào để bạn hiển thị bộ đệm IPv6 NDISC trong Linux?


14

Giả sử bạn đã cấu hình NDP proxy proxy trên một trong các hệ thống Linux của mình như sau:

ip -6 neighbor add proxy 2001:db8:1234::5 dev eth1

Làm thế nào để bạn xác minh rằng cấu hình đã mất? ip -6 neighbor showkhông xuất hiện để hiển thị các mục proxy và ip -6 neighbor show proxykhông phải là một lệnh được hỗ trợ.


Có lẽ ip -6 neighbor show nud allnào?
Zoredache

Điều đó cho thấy nhiều địa chỉ hơn (ví dụ :: dev lo) nhưng không phải là proxy.
Gerald Combs

Câu trả lời:


1

Tôi nghĩ rằng công cụ ip không in cờ NTF_PROXY. Trong ip / ipneigh.c, sau khối NTF_ROUTER, hãy thử thêm

   if (r->ndm_flags & NTF_PROXY) {
            fprintf(fp, " proxy");
    }

Tôi không có cài đặt proxy NDP, vì vậy tôi không thể kiểm tra nó. Tuy nhiên, từ việc đọc các nguồn kernel, có vẻ như tất cả các mục sẽ được trả về và cờ sẽ được đặt cho các mục proxy.


Thật không may, thật không may. Tôi cũng đã thử thêm "fprintf (fp," flags:% 02x \ n ", r-> ndm_flags);" vào đầu print_neigh và không có mục nào có cờ NTF_PROXY được đặt.
Gerald Combs

0

bạn đã thử ip ntable chưa?


Nó cung cấp cho tôi rất nhiều thông tin hữu ích về bộ đệm NDISC, nhưng bản thân nó không phải là các mục. Tôi bắt đầu nghĩ rằng đây là những giá trị chỉ ghi, ít nhất là cho phiên bản kernel của tôi.
Gerald Combs

0

Vì lợi ích của sự hoàn chỉnh:

 shell> ip -6 neigh del proxy 2001:db8:1234::1234:5678 dev eth1
 shell> ip -6 maddr show dev eth1                      
 3:      eth1
         inet6 ff02::1:ff34:5678
 ...

Đó chỉ là 6 ngòi cuối cùng nhưng đó thường là tất cả những gì bạn cần.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.