2011/7/30 Jeremy Evans <merch-redmine / jeremyevans.net>:

>  16:28:55.962400 fe80::92fb:a6ff:feed:afa1.10000 > fe80::92fb:a6ff:feed:afa1.23171: [udp sum ok] udp 3 (len 11, hlim 64)
>  tcpdump: WARNING: compensating for unaligned libpcap packets
>  16:28:55.962407 fe80::1 > fe80::92fb:a6ff:feed:afa1: icmp6: fe80::92fb:a6ff:feed:afa1 unreachable address (len 59, hlim 64)
>
> Note how the response is not a UDP packet but an ICMP packet with an fe80::1 source address saying the response is unreachable.  This is why the program times out, no UDP response is received.
>
> So maybe there is a bug here, but OpenBSD supports the desired feature without the pktinfo argument in the sendmsg call.  If the pktinfo argument iseeded on other systems to work correctly, would you support a patch that adds the pktinfo argument to the sendmsg call unless /openbsd/ =~ RUBY_PLATFORM ?

It is possible if OpenBSD doesn't support dynamic IP change here.
(pktinfo is required for dynamic IP change.)

However I'd like to confirm it is really a bug of OpenBSD.

I think the best way to do is a bug repot to OpenBSD.
We need a test program written in C for good bug report, though.
-- 
Tanaka Akira