932
edits
Changes
Updating for Winter 2014 semester. Moved DNS service to VM 1.
[[Category:OPS335]][[Category:OPS335 Labs]]
==Domain Name System==
===Objectives===In this lab you will configure a Linux host machine to be a DNS server for the rest of the machines in your intranet. You'll use your learn ID as your domain with IP addresses in the range 192.168.X.1 - 192.168.X.254. The server will handle all queries for names in the <learnid>.org domain and all reverse lookups for addresses in the given range of local IP numbers. The server will pass DNS queries for other names and addresses out to the Internet (i.e. to Seneca's DNS server).
===Instructions===
Prior to beginning this lab ensure that the iptables rules you created for your virtual machines in lab 2 are loading when they boot. If they are not, repair them now. You will be building on those rules for the rest of the course, however you may remove . Remove the rules that are preventing your host from using ssh'ing and ping to contact your VMs.
You're going to populate your server with the following records:
Fully Qualified Domain Name IP Address
vm01.<learnid>.org 192.168.X.2
vm02.<learnid>.org 192.168.X.3
===Perform these steps on your gateway/firewall/DNS machine===
*Start up your host machine, open a terminal window and "su -" to root. This PC will be named "f17host". It will be your gateway/firewall as well as the domain name server for your intranet.
*Ensure you are connected to the Internet. Use Firefox to authenticate yourself so you can surf the web outside of the Seneca domain.
*Use yum to update your system if necessary.
yum update
*If you have not already done so, permanently set the host name of the 'host' machine to "host.<learnid>.org" (without the < and >, they are just there to tell you put your learnid there instead of the literal word learnid). *Start your VM 1. This machine will be the domain name server for your intranet.*On the VM**Use yum to update your system if necessary. yum update**Use yum to install the DNS server.
yum install bind
===Edit /etc/named.conf===
*Create Still on the virtual machine create a back up of the existing '/etc/named.conf', delete the existing contents and add the following: But use your own X value where applicable.
options {
directory "/var/named/";
$TTL 3D
@ IN SOA f17host.<learnid>.org. <learnid>webmaster.<learnid>.org.(
1 ; Serial
8H ; Refresh
1D ; Negative Cache TTL
);
@ IN NS f17vm01.<learnid>.org. f17 host IN A 192.168.X.1
vm01 IN A 192.168.X.2
vm02 IN A 192.168.X.3
$TTL 3D
@ IN SOA f17vm01.<learnid>.org. <learnid>webmaster.<learnid>.org. (
1 ; Serial
8H ; Refresh
1D ; Negative Cache TTL
);
@ IN NS f17vm01.<learnid>.org. 1 IN PTR f17host.<learnid>.org.
2 IN PTR vm01.<learnid>.org.
3 IN PTR vm02.<learnid>.org.
*Now set up your resolver to point to itself. Edit /etc/resolv.conf, delete what's there and enter this data instead. Remember to use your value for X.
nameserver 192.168.X.12
search <learnid>.org
*When starting or restarting your name server view the log file (/var/log/messages) to ensure it started without error.
*Try a few lookups:
host f17host.<learnid>.org
host vm01.<learnid>.org
host vm02.<learnid>.org
host 192.168.X.4
===DNS client configuration===*Perform the following steps on your Centos host.**On this machine edit Edit the /etc/resolv.conf file and enter the following: nameserver 192.168.X.12
domain <learnid>.org
**Now try the commands host f17host.<learnid>.org
host vm01.<learnid>.org
host vm02.<learnid>.org
host vm03.<learnid>.org
host yahoo.ca
**And the commands
host 192.168.X.1
host 192.168.X.2
host 192.168.X.3
host 192.168.X.4
*On all machines in your network, experiment with the following commands. Be sure to use several different command options to learn and understand how they work.
host
dig
{{Admon/important| This final step is important. | Failure to complete this will cause problems with future labs.}}
*Finally, configure each machine to use a static IP address and hostname that matches what the DNS server now claims it usesthey use. Double check that this address, and the ability to search using your DNS server, persist after reboot.*Add On each machine add the entry to your interface configuration file that will cause it to permanently use your host VM 1 as its primary DNS server.
*If you have made any changes to the /etc/hosts file, undo them. Your machines must be relying on your DNS server.
*Ensure that your machines can ping and SSH to each other by IP address and by name (hostname only, and hostname with domain).
==Completing the Lab==
Upon completion of this lab you should have a DNS server in your network. Ensure that the service starts automatically when the VM boots and that your other machines are able to use it to resolve internal and external hostnames and ip addresses. Due to the changes made in this lab, you will now need your VM 1 running in order for you host to be able to contact any other machines.
Answer the following questions in your lab book:
#What iptables rules apply to DNS?
#Under what circumstances does DNS use TCP vs UDP?
#What is the purpose of /etc/resolv.conf?
#What is meant by the term "negative cache"?
#What are MX records used for? Add the needed entry to point the MX record to VM02.
#What security features are available for DNS?