DHCP原理与配置

目录

一:DHCP工作原理

1.1:了解DHCP服务

1.2:使用DHCP的好处

1.3:DHCP的分配方式

1.4:DHCP的租约过程 

二:使用DHCP动态配置主机地址

2.1:配置DHCP服务器

2.1.1:安装 DHCP 服务器软件

2.1.2:建立主配置文件dhcpd.conf

2.1.3:启动dhcpd服务

2.2:使用DHCP客户端

 2.3:DHCP中继

2.3.1:DHCP中继原理

2.3.2:DHCP中继配置


一:DHCP工作原理

1.1:了解DHCP服务

DHCP Dynamic Host Configuration Protocol, 动态主机配置协议)是由 Internet 工作任务小组设计开发的,专门用于为 TCP/IP 网络中的计算机自动分配 TCP/IP 参数的协议。
DHCP 服务避免了因手动设置 IP 地址所产生的错误,同时也避免了把一个 IP 地址分配给多台工作站所造成的地址冲突。DHCP 提供了安全、可靠且简单的 TCP/IP 网络设置,降低了配置 IP 地址的负担

1.2:使用DHCP的好处

由于上网时间的不确定性以及使用人员的技术水平不同,为每位用户分配一个固定的IP 地址,不仅造成了 IP 地址的浪费,也会为 ISP 服务商带来高额的维护成本。而使用 DHCP 服务则有以下 好处
  • 减少管理员的工作量。
  • 避免输入错误的可能。
  • 避免 IP 地址冲突。
  • 当网络更改 IP 地址段时,不需要再重新配置每个用户的 IP 地址
  • 提高了 IP 地址的利用率。
  • 方便客户端的配置。

1.3:DHCP的分配方式

DHCP 的典型应用模式如下:在网络中架设一台专用的 DHCP 服务器,负责集中分配各种网络地址参数(主要包括 IP 地址、子网掩码、广播地址、默认网关地址、 DNS 服务器地址);其他主机作为 DHCP 客户机,将网卡配置为自动获取地址,即可与 DHCP 服务器进行通信,完成自动配置过程。
DHCP 的工作原理中, DHCP 服务器提供了三种 IP 地址分配方式:自动分配 (Automatic Allocation )、手动分配和动态分配( Dynamic Allocation
  • 自动分配是当 DHCP 客户机第一次成功地从 DHCP 服务器获取到一个 IP 地址后,就永久地使用这个 IP 地址。
  • 手动分配是由 DHCP 服务器管理员专门指定 IP 地址。
  • 动态分配是当 DHCP 客户机第一次从 DHCP 服务器获取到 IP 地址后,并非永久地使用该地址,而是在每次使用完后,DHCP 客户机就会释放这个 IP 地址,供其他客户机使用

1.4:DHCP的租约过程 

客户端从 DHCP 服务器获取 IP 地址的过程称之为 DHCP 租约过程,此过程主要分为以下四个步骤
  • 客户端在网络中搜索服务器;
  • 服务器向客户端响应服务;
  • 客户端向服务器发出服务请求;
  • 服务器向客户端提供服务。
1 )客户机请求 IP 地址
当一个 DHCP 客户机启动时,客户机还没有 IP 地址,所以客户机要通过 DHCP 获取一个合法的地址。此时 DHCP 客户机以广播方式发送 DHCP Discover 发现信息来寻找 DHCP 服务器
2 )服务器响应
DHCP 服务器接收到来自客户机请求 IP 地址的信息时,它就在自己的 IP 地址池中查找是否有合法的 IP 地址提供给客户机。如果有, DHCP 服务器就将此 IP 地址做上标记,加入到 DHCP Offer 的消息中,然后 DHCP 服务器就广播一则 DHCP Offer 消息
3 )客户机选择 IP 地址
DHCP 客户机从接收到的第一个 DHCP Offer 消息中提取 IP 地址,发出 IP 地址的 DHCP服务器将该地址保留,这样该地址就不能再分配给另一个 DHCP 客户机。之后 DHCP 客户机会向服务器发送 DHCP Request 消息
4 )服务器确定租约
DHCP 服务器接收到 DHCP Request 消息后,以 DHCP ACK 消息的形式向客户机广播成功确认,该消息包含有 IP 地址的有效租约和其他可配置的信息。当客户机收到 DHCP ACK消息时,它就配置了 IP 地址,完成 TCP/IP 的初始化
5 )重新登录
DHCP 客户机每次重新登录网络时,不需要再发送 DHCP Discover 信息,而是直接发送包含前一次所分配的 IP 地址的 DHCP Request 请求信息。
6 )更新租约
DHCP 服务器向客户机出租的 IP 地址租期达到 50% 时,就需要更新租约。客户机直接向提供租约的服务器发送 DHCP Request 包,要求更新现有的地址租约

