This belongs on netbsd-users until there is a reason to thing there is something broken. Arp resolution is triggered by a 'cloning route', which is what you get when you configure a prefix on an ethernet. 23.23.23.0 link#3 U 23.23.23.23 21.21.21.21 UG Use "netstat -nr -f inet" instead of route show - the latter seems to do way too much processing and you really want to see the raw table. In particular the C flag is missing. It's basically wrong to expect NetBSD to arp when sending a packet other than on the subnet configured with that prefix using a cloning route. ARP is triggered by a packet hitting the cloning route. I would suggest that you read the kernel code surrounding MSG_DONTROUTE. Probably you should just manually add arp entries.
Attachment:
pgpA2o5V8ymDC.pgp
Description: PGP signature