0

If a DNS query gets lost along the way to its destination, is nothing done about it? In my networking class, my lecturer said that DNS runs on UDP. I verified this in Wireshark by doing nslookup for a domain and examining the transport layer protocol. It was UDP. I know that UDP is unreliable and makes "best effort" delivery. It does not send Acknowledgements for received packets and does nothing about corrupted or dropped packets. I also know that reliability can be implemented at the application layer, but we never discussed much on that. So back to the query, is nothing done about a lost DNS query? Any help would be appreciated.

closed as off-topic by Ricky Beam, Teun Vink Jan 10 at 6:36

This question appears to be off-topic. The users who voted to close gave this specific reason:

  • "NE is a site for to ask and provide answers about professionally managed networks in a business environment. Your question falls outside the areas our community decided are on topic. Please visit the help center for more details. If you disagree with this closure, please ask on Network Engineering Meta." – Ricky Beam, Teun Vink
If this question can be reworded to fit the rules in the help center, please edit the question.

  • It really depends on the DNS client implementation. if the packet is lost, the client can't know this and will generally assume the query is simply unanswered. All requests have a timeout. (windows nslookup waits 2s) – Ricky Beam Jan 10 at 5:51
0

From the network side, a lost DNS-over-UDP request is just lost. The client may try again but that is the application side.

DNS can also use TCP, although this is uncommon for a normal client request. A lost DNS-over-TCP request is automatically retransmitted by the TCP protocol until it has been ACKed by the the server (after multiple unsuccessful transmissions the socket times out). Even over TCP, the request can theoretically be "lost" - time out on the client while the server is still trying to resolve.

Not the answer you're looking for? Browse other questions tagged or ask your own question.