【原理分析】
DHCP的分配方式:
在DHCP的工作原理中,DHCP服务器提供了三种IP分配方式:自动分配(Automatic allocation)、手动分配和动态分配(Dynamic Allocation)。
自动分配:当DHCP客户机第一次成功的从DHCP服务器获取一个IP地址后,就永久的使用这个IP地址。
手动分配:由DHCP服务器管理员专门指定的IP地址
动态分配:当客户机第一次从DHCP服务器获取到IP地址后,并非永久使用该地址,每次使用完后,DHCP客户机就需要释放这个IP,供其他客户机使用。
DHCP的租约过程:
客户机从DHCP服务器获得IP地址的过程叫做DHCP的租约过程。
租约过程分为四个步骤,分别为:客户机请求IP(客户机发 DHCP Discover 广播包)、服务器响应(服务器发DHCP Offer广播包)、客户机选择IP(客户机发DHCP Request 广播包)、服务器确定租约(服务器发DHCP ACK广播包)。
【案例分析】
案例一:
实验目的:理解DHCP的地址绑定。
适用场合:当内网中存在服务器集群时,需要对服务器的主 机MAC地址和IP进行绑定。
配置样例:(假设内网中存在一个FTP服务器)
subnet 192.168.30.0 netmask 255.255.255.0 {
# --- default gateway
option routers 192.168.30.254;
option subnet-mask 255.255.255.0;
option nis-domain "server.com";
option domain-name "server.com";
option domain-name-servers 222.88.88.88;
option time-offset -18000; # Eastern
range dynamic-bootp 192.168.30.2 192.168.30.253;
default-lease-time 21600;
max-lease-time 43200;
# we want the nameserver to appear at a fixed address
host ftp {
hardware ethernet 00:0C:29:F4:C6:5A;
fixed-address 192.168.30.1;
}
}
案例二:
实验目的:理解DHCP超级作用域的概念。
适用场合:当单个局域内的主机较多,而且可分配地址范围有限,需要多个作用域以满足地址分配。需要将多个作用域放在一个超级作用域内。
配置样例:
Shared-network XXcompany{
subnet 192.168.10.0 netmask 255.255.255.0 {
option routers 192.168.10.254;
option subnet-mask 255.255.255.0;
option domain-name "tec.com";
range dynamic-bootp 192.168.10.2 192.168.10.253;
default-lease-time 21600;
max-lease-time 43200;
}
subnet 192.168.20.0 netmask 255.255.255.0 {
option routers 192.168.20.254;
option subnet-mask 255.255.255.0;
option domain-name "mkt.com";
range dynamic-bootp 192.168.20.2 192.168.20.253;
default-lease-time 21600;
max-lease-time 43200;
}
}
案例三:
实验目的:理解DHCP多作用域的概念。
实验拓扑:
设备需求:
路由器(一台):Linux Red Hat 5.4系统启用路由功能。
VMware虚拟机(Eth0,Eth1,Eth2三网卡)
DHCP服务器(一台):Linux 5.4安装DHCP服务。
PC测试机(两台):Windows Server 2003 虚拟机
具体步骤:
【DHCP服务器配置】
①挂载光盘镜像,安装DHCP服务。
②配置DHCP服务器的控制脚本。
③配置DHCP服务器的网卡参数。
④启动DHCP服务。
【Router配置】
①开启系统路由功能。
②挂载光盘镜像,安装DHCP服务。
③配置DHCP中继。(编辑dhcrelay控制脚本)
④启动DHCP中继服务。
【测试过程】
Vlan10测试:
日志监控
主机地址
Vlan20测试:
日志监控
主机地址
案例四:
实验目的:将客户机按照某种属性分类,根据不同的属性类分配不同的地址范围。
配置样例:
ddns-update-style interim;
ignore client-updates;
subnet 192.168.10.0 network 255.255.255.0 {
class "microsoft" {
match if substring (option vendor-class-identifier,0,4) = "MSFT";
option routers 192.168.30.254;
option domain-name-servers 1.1.1.1;
}
class "vm" {
match if substring (hardware,1,3) = 00:0c:29;
option routers 192.168.30.253;
option domain-name-servers 2.2.2.2;
}
pool {
allow members of "microsoft";( deny members of "vm";)
range dynamic-bootp 192.168.30.2 192.168.30.100;
}
pool {
allow members of "vm";
range dynamic-bootp 192.168.30.200 192.168.30.252;}
}
}
转载于:https://blog.51cto.com/tywangpanpan/1167611