13,420
edits
Changes
no edit summary
==Overview==
* In this lab, you will learn how to setup, and run a DHCP server on your fedora3 machine, and then test-out the DHCP server by setting up your other VMs to receive an IP addresses from the DHCP server.
== Objectives ==
* To install, configure, and test ISC's DHCP Server.* To obtain log information from DHCP server including lease address information.* To lease the same IP address every-time from VM boot-up (instead of having DHCP server randomly assign IP address). ==Required Materials (Bring to All Labs)== * Fedora 17 LIVE CD* Fedora 17 x86_64 Installation DVD* SATA Hard Disk (in removable disk tray)* USB Memory Stick* Lab Logbook ==Prerequisites== * Completion and Instructor "Sign-off" of Lab 7: [[OPS235 Lab 7]] ==Linux Command Online Reference==Each Link below displays online manpages for each command (via [http://linuxmanpages.com/ http://linuxmanpages.com]): {|width="100%" cellpadding="5" width="50%"|'''Networking Utilities:'''|'''Additional Utilities:'''|'''Configuration Files:'''|- valign="top"| *[http://linuxmanpages.com/man8/dhcpd.8.php dhcpd]*[http://linuxmanpages.com/man8/ifconfig.8.php ifconfig]|*[http://www.linuxcertif.com/man/1/systemctl/ systemctl]*[http://linuxmanpages.com/man1/tail.1.php tail]|*[http://linuxmanpages.com/man5/dhcpd.conf.5.php dhcpd.conf]*[http://linuxmanpages.com/man5/dhcp-options.5.php dhcpd-options]*[http://linuxmanpages.com/man5/dhcpd.leases.5.php dhcpd.leases]|}
== Reference Resources on the web==* [httpAdditional links to tutorials and HOWTOs://linuxmanpages.com/ man pages] for dhcpd, dhcpd.conf, dhcpd.leases, dhcp-options, dhclient, dhclient-conf
* [http://docs.fedoraproject.org/deployment-guide/f12/en-US/html/s1-dhcp-configuring-server.html Fedora DHCP Configuration Guide]
* [http://www.isc.org/software/dhcp Internet Software Consortium DHCP page]
== Install and Configure a DHCP Server == === Lab Preparation ===
{{Admon/important | Update your systems | It is advisable to perform a <code>yum update</code> on your Fedora host and all 3 VM's.}}
{{Admon/important | Backup your VMs before proceeding | If you did not do it at the end of Lab 7, stop all of your VMs and backup your VM disk images.}}
{{Admon/note |ISC DHCP packages Overview | The version of DHCP server (rpm package name called "'''dhcp-4.1.1-9.fc12fc16.x86_64" ''' ) that comes with Fedora is maintained and distributed by the Internet Software Consortium (http://www.isc.org). The source package that you can download from ISC includes not only the DHCP server, but also a DHCP client and a DHCP relay agent. However, Fedora separates it into two RPM packages: the DHCP client package called "'''dhclient-4.1.1-9.fc12fc16.x86_64" ''' and the DHCP server package called "'''dhcp-4.1.1-9.fc12fc16.x86_64"'''. The DHCP client package is installed by default by the workstation installation.}}
# To check that you have <code>dhclient</code> installed, enter the command:
<li>What file appears to be a sample configuration file?</li>
<li>Copy the sample <code>dhcpd.conf</code> file to the <code>/etc/dhcp</code> directory making sure it is named <code>/etc/dhcp/dhcpd.conf</code></li>
</ol>
'''Answer the Investigation 1 observations / questions in your lab log book.'''
=== Investigation 2: What configuration options and directives need to be set in dhcpd.conf?===
{{Admon/note | Note! Use your fedora3 VM | Complete the following steps on your fedora3 VM.}} # Study the man pages of <code>dhcpd</code>, <code>dhcpd.conf</code>, <code>dhcp-options</code>, and <code>dhcpd.leases</code> and make notes in your log book. In particular, look up the meaning and possible value(s), if any, for the following configuration options:::* <code>broadcast-address</code>::* <code>default-lease-time</code>::* <code>max-lease-time</code> (How is this different from <code>default-lease-time</code>?)::* <code>domain-name</code>::* <code>domain-name-servers</code>::* <code>fixed-address</code>::* <code>group</code>::* <code>hardware</code>::* <code>host</code>::* <code>host-name</code>::* <code>range</code>::* <code>routers</code>::* <code>subnet</code>::* <code>subnet-mask</code><ol><li value="2"> Study the sample <code>dhcpd.conf</code> file to see examples of how these options are used.</li></ol>
'''Answer the Investigation 2 observations / questions in your lab log book.'''
=== Investigation 3: How do I configure dhcpd settings to be applied to all subnets?===
{{Admon/note | Note! Use your fedora3 VM | Complete the following steps on your fedora3 VM.}}
=== Investigation 4: How do I configure dhcpd to provide IP configuration to my virtual network?===
{{Admon/note | Note! Use your fedora3 VM | Complete the following steps on your fedora3 VM.}}
{{Admon/tip | Troubleshooting Tip: | Troubleshooting produces the best results when you are methodical in your approach. Try to fix the first error mentioned before fixing subsequent errors. Often the first error may cause multiple error messages as the configuration file is parsed. When you think you have fixed the first error try to start your service and if it fails check the log again. Fix one error at a time.}}
=== Investigation 5: How do I test my dhcpd service on my virtual network?===
Mar 24 13:28:24 fedora3 dhcpd: DHCPDISCOVER from 52:54:00:61:00:e7 via eth2
Mar 24 13:28:25 fedora3 dhcpd: DHCPOFFER on 192.168.235.51 to 52:54:00:61:00:e7 via eth2
Mar 24 13:28:25 fedora3 dhcpd: DHCPACK on 192.168.235.51 to 52:54:00:61:00:e7 via eth2
</pre>
{{Admon/note | Note! Identifying DHCP Lease Transaction Information | These messages record the DHCP lease transaction that consists of 4 broadcast packets, DISCOVER, OFFER, REQUEST and ACKNOWLEDGE. Try researching on the internet how this transaction differs from a DHCP lease renewal.}}* <ol><li value="5">On fedora2 , confirm the IP address assignment using <code>ifconfig</code></li>* </ol> '''Answer the Investigation 5 question observations / questions in your lab log book.''' == Obtaining Lease Information & Lease Permanent IP Address ==
=== Investigation 6: Where does the dhcp server store a record of leased addresses?===
<pre>
lease 192.168.235.51 {
}
</pre>
{{Admon/note | Note! Purpose of <code>dhcpd.leases</code> File | dhcpd records address leases in this file. If the service is restarted it reads in the file to know which addresses are currently leased and for how long.}}* <ol><li value="3">On the client fedora2 check the contents of the<code>/var/lib/dhclient</code> directory. The files in this directory is where the dhclient stores its record of leases.</li></ol>* '''Answer the Investigation 6 question observations / questions in your lab log book.'''
=== Investigation 7: How can I lease the same address every time? ===
{{Admon/note | Note! Use your fedora2 and fedora3 VMs | Complete the following steps on your fedora2 and fedora3 VM's.}} {{Admon/note | Reserving IP Addresses with DHCP | Even though DHCP gives out IP address dynamically, it also has the ability to reserve an IP address for a certain computer. In this sense it's almost as if the client computer has a static IP even though it uses DHCP to get it. This is useful if you want to be able to put entries in your /etc/hosts file and not have to worry about the entry becoming invalid over time. In Linux we refer to this as supplying a fixed address to a host. Microsoft calls it a reservation.}} # Make certain that you are located in your fedora3 virtual machine.# Create a host declaration for fedora2. Make sure you record the correct <code>hardware ethernet</code> setting that corresponds to the MAC address of the interface in fedora2.# Give it the fixed-address 192.168.235.12{{Admon/tip | Avoiding IP Address Conflicts | When supplying fixed-address it is important that the address assigned is exclusive of any ranges that have been declared. Otherwise it may be possible for 2 different hosts to receive the same address.}}<ol><li value="3">Start your service and test the address assignment by releasing your current address on fedora2 and then requesting a new address. Use the following commands on fedora2:</li></ol>::: <code>ifdown eth1</code>::: <code>ifup eth1</code><ol><li value="4">Confirm that you received the fixed address you were supposed to.</li></ol>
== Completing the lab ==
* DHCP client lease file
== Preparing for the Quizzes ==