add support for dns

@cjellick 
use set() not sets.Set(). I'll put this in all the PRs for tracking purposes