127.0.0.1 requirement when using BIND DNS Server

Hi,

We have noticed that it is a requirement that in /etc/resolv.conf 127.0.0.1 is listed as DNS server when using a local installed BIND DNS Server. May I ask why this is? It is bad practice to use a master DNS server as a resolving nameserver. A small example which a reasonable number our customers experiences.

They accidentally setup a new domain with "Setup DNS zone?" without hosting the actual DNS domain on the server. What happens is that when they, for example, use a mailform on their website which mails the forms to the given DNS domain, the mail will be delivered locally instead of being mailed to the right mailserver.

When you remove 127.0.0.1 from the revolv.conf file, this will not happen because the right DNS server always will be used.

Can this requirement be dropped in the next release?

Status: 
Closed (fixed)

Comments

Well, typically in this case, we'd suggest disabling the BIND DNS Domain feature in Edit Virtual Server -> Enabled Features.

That way, the server is setup with it's own DNS server, and with that feature unchecked, wouldn't host a DNS zone file for a domain not using one.

Would that solve your issue?

The problem is that te server isn't supposed to be resolving nameserver. I don't understand why this is a requirement. If you at least get the option to turn it of without Virtualmin bugging about it, but that isn't sadly enough.

Technically, it isn't necessary either? If a local script uses a domain name hosted on the server itself, it will get there eventually.

You can also disable this check at System Settings -> Virtualmin Configuration -> Advanced options -> Check resolv.conf for this system?.

The reason it exists is to make sure the Virtualmin system can resolve its own hosted domain names. Otherwise if you were to create example.com but not register it and your system was using a remote resolver, it might be unable to lookup www.example.com .

Not applicable anymore.