二:使用DHCP动态配置主机地址

2.1:配置DHCP服务器

2.1.1:安装 DHCP 服务器软件

先执行 “rpm -q dhcp” 命令查看系统中是否已经安装 dhcp 软件包,如果没有安装,则只要挂载 CentOS 系统光盘,安装其中的 dhcp-4.2.5-47.el7.centos.x86_64.rpm 软件包即可
安装 dhcp 软件包后系统将会自动复制相关程序,并添加名为 dhcpd 的系统服务

2.1.2:建立主配置文件dhcpd.conf

dhcpd 服务的主配置文件是 /etc/dhcp/dhcpd.conf ,但是该文件中默认不包含任何有效配置,需要管理员手动建立。这时管理员可以根据文件中的提示,参考配置文件范本建立新的dhcpd.conf 文件
[root@localhost ~]# cat /etc/dhcp/dhcpd.conf
#
# DHCP Server Configuration file.
#
see /usr/share/doc/dhcp*/dhcpd.conf.example
#
see dhcpd.conf(5) man page
#
[root@localhost~]# cp /usr/share/doc/dhcp-4.2.5/dhcpd.conf.example       /etc/dhcp/dhcpd.conf
[root@localhost ~]#
1)/etc/dhcp/dhcpd.conf 文件的配置构成
在主配置文件 dhcpd.conf 中,可以使用声明、参数、选项这三种类型的配置,各自的作用和表现形式如下所述
  • 声明:用来描述 dhcpd 服务器中对网络布局的划分,是网络设置的逻辑范围。较常见的声明是 subnethost,其中 subnet 声明用来约束一个网段,host 声明用来约束一台特定的主机。
  • 参数:由配置关键字和对应的值组成,总是以”(分号)结束,一般位于指定的声明范围之内,用来设置所在范围的运行特性(如默认租约时间、最大租约时间等)。
  • 选项:由“option”引导,后面跟具体的配置关键字和对应的值,也是以结束,用于指定分配给客户机的各种地址参数(如默认网关地址、子网掩码、DNS 服务器地址等)
2)dhcpd 服务的全局配置
为了使配置文件的结构更加清晰,全局配置通常会放在配置文件 dhcpd.conf 的开头部分,可以是配置参数,也可以是配置选项。常用的全局配置参数和选项如下所述
  • ddns-update-style,动态 DNS 更新模式。用来设置与 DHCP 服务相关联的 DNS 数据动态更新模式。在实际的 DHCP 应用中很少用到该参数,将值设为“none”即可。
  • default-lease-time,默认租约时间。单位为秒,表示客户端可以从 DHCP 服务器租用某个 IP 地址的默认时间。
  • max-lease-time,最大租约时间。单位为秒,表示允许 DHCP 客户端请求的最大租约时间,当客户端未请求明确的租约时间时,服务器将采用默认租约时间。
  • option domain-name,默认搜索区域。为客户机指定解析主机名时的默认搜索域,该配置选项将体现在客户机的/etc/resolv.conf 配置文件中,如“search benet.com”
  • option domain-name-serversDNS 服务器地址。为客户机指定解析域名时使用的 DNS 服务器地址,该配置选项同样将体现在客户机的/etc/resolv.conf 配置文件中(如“nameserver 202.106.0.20”)。需设置多个 DNS 服务器地址时,以逗号进行分隔
例如,若需要为局域网搭建一台 DHCP 服务器,所有网段使用相同的租约时间,默认搜索域为 wind.com DNS 服务器地址为 202.106.0.20 202.106.148.1 ,则可以修改dhcpd.conf 配置文件,参考以下操作调整全局配置
[root@localhost ~]# vi /etc/dhcp/dhcpd.conf
ddns-update-style none;                                              //禁用 DNS 动态更新
default-lease-time 21600;                                          //默认租约为 6 小时
max-lease-time 43200;                                             //最大租约为 12 小时
option domain-name            "wind.com";                 //指定默认搜索域
option domain-name-servers     202.106.0.20, 202.106.148.1;         //指定 DNS 服务器地址
3subnet 网段声明
一台 DHCP 服务器可以为多个网段提供服务,因此 subnet 网段声明必须有而且可以有多个。例如,若要 DHCP 服务器为 192.168.4.0/24 网段提供服务,用于自动分配的 IP 地址范围为 192.168.4.128 192.168.4.254 ,为客户机指定默认网关地址为 192.168.4.1 ,则可以修改 dhcpd.conf 配置文件,参考以下内容调整 subnet 网段声明
[root@localhost ~]# vi /etc/dhcp/dhcpd.conf
subnet 192.168.4.0 netmask 255.255.255.0 {                                    //声明网段地址
range             192.168.4.128 192.168.4.254;                                    //设置地址池 , 可以有多个
option routers           192.168.4.1;                                                     //指定默认网关地址
}
4host 主机声明(可选)
host 声明用于设置单个主机的网络属性,通常用于为网络打印机或个别服务器分配固定的 IP 地址(保留地址),这些主机的共同特点是要求每次获取的 IP 地址相同,以确保服务的稳定性。
host 声明通过 host 关键字指定需要使用保留地址的客户机名称,并使用 “hardware  ethernet”参数指定该主机的 MAC 地址,使用 “fixed-address” 参数指定保留给该主机的 IP 地址。

2.1.3:启动dhcpd服务

在启动 dhcpd 服务之前,应确认提供 DHCP 服务器的网络接口具有静态指定的固定 IP 地址,并且至少有一个网络接口的 IP 地址与 DHCP 服务器中的一个 subnet 网段相对应,否则将无法正常启动 dhcpd 服务
安装 dhcp 软件包以后,对应的系统服务脚本位于/usr/lib/systemd/system/dhcpd.service,可以使用 systemd 服务进行控制。例如,执行以下操作可以启动 dhcpd 服务,并检查 UDP 67 端口是否在监听,以确认 DHCP 服务器是否正常。
[root@localhost ~]# systemctl start dhcpd
[root@localhost ~]# netstat -anpu | grep ":67"
需要关闭、重启 dhcpd 服务时,只要将上述操作命令中的 “start” 改为 “stop” “restart” 即可。如果 dhcpd 服务启动失败,可以检查日志文件 /var/log/messages 末尾的错误提示信息,并根据提示进行排错

2.2:使用DHCP客户端

