16

Suppose you've configured IPv6 proxy NDP on one of your Linux systems like so:

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

How do you verify that the configuration took? ip -6 neighbor show doesn't appear to show proxy entries and ip -6 neighbor show proxy isn't a supported command.

2
  • Maybe ip -6 neighbor show nud all?
    – Zoredache
    Oct 3, 2010 at 21:49
  • That shows more addresses (e.g. :: dev lo) but not the proxies. Oct 3, 2010 at 21:58

3 Answers 3

1

I think the ip tool just doesn't print the NTF_PROXY flag. In ip/ipneigh.c, after the NTF_ROUTER block, try adding

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

I don't have an NDP proxy installation, so I can't test it. From reading the kernel sources, however, it appears that the entries will all get returned and the flag should be set for proxy entries.

1
  • 1
    That didn't work, unfortunately. I also tried adding "fprintf(fp, " flags: %02x\n", r->ndm_flags);" to the beginning of print_neigh and none of the entries had the NTF_PROXY flag set. Oct 31, 2010 at 17:45
0

have you tried ip ntable ?

1
  • It gives me lots of useful information about the NDISC cache, but not the entries themselves. I'm beginning to think these are write-only values, at least for my kernel version. Oct 12, 2010 at 23:56
0

For the sake of completeness:

 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
 ...

It's just the last 6 nibbles but that's often all you need.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .