- (DHCP) Dynamic Host Configuration Protocol automatically assigns IP addresses and other network configuration information (subnetmask, broadcast address, etc) to computers on a network. A client configured for DHCP will send out a broadcast request to the DHCP server requesting an address. The DHCP server will then issue a "lease" and assign it to that client. The time period of a valid lease can be specified on the server. DHCP reduces the amount of time required to configure clients and allows one to move a computer to various networks and be configured with the appropriate IP address, gateway and subnet mask. For ISP's it conserves the limited number of IP addresses it may use. DHCP servers may assign a "static" IP address to specified hardware. Microsoft NetBios information is often included in the network information sent by the DHCP server.
- DHCP assignment:
- Lease Request: Client broadcasts request to DHCP server with a source address of 0.0.0.0 and a destination address of 255.255.255.255. The request includes the MAC address which is used to direct the reply.
- IP lease offer: DHCP server replies with an IP address, subnet mask, network gateway, name of the domain, name servers, duration of the lease and the IP address of the DHCP server.
- Lease Selection: Client recieves offer and broadcasts to al DHCP servers that will accept given offer so that other DHCP server need not make an offer.
- The DHCP server then sends an ack to the client. The client is configured to use TCP/IP.
- Lease Renewal: When half of the lease time has expired, the client will issue a new request to the DHCP server.
DHCP server installation:- Red Hat/CentOS/Fedora: rpm -ivh dhcp-x.xxx.elx.i386.rpm
- Ubuntu/Debian 8: apt-get install dhcp3-server
( Later releases of Ubuntu (11.04) used the busybox release known as udhcpd and the configuration is NOT shown here)
Starting DHCP server:- Red Hat/CentOS/Fedora: service dhcpd start
(or /etc/rc.d/init.d/dhcpd start for Red Hat, Fedora and CentOS Linux distributions) - Ubuntu/Debian: /etc/init.d/networking restart
Sample DHCP server config file: (DHCP v3.0.1)- Red Hat/CentOS/Fedora: /etc/dhcpd.conf
(See /usr/share/doc/dhcp-3.X/dhcp.conf.sample)
[Potential Pitfall]: Its /etc/dhcpd.conf NOT /etc/dhcp.conf !! - Ubuntu/Debian: /etc/default/dhcp3-server
-
01
ddns-update-style interim;
# Required for dhcp 3.0+ / Red Hat 8.0+
02
ignore client-updates;
03
04
subnet 192.168.1.0 netmask 255.255.255.0 {
05
06
range 192.168.1.128 192.168.1.254;
# Range of IP addresses to be issued to DHCP clients
07
option subnet-mask 255.255.255.0;
# Default subnet mask to be used by DHCP clients
08
option broadcast-address 192.168.1.255;
# Default broadcastaddress to be used by DHCP clients
09
option routers 192.168.1.1;
# Default gateway to be used by DHCP clients
10
option domain-name
"your-domain.org"
;
11
option domain-name-servers 40.175.42.254, 40.175.42.253;
# Default DNS to be used by DHCP clients
12
option netbios-name-servers 192.168.1.100;
# Specify a WINS server for MS/Windows clients.
13
# (Optional. Specify if used on your network)
14
15
# DHCP requests are not forwarded. Applies when there is more than one ethernet device and forwarding is configured.
16
# option ipforwarding off;
17
18
default-lease-
time
21600;
# Amount of time in seconds that a client may keep the IP address
19
max-lease-
time
43200;
20
21
option
time
-offset -18000;
# Eastern Standard Time
22
# option ntp-servers 192.168.1.1; # Default NTP server to be used by DHCP clients
23
# option netbios-name-servers 192.168.1.1;
24
# --- Selects point-to-point node (default is hybrid). Don't change this unless you understand Netbios very well
25
# option netbios-node-type 2;
26
27
# We want the nameserver "ns2" to appear at a fixed address.
28
# Name server with this specified MAC address will recieve this IP.
29
30
host ns2 {
31
next-server ns2.your-domain.com;
32
hardware ethernet 00:02:c3:d0:e5:83;
33
fixed-address 40.175.42.254;
34
}
35
36
# Laser printer obtains IP address via DHCP. This assures that the
37
# printer with this MAC address will get this IP address every time.
38
39
host laser-printer-lex1 {
40
hardware ethernet 08:00:2b:4c:a3:82;
41
fixed-address 192.168.1.120;
42
}
43
}
(Other distributions may use: /usr/sbin/dhcpd -f)
can be obtained with the command /sbin/ifconfig:-
eth0 Link encap:Ethernet HWaddr 00:02:C3:D0:E5:83
inet addr:40.175.42.254 Bcast:40.175.42.255 Mask:255.255.255.0
inet6 addr: fe80::202:b3ff:fef0:e484/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:4070 errors:0 dropped:0 overruns:0 frame:0
TX packets:3878 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:3406445 (3.2 MiB) TX bytes:439612 (429.3 KiB)
-
lease 192.168.1.128 {
starts 2 2004/12/01 20:07:05;
ends 3 2004/12/02 08:07:05;
hardware ethernet 00:00:e8:4a:2c:5c;
uid 01:00:00:e8:4c:5d:31;
client-hostname "Node1";
}
Options:- ddns-update-style:
- interim: allows your DHCP server to update a DNS server whenever it hands out a lease. Allows your DNS server to know which IP addresses are associated with which computers in your network. Requires that your DNS server support DDNS (Dynamic DNS).
- none: to disable dynamic DNS updates or DNS is not supporting DDNS.
- ad-hoc: been deprecated and shouldn't be used
- Default options (Red Hat/CentOS/Fedora) are set in /etc/sysconfig/dhcpd
Look for errors in /var/log/messages
See dhcp-options man page below.
DHCP man pages: |
-
- dhcpcd: DHCP client daemon
- /etc/dhcpc:
- /etc/dhcpc/dhcpcd-<interface>.info: dhcpcd stores host information in this file. (interface=eth0 or eth1,...)
- /etc/dhcpc/dhcpcd-<interface>.cache: Cache file containing the previously assigned IP address.
- dhcpd: Dynamic Host Configuration Protocol Server daemon
- dhcpd.conf: dhcpd configuration file
- dhcpd.leases: dhcpd DHCP client lease database
- dhcp-options: dhcpd Dynamic Host Configuration Protocol options
- dhcrelay: bootp relay agent. One DHCP server to service multiple network segments.
- omshell: OMAPI Command Shell - an interactive way to connect to, query, and change, the ISC DHCP Server’s state via OMAPI. One can make the changes while the server is running.
- pump: configure network interface via BOOTP or DHCP protocol
Note: DHCP client will overwrite your /etc/resolv.conf file with new information recieved from the DHCP server.
Red more :
Configuring Your Laptop to Use DHCP
- dhcpcd: DHCP client daemon
No comments:
Post a Comment