> Ah, that is what I feared.  I guess the answer is to write
> a ruby extension linked to a non blocking resolver such
> as: http://limbo.ime.usp.br/qmail/cr.yp.to/dnscache/dns.html
> or http://www.chiark.greenend.org.uk/~ian/adns/

Or perhaps write it in straight ruby... looks like perl
has an async resolver written in perl:
http://www.fuhr.org/~mfuhr/perldns/