当局域网内有可用的 DHCP 服务器时,在 Linux 客户机中可以设置使用 DHCP 的方式获取地址。只需要编辑对应网卡的配置文件,修改或添加“BOOTPROTO=dhcp” 配置行,并重新加载配置文件或者重新启动 network 服务即可。例如,执行以下操作可修改网卡配置文件,并重新加载配置以通过 DHCP 方式自动获取地址
[root@localhost ~]# vi /etc/sysconfig/network-scripts/ifcfg-ens33
DEVICE=ens33
ONBOOT=yes
BOOTPROTO=dhcp
[root@localhost ~]# ifdown ens33 ; ifup ens33
Linux 客户机中,还可以使用 dhclient 工具来测试 DHCP 服务器。若直接执行 “dhclient”命令,则 dhclient 将尝试为除回环接口 lo 以外的所有网络接口通过 DHCP 方式申请新的地址,然后自动转入后台继续运行。当然,测试时可以指定一个具体的网络接口,并结合“-d” 选项使其在前台运行,测试完毕后按 Ctrl C 组合键终止。例如,执行 “dhclient -d ens33” 命令后,可以为网卡 ens33 自动获取新的 IP 地址,并显示获取过程
[root@localhost ~]# dhclient -d ens33
在服务器端可以通过查看租约文件 /var/lib/dhcpd/dhcpd.leases 来了解服务器的 IP 地址分配情况,具体操作如下。该租约文件中记录了分配出去的每个 IP 地址信息(租约记录),包括 IP 地址、客户端的 MAC 地址、租用的起始时间和结束时间等
[root@localhost ~]# less /var/lib/dhcpd/dhcpd.leases
客户端需要通过 dhclient 命令释放获取的 IP 租约时,可以结合 “-r” 选项。例如,执行以下的“dhclient -r ens33” 将会释放之前为网卡 ens33 获取的 IP 租约。此时再通过执行 “ifconfig  ens33”命令就看不到分配的 IP 地址了
[root@localhost ~]# dhclient -r ens33

 2.3:DHCP中继

2.3.1:DHCP中继原理

当企业内部网络规模比较大时,通常通过 VLAN 将网络规划为多个不同的子网。但是在该情况下一台 DHCP 服务器无法为不同网段的客户机同时提供服务,因为 DHCP 协议使用广播,而 VLAN 能隔离广播。
例如: DHCP 服务器在 VLAN 100 中,就只有 VLAN 100 内的客户机能从 DHCP 服务器那里获取 IP 地址。 VLAN 2 VLAN 3 的客户机就无法通过这台 DHCP 服务器来获取 IP 地址。
针对以上问题,一般有两种解决方案:
  • 为每个网段安装一台 DHCP 服务器,但这种方式的弊端是:资源浪费与不利于管理;
  • 在连接不同网段的设备上开启DHCP中继功能,将DHCP这种特殊的广播信息在VLAN 之间转发,让其他 VLAN 的客户机也能从 DHCP 服务器获取 IP 地址,如下图所示

2.3.2:DHCP中继配置

