Difference between Recursion Desired[RD] and Recursion Available[RA] fields

What is the Difference between the Recursion Desired and Recursion Available fields in a DNS Response Message?

Are the clients aware that Recursion is supported on a Remote DNS Server?


In the response, the Recursion Desired bit is set to whatever the client set it to. It isn't really relevant in the response, it is the Available flag that is important.

So the client will set the Recursion Desired bit, and send out the query, and will not be aware whether recursion is available or not until the response comes back. If the Available bit is set, then recursion is available, otherwise it isn't.

Client generally set Recursion Desired by default, so will be aware of the availability after the first request.