I'm probably not explaining myself well so I'll give an example. In the setup
above, let's say you've set 127.0.1.1 to be your local DNS server, meaning
that you might expect the following commands to work:
$ dig mysite.localhost
mysite.localhost IN A 127.0.0.1
$ dig myothersite.localhost
myothersite.localhost IN A 127.200.200.200
But, under this proposal wouldn't dig be obliged to refuse to forward the
request onto 127.0.1.1? How does dig (or your browser or any other resolving
API) know the difference between a bog standard caching DNS server and a
local DNS server that has explicitly been set up to route local lookups?
I don't see why. You're allowed to use common sense when interpreting
RFCs, and the message here is clearly that if you want to interoperate you
do not send queries for *.localhost out of your computer. The twisty way
my or your internal DNS setup works is out of scope.
Regards,
John Levine, johnl@xxxxxxxxx, Taughannock Networks, Trumansburg NY
Please consider the environment before reading this e-mail. https://jl.ly