DHCP 中 继 的 配 置 命 令 : ip helper-address DHCPsrv-IPAddress 。 其中 ,DHCPsrv-IPAddress 为 DHCP 服务器的 IP 地址。
在三层交换机上配置 DHCP 中继转发:首先需要保证交换机上各 VLAN 之间网络通信正常,然后依次在不包含 DHCP 服务器的 VLAN 上进行 DHCP 中继配置。例如执行以下命令可以在 VLAN2 中进行 DHCP 中继转发配置
SW-3L(config)# interface vlan 2
SW-3L(config-if)# ip helper-address 192.168.100.100
  • 27
    点赞
  • 24
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
课程设计报告书 课程名称: 计算机网络原理 题 目:局域网协议DHCP服务配置及安全防护 学生姓名: 专 业: 计算机 班 别: 学 号: 指导老师: 日 期: 2012 年 12 月 30 日 局域网协议DHCP服务配置及安全防护 目录 1.设计目的 3 2.设计内容 3 2.1 DHCP服务的配置 3 2.2 DHCP的安全防护 3 2.2.1 临时保护DHCP 3 2.2.2 长期保护DHCP 3 2.2.3基本防范 4 3.DHCP简介 5 3.1 DHCP介绍 5 3.2 DHCP地址分配 6 3.2.1 Manual Allocation 6 3.2.2 Automatic Allocation 6 3.2.3Dynamic Allocation 6 3.3 DHCP工作原理 7 3.3.1 寻找 Server 7 3.3.2 提供 IP 租用地址 8 3.3.3 接受 IP 租约 8 3.3.4租约确认 9 3.4 DHCP的责任 10 4.配置DHCP用到的软件程序 10 4.1 VMware Workstation 10 4.1.1 VM简介 10 4.2 Red Hat Enterprise Linux5 企业版 11 4.2.1 Red Hat公司介绍 11 4.2.2 Red Hat软件 11 4.2.3 Red Hat Enterprise Linux5 企业版 11 5.配置DHCP服务过程 13 5.1 安装DHCP服务 13 5.2 DHCP服务配置 14 5.3 DHCP的保留配置 16 6.总结 17 1.设计目的 1.1了解局域网协议DHCP服务的基本配置。 1.2为了提高网络管理效率。 1.3保护合法DHCP服务器的运行安全性,以避免其受到不合法DHCP服务器的"冲击"! 2.设计内容 2.1 DHCP服务的配置 2.2 DHCP的安全防护 2.2.1 临时保护DHCP DHCP的工作机制是:普通工作站系统是通过广播方式向局域网网络发送上网参数 请信息的,局域网中的所有网络设备都会收到来自普通工作站的上网请求,这自然也 包括合法的DHCP服务器、不合法的DHCP服务器,不过究竟是合法的DHCP服务器还是不 合法的DHCP服务器,优先应答普通工作站的上网请求,是没有什么规律的。 因此当遇到普通工作站系统无法获得有效上网参数现象时,有以下几种临时方法 可保护DHCP: A.可以尝试通过反复发送广播信息的办法,来临时保证普通工作站与合法DHCP服 务器建立连接,直到普通工作站能够从合法DHCP服务器那里得到有效的上网参数为止 。 B.可以打开故障工作站系统的DOS命令行工作窗口,并在DOS命令行提示符下执行 "ipconfig /release"字符串命令,来将之前获得的不正确上网参数释放出来。然后尝试执行"i pconfig /renew"字符串命令,来重新向局域网发送上网参数请求数据包,如果上述命令返回 错误的结果信息,那么我们可以在本地系统运行对话框中继续执行"ipconfig /release"、"ipconfig /renew"字符串命令,直到普通工作站获得有效的上网参数信息为止。 2.2.2 长期保护DHCP 通常情况下,局域网中的普通工作站安装使用的都是Windows操作系统,在Wind ows工作站系统为主的局域网工作环境中,我们可以通过域管理模式来保护合法DHCP 服务器的运行安全性,同时过滤不合法的DHCP服务器,确保该DHCP服务器不会为局域 网普通工作站分配错误的上网参数信息。我们只要在局域网域控制器中,将合法有效 的DHCP服务器主机加入到局域网活动目录中,就能保证局域网中的所有普通工作站都 会自动从合法有效的DHCP服务器那里,获得正确的上网参数信息了;这是因为域中的 普通工作站向网络发送广播信息,申请上网参数地址时,位于同一个域中的合法有效 的DHCP服务器,会自动优先响应普通工作站的上网请求,如果局域网指定域中的DHC P服务器不存在或失效时,那些没有加入指定域中的不合法DHCP服务器才有可能响应 普通工作站的上网请求。   要将合法有效的DHCP服务器加入到局域网指定域中时,我们可以按照下面的设置 步骤来操作: 首先以系统管理员权限登录进入局域网指定域控制器所在主机系统,打开该系统 桌面上的"开始"菜单,从中依次点选"程序"/"管理工具"/"DHCP"选项,打开对应系统 的DHCP服务器控制台窗口;   其次在目标控制台窗口的左侧显示区域,用鼠标右键单击目标服务器主机,从弹 出的快捷菜单中执行"添加服务器"命令,单击其中的"浏览"按钮,在其后出现的选择 计算机对话框中,选中合法有效的DHCP服务器所在主机名称,也可以直接在"此服务 器"文本框中输入DHCP服务

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值