You should look at the actual routes in the kernel on FreeBSD, with route -n monitor, and understand all the flags and sockaddrs. Please also send the result of 'netstat -nr' on FreeBSD. As David suggests, you may need a /32 cloning route. Sorry, but you are basically doing something that does not conform to Internet standards, and that will probably require some code reading. I think we'd be inclined to take a change that enables doing this (assuming it doesn't break other things), and it's quite possible that kernel code changes will be required. I would also suggest looking through the history of FreeBSD to see if they made an explicit change to support this multiple-/32-on-a-wire case.
Attachment:
pgptUptiuJd7Y.pgp
Description: PGP signature