BIND DNS Server - Webmin Documentation
BIND DNS Server - Webmin Documentation
BIND DNS Server - Webmin Documentation
http://doxfer.webmin.com/Webmin/BIND_DNS_Server 1 / 16
BIND DNS Server - Webmin Documentation 3/24/2015
http://doxfer.webmin.com/Webmin/BIND_DNS_Server 2 / 16
BIND DNS Server - Webmin Documentation 3/24/2015
http://doxfer.webmin.com/Webmin/BIND_DNS_Server 3 / 16
BIND DNS Server - Webmin Documentation 3/24/2015
4. In the Name field, enter the name of the new record relative to the zone name. For example, if you wanted to
add the record www.example.com, you should just enter www. It is also possible to enter the full record name,
as long as it has a dot at the end to indicate that it is not relative to the zone. Do not enter just
www.example.com, as it will be converted to www.example.com.example.com, which is probably not what you
want.
5. If this record is going to change more frequently than the rest of the zone, change the Time-To-Live field from
Default to the estimated time between changes. This determines how long DNS clients and other servers will
cache the record for.
6. If you are adding an Address record, enter the complete IP address of the host into the Address field. See the
table below for a description of the fields that appear when adding other types of records and what they mean.
7. The field Update reverse? only appears when adding an Address record. It controls the automatic creation
of a corresponding record in a reverse zone which associates the hostname with the IP address. Naturally, this
can only be done if the IP that you enter is in a network that your system is the primary reverse DNS server for.
This keeps the forward and reverse zones synchronized, which can be very useful. If Yes is selected, a
reverse address record will be added as long as one does not already exist in the reverse zone for the same IP
address. Often many hostnames will have the same IP, such as those use for name-based virtual hosting. In
cases like these, you don't want to change the reverse mapping if one already exists. The *Yes (and replace
existing)* option works the same as Yes, but if a reverse record for the IP address already exists it will be
updated with the new hostname. This can be useful if you know there is an existing record that you want to
replace. If No is selected, no reverse address will be created even if it is possible.
8. When you are done filling in the form, click the Create button at the bottom. As long as it is filled in correctly,
the record will be added to the list below the form. When writing to the zone's records file, Webmin will use the
full canonical format for the record name, such as www.example.com., even if you just enter www.
9. To activate the new record so that it can be looked up by DNS clients and other servers, you will need to click
the Apply Changes button on the module's main page. If you are planning to add or edit several records, it is
usually better to wait until all the changes are complete before hitting the apply button. If it is available, you can
instead use the Apply Changes button at the bottom of the master zone page shown below. This uses the ndc
command to tell BIND to re-read only the file for this zone, which can be much faster on a system that hosts are
large number of domains.
http://doxfer.webmin.com/Webmin/BIND_DNS_Server 4 / 16
BIND DNS Server - Webmin Documentation 3/24/2015
http://doxfer.webmin.com/Webmin/BIND_DNS_Server 5 / 16
BIND DNS Server - Webmin Documentation 3/24/2015
Webmin will not let you use wildcards unless the Allow wildcards module configuration option is set to Yes
though, as explained in the *Configuring the BIND DNS Server module* section.
Host Information (HINFO)
Records of this type are used to record information about the hardware and operating system of a particular host.
For example, you might create one that says that server1.example.com is an x86 PC running Linux. However, they
are very rarely used and are in fact considered a security risk, as they give out information to potential attackers
that could be used to take over a server. When creating or editing a Host Information record, the fields Hardware
and Operating System are displayed for entering the architecture and operating system type of a host. The
values you enter must not contain any spaces - typically, they are replaced in the hardware type and operating
system strings with _ characters.
Text (TXT)
A Text record associates an arbitrary message of some kind with a name. Although they are hardly ever used,
they can be useful for attaching comments to hostnames. Be aware though that any such comments will be
available to anyone on the Internet that can look up records in your domain, and so should not contain sensitive
information. The field Message is displayed when entering or editing a Text record. You can enter any text that
you like, including spaces. </blockquote>
Well Known Service (WKS)
A record of this type associates a hostname, port and protocol with a name. It can be thought of as a generalized
variant of the Mail Server record, which tells clients which host provides a particular service for some domain or
hostname. However, almost no programs actually look up WKS records, so in practice they are pretty much
useless. When adding or editing one of these records, the fields Address, Protocol and Services are available.
The first is for entering the IP address of a host that provides the services for the host or domain entered into the
Name field. The second is for selecting the network protocol that the services use, either TCP or UDP. The last is
for entering a list of port numbers or names (from the /etc/services file) for services that the host provides.
Responsible Person (PR)
This type of record is used for specifying the person or group responsible for a particular host. Each of these
records has two values associated with it - an email address, and the name of Text record containing the person's
name. Responsible Person records are rarely seen, and are not used by any mail delivery program or Internet
client. The Email Address field shown when editing or adding one of these records is for entering the complete
address (like jcameron@example.com) of the person responsible for the host whose name is entered into the
Name field. The Text Record Name field is for entering the relative or canonical name of a Text record that
contains the person's real name.
Location (LOC)
Location records are used to specify the physical location in latitude and longitude of a host. They are hardly ever
seen, and thus not used by many programs. However, they can be useful in large organizations that have hosts in
many countries. When adding or editing a Location record, the field *Latitude and Longitude* is displayed for
entering the location of the host in the Name field. It must be formatted like _42 21 43.528 N 71 05 06.284 W
12.00m 30.00m 10000.00m 10.00m_.
Service Address (SRV)
Records of this type are used to associate a domain name, service name and protocol with a particular host. They
allow you to specify which server a client should contact for a particular service and hostname, instead of just
connecting to the host. In a way, they are like Mail Server records but far more flexible. For example, you can
specify that the POP3 server for example.com is mail.example.com, but the webserver is www.example.com. At the
time of writing, SRV records are mostly used by Windows client systems. When adding or editing a Service
Address record, the fields Protocol and Service name are displayed near the Name text box. For the protocol,
you must select either TCP or UDP from the menu. For the service name, you must enter a well-known name from
the /etc/services file, such as pop3 or telnet. To look up an SRV record, a client combines the service name,
protocol and name to get a record name like ___telnet.___tcp.example.com. Webmin does this for you
automatically when editing or adding a Service Address record, but you can see the combined name on the page
listing records of this type. Webmin also automatically added the _s before the service and protocol, but hides
them when a SRV record is being displayed or edited. This means that there is no need to enter then manually
when creating or editing a record of this type. The Priority field must be used to enter a numeric priority for this
server, which has the same meaning as the priority in a Mail Server record. The Weight field must contain a
weighing for this particular server, or zero if there is only one record with the same name, protocol and service
name. A higher weighting tells clients to try this server more often than one with a lower weight. The Port field
must contain a port number for clients to connect to on the server, which does not necessarily have to be the
standard port for the service. In the Server field, you must enter the hostname or IP address of the system that
actually provides the service, and that clients actually connect to.
The record types support by Webmin in reverse zones are:
Reverse Address (PTR)
A reverse address record associates a hostname with an IP address in a reverse zone. For DNS clients to be able
to lookup hostnames from IP addresses in your network, you will need to create one record of this type for each
host. However, most of the time this is done automatically by Webmin when adding and editing Address records. If
you create your own Reverse Address records, make sure that they are synchronized with the matching Address
records. When adding or editing a record of this type, the fields Address and Hostname are displayed. The first
is for entering a complete IP address, like 192.168.1.10. This will be automatically converted by Webmin to the in-
addr.arpa format used internally by the DNS system for reverse addresses. The second field is for entering a
hostname in canonical form, such as pc1.example.com., be sure to always put a dot at the end, or else the
hostname will be relative to the reverse zone, which is definitely not what you want.
Name Server (NS)
Name Server records in a reverse zone have an identical purpose to those in a forward domain - they tell other
DNS servers the IP address or hostname of a server responsible for the zone or a sub-domain. This means that
one must be added for each primary or secondary DNS server for the zone. The *Zone Name* field that appears
when adding or editing a record of this type is for entering the name of the zone that the server is responsible for,
which will typically be the zone that contains the record. However, unlike Reverse Address records this field is not
automatically converted to in-addr.arpa format. Instead, you must enter it in fully qualified form like 1.168.192.in-
addr.arpa. if defining an nameserver for the 192.168.1 network. In the *Name Server* field, you must enter an IP
http://doxfer.webmin.com/Webmin/BIND_DNS_Server 6 / 16
BIND DNS Server - Webmin Documentation 3/24/2015
address or canonical form hostname for the DNS server, such as ns1.example.com.. </blockquote>
Name Alias (CNAME)
Records of this type behave exactly the same in reverse zones as they do in forward domains. However, you must
fill in the Name and Real Name fields with reverse names in in-addr.arpa format, as Webmin will not convert them
for you. Name Alias fields are most useful in reverse zones for doing partial subnet delegation, as covered in the
*Partial reverse delegation* section below.
http://doxfer.webmin.com/Webmin/BIND_DNS_Server 7 / 16
BIND DNS Server - Webmin Documentation 3/24/2015
1. On the module's main page, click on the icon for the zone that you want to edit.
2. Click on the Delete Zone button at the bottom of the page.
3. When deleting a forward zone, the field *Delete reverse records in other zones?* controls whether matching
Reverse Address records in hosted reverse zones for all of the Address records in this one should be removed
as well. This is generally safe to set to Yes, as only records with the exact same IP address and hostname will
be deleted.
4. Similarly, when deleting a reverse zone the field *Delete forward records in other zones?* determines whether
matching forward records should be deleted too.
5. Once you have made your selection and are sure you want to go ahead with the deletion, click the Delete
button. The zone's entry in the named.conf file will be removed, and its records file deleted.
You can convert a master zone to a slave zone of the same name without needing to delete and re-create it. This can
be useful if the new server is taking over as the master for some domain, or if the master and secondary servers are
switching roles. The section on Editing a slave zone explains how to carry out the reverse action of converting a slave
zone to a master, which may be useful in this situation.
To convert a zone, the steps to follow are:
1. On the module's main page, click on the icon for the zone that you want to edit, then on the Edit Zone
Options icon.
2. When you click on the Convert to slave zone button, zone's entry in named.conf will be immediately
updated to convert it to a slave zone. The browser will then return to the module's main page.
3. Normally, every slave zone has a list of master server IP addresses that it can use to perform zone transfers
from. In the case of converted zones, this list will be initially empty unless the Default master server(s) for
slave zones module configuration option is set. Follow the instructions in the *Edit a slave zone* section to set
the master servers addresses correctly.
4. To activate the change, click on the Apply Changes button the module's main page.
http://doxfer.webmin.com/Webmin/BIND_DNS_Server 8 / 16
BIND DNS Server - Webmin Documentation 3/24/2015
http://doxfer.webmin.com/Webmin/BIND_DNS_Server 9 / 16
BIND DNS Server - Webmin Documentation 3/24/2015
http://doxfer.webmin.com/Webmin/BIND_DNS_Server 10 / 16
BIND DNS Server - Webmin Documentation 3/24/2015
http://doxfer.webmin.com/Webmin/BIND_DNS_Server 11 / 16
BIND DNS Server - Webmin Documentation 3/24/2015
6. When you are done adding template records, click the Save button at the bottom of the page. The changes
will apply to any new master zones created from now on.
Now that you have created a template, you can choose whether or not to use it for each new master zone that you
create. On the creation form (explained in the Creating a new master zone section) is a field labeled Use zone
template?, which is set to Yes by default if there are any template records. Next to it is a field named IP address for
template records, which used for entering the IP for records for which the From form option is selected. If you
chose to use a template and if there are any records that do not have an IP address specified, then this field must be
filled in.
The Zone Defaults page also contains several options that apply to all existing domains, but can all be set or
overridden on a per-zone basis as explained in the Editing a master zone section. You can control which clients are
allowed to query the server, and what kind of checking is done for the records of various domain types. Being able to
limit the allowed client hosts is particularly useful, so that you can stop non-internal clients using your DNS server.
However, you should make sure that master Internet zones hosted by your server are accessible to everyone, so that
other DNS servers on the Internet can look them up.
To change these global options, the steps to follow are:
1. On the module's main page, click on the Zone Defaults icon and scroll down to the *Default zone settings
*section.
2. To control which hosts are allowed to query your DNS server, change the Allow queries from field to Listed
and enter a list of IP addresses, IP networks (like 192.168.1.0/24) and ACL names into the text box below.
Clients that do not match any entry on the list will be denied, unless they are requesting a record in a zone
which has its own separate settings allowing them.
3. To control which hosts are allowed to perform zone transfers from your server, change the Allow transfers
from field to Listed and fill in the text box below with a list of IP addresses, IP networks and ACL names. Only
servers that are acting as secondaries for zones that this server hosts really need to be able to do transfers,
so it is usually a good idea to enter just their IP addresses. If you are restricting queries, this field must be filled
in so that hosts that cannot lookup records are not allowed to perform transfers either.
4. The fields Check names in master zones? and *Check names in slave zones?* control the checking of
records in all zone files for master and slave zones respectively. The available options for each are : *Warn *If
an invalid record is found, an error will be written to the system log file but processing of other records
continues normally. *Fail *Invalid records cause the entire zone to be rejected, but other zones will still be
processed normally. *Ignore *No checking is done at all. *Default *The default checking level is used, which is
Fail.
5. To have BIND check responses that it receives from other DNS servers, set the Check names in
responses? field to Warn or Fail. The default is simply to pass potentially erroneous responses on to clients.
6. The Notify slaves of changes? field determines whether BIND sends a notification to all slaves of master
zones hosted by this server when they change. To turn this on, select Yes - otherwise, select No or Default.
Enabling notification is a good idea, as it ensures that secondary servers are kept in sync with the master.
7. When done, click the Save button at the bottom of the page to update the BIND configuration file, and then the
*Apply Changes* button on the module's main page to make the changes active. The new settings will apply to
all zones that do not explicitly override them on their own options pages.
http://doxfer.webmin.com/Webmin/BIND_DNS_Server 12 / 16
BIND DNS Server - Webmin Documentation 3/24/2015
can speed up the process of transferring a large number of domains, but at the expense of putting a higher
load on the master server.
5. Click the Save button when you are done making changes, and then Apply Changes on the main page to
activate them. The new settings will apply to all subsequent zone transfers.
http://doxfer.webmin.com/Webmin/BIND_DNS_Server 13 / 16
BIND DNS Server - Webmin Documentation 3/24/2015
7. When you are done creating reverse records, click the *Apply Changes* button to make them active. You
should now be able to look them up using a command like nslookup on the server for the parent network zone.
The instructions above can be used to delegate multiple ranges from a single class C network to several different
DNS servers. There is no limit on the size of ranges, nor any requirement that they follow normal network block
boundaries - however, for routing reasons most IP allocation is done in power-of-two sized blocks (like 4, 8, 16 and so
on), which means that any sub-zone ranges will be the same size.
The only problem with reverse address delegation when using Webmin is that Reverse Address are not automatically
created and updated when Address records are. This means that you will have to create all such records manually on
the sub-zone server, as in the steps above.
One inconvenience in setting up partial reverse delegation is the number of similar Name Alias records that must be
created on the parent network zone server. Fortunately, there is a simpler alternative - record generators. A
generator is a special BIND configuration entry that creates multiple similar records using an incrementing counter.
This module allows you to created and edit generators, by following these steps :
1. On the module's main page, click on the icon for the reverse zone that you want to create records in. This will
typically be a class C network domain that is going to have a range of addresses delegated to some other
Server.
2. Click on the Record Generators icon. This takes you to a page containing a table of existing generators, with
a blank row for adding a new one.
3. In the empty row, select CNAME from the menu under the Type column.
4. Under the Range column, enter numbers for the start and end of the address range into the first two fields,
such as 100 and 110. The third field is for entering the gap between each step, and should be left blank. If you
were to enter 2, then the range would go 100, 102, 104 and so on.
5. In the Address pattern field, enter _$_ (a single dollar sign). When the records are created, the $ will be
replaced with the number of each record, which will in turn resolve to an IP address in the range. You could
also enter $.1.168.192.in-addr.arpa., which makes things more obvious but is longer to type.
6. In the Hostname pattern field, enter $.100-110. Similarly, the $ will be replace with the number of each
record, which will resolve to something like 101.100-110. 1.168.192.in-addr.arpa..
7. If you like, enter a comment that describes what this generator is for into the Comment field.
8. Click the Save button, return to the module's main page and click on Apply Changes.
A generator can replace the Name Alias records that the first set of instructions in this section tell you to create, so
there is no need for them anymore. Note that the automatically generated replacements will not be visible or editable
in the normal way, only through the Record Generators page.
http://doxfer.webmin.com/Webmin/BIND_DNS_Server 14 / 16
BIND DNS Server - Webmin Documentation 3/24/2015
When one or more views have been defined on your system, you can choose which one to use when adding new
zones. This is done using the Create in view field on the master, slave, forward and root zone creation forms, which
allows you to select a view from its menu. Naturally, there is no option for creating a zone outside of any views as this
is not allowed by BIND.
One common use of views is hiding internal zones from clients outside your internal network. This is a good way of
hiding the structure of your network and the hosts on it from potential attackers. To set it up, the steps to follow are:
1. Create a new view called internal that matches clients on your internal LAN.
2. Create a second view called everyone that matches all clients.
3. Move any zones that are for internal use only into the internal view. Zones for Internet domains such as
example.com must not be put in this view, as that would make them inaccessible to the rest of the world.
4. Move all other zones (including the root zone) to the everyone view.
Views can also be used to prevent clients outside your network looking up non-hosted domains on your server, as
follows:
1. Create a new view called internal that matches clients on your internal LAN.
2. Create a second view called everyone that matches all clients.
3. Move the root zone to the internal view, which will prevent the server from looking up records for non-local
clients that require contact with the root servers.
4. Move all other zones to the everyone view.
http://doxfer.webmin.com/Webmin/BIND_DNS_Server 15 / 16
BIND DNS Server - Webmin Documentation 3/24/2015
Category: Bind
http://doxfer.webmin.com/Webmin/BIND_DNS_Server 16 / 16