How do you display the IPv6 NDISC cache in Linux?

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.