Folks -
I just finished another fun little protocol implementation. DnsClient is a client for DNS lookups of all sorts. Why implement the DNS protocol you ask? Well, because 1) it's fun, 2) it's educational, and 3) it's non-blocking. The latter is actually interesting, we've found that occasionally we get very long VM blocking due to synchronous name lookup performed in the Unix socket code.
You can install DnsClient from Squeaksource:
(Installer ss project: 'ar') install: 'DnsClient-Core'; "all the code" install: 'DnsClient-Tests'; "the tests" install: 'DnsClient-Hacks'. "use DnsClient when present"
DnsClient should work well but beware that on Windows it will currently use the deefault fallback name servers (Google DNS and OpenDNS) since I still need to implement the primitive to return the proper resolv.conf content (which is spread out in the Windows registry). Consequently, if you're trying look up local names or if you are behind a firewall, these addresses will fail until I've implemented the primitive proper.
Cheers, - Andreas