This class can be used to implement domain name servers (DNS). It starts listening to DNS UDP port 53 to handle domain name resolution requests. The class decodes the DNS request, invokes a configurable callback function that takes the DNS query type and the domain to resolve and returns response IP address.