Linux网络服务--DHCP原理与配置

    技术2023-07-12  63

    文章目录

    前言一、了解DHCP服务1.1、DHCP概述1.2、使用DHCP好处1.3、DHCP的分配方式1.3.1、自动分配1.3.2、手动分配1.1.3、动态分配 二、DHCP的工作原理2.1、租约过程概述2.2、租约过程详解4-12.3、租约过程详解4-22.4、租约过程详解4-32.5、租约过程详解4-42.6、租约过程详解-重新登录情况2.7、租约过程详解–更新租约 三、使用DHCP动态配置主机地址3.1、DHCP服务3.2、可分配的地址信息主要包括3.3、安装DHCP服务器3.3.1、DHCP服务器软件3.3.2、subnet网段声明,作用于整个子网段 3.3.3、host主机声明,作用于单个主机3.3.4、查看租约文件 四、DHCP实验实验步骤

    前言

    DHCP(动态主机配置协议)是一个局域网的网络协议。指的是由服务器控制一段IP地址范围,客户机登录服务器时就可以自动获得服务器分配的IP地址和子网掩码。默认情况下,DHCP作为Windows Server的一个服务组件不会被系统自动安装,还需要管理员手动安装并进行必要的配置。

    一、了解DHCP服务

    1.1、DHCP概述

    DHCP(Dynamic Host Configuration Protocol,动态主机配置协议),是由Internet工作任务小组设计开发的,专门用于为TCP/IP网络中的计算机自动分配TCP/IP参数的协议

    DHCP一般作用在局域网中,若在广域网中使用DHCP,需要在路由器上面配置

    1.2、使用DHCP好处

    Internet的用户数量众多,所以不可能给每个用户固定一个IP地址,同时也为了避免浪费,我们使用DHCP服务来解决这个问题。具有以下好处:

    减少管理员的工作量

    避免IP地址冲突

    当网络更改IP地址段时,不需要再重新配置每个用户的IP地址

    提高了IP地址的利用率

    方便客户端的配置

    1.3、DHCP的分配方式

    DHCP的典型应用模式 在网络中假设一台专用的DHCP服务器,负责集中分配各种网络地址参数(主要包括IP地址,子网掩码,广播地址,默认网关地址,DNS服务器地址) 其他主机作为DHCP客户机,将网卡配置为自动获取地址,即可与DHCP服务器进行通信,完成自动配置过程 这就产生了三种分配方式:自动分配,手动分配,动态分配

    1.3.1、自动分配

    分配到一个IP地址后永久使用

    当DHCP客户机第一次成功的从DHCP服务器获取到一个IP地址后,就永久的使用这个IP地址

    例如:局域网中的打印机,局域网中的座机

    1.3.2、手动分配

    由DHCP服务器管理员专门指定IP地址

    1.1.3、动态分配

    使用完后释放该IP,供其他客户机使用

    二、DHCP的工作原理

    2.1、租约过程概述

    客户机从DHCP服务器获得IP地址的过程称为DHCP的租约过程

    租约过程分为四个步骤

    1.客户端在网络中发送discover广播,以此来搜索DHCP服务器 2.DHCP服务器接收到广播后,因不知道客户端的IP地址,所以同样以广播的形式将offer发送,来响应主机 3.客户机收到offer后,开始发出request广播 4.DHCP收到广播后,依旧不知道客户机IP地址,发送回复request的ACK确认广播

    2.2、租约过程详解4-1

    客户机请求IP地址:发送DHCP discover广播 当一个DHCP客户机启动时,客户机还没有IP地址,所以客户机要通过DHCP获取一个合法的地址

    此时DHCP客户机以广播方式发送DHCP discover发现信息来寻找DHCP服务器

    因为自己没有IP地址,所以源IP地址为:0.0.0.0

    同时也不知道DHCP服务器地址,所以发送广播255.255.255.255

    2.3、租约过程详解4-2

    服务器响应:发送DHCP offer广播 当DHCP服务器接收到来自客户机请求IP地址的信息时,他就在自己的IP地址池中查找是否有合法的IP地址提供给客户机,如果有,DHCP服务器就将此IP地址做上标记,加入到DHCP offer的消息中,然后DHCP服务器就广播一则DHCP offer消息

    2.4、租约过程详解4-3

    客户机选择IP地址:发送DHCP request广播 DHCP客户机从接收到的第一个DHCP offer消息中提取IP地址,发出IP地址的DHCP服务器将该地址保留,这样该地址就不能再分配给另一个DHCP客户机 第一个DHCP offer表示:若局域网中同时存在两个DHCP,那么客户机根据收到DHCP offer的顺序来确定使用哪个DHCP服务器的地址 客户机发送DHCP request 广播,选择IP地址,并附上租约期限信息(默认8天)

    2.5、租约过程详解4-4

    服务器确定租约:发送DHCP ACK广播 DHCP服务器接收到DHCP request消息后,以DHCP ACK消息的形式向客户机广播成功确认,该消息包含有IP地址的有效租约和其他可配置的消息

    当客户机收到DHCP ACK消息时,他就配置了IP地址,完成TCP/IP的初始化

    此时服务器发出的仍旧是广播,因为客户机还没有IP地址

    2.6、租约过程详解-重新登录情况

    重新登录

    DHCP客户机每次重新登录网络时,不需要在发送DHCP的discover信息,而是直接发送包含前一次所分配的IP地址的DHCP request请求信息

    DHCP服务器收到请求后,检查IP地址资源池

    1.发现客户机请求中的IP地址仍旧存在,便发送ACK,将IP地址分配给客户机

    2.发现客户机请求中的IP地址已被占用,便返回一个Nack否认信息,然后客户机重新开始请求IP地址的步骤。

    2.7、租约过程详解–更新租约

    更新租约

    当DHCP服务器向客户机出租的IP地址租期达到50%时,就需要更新租约 客户机直接向提供租约的服务器发送DHCP request包,要求更新现有的地址租约 若DHCP服务器宕机,客户机租约到期后,会自动释放地址,然后使用169.254.0.0–169.254.255.255网段的地址

    三、使用DHCP动态配置主机地址

    3.1、DHCP服务

    为大量客户机自动分配地址,提供集中管理 减轻管理和维护成本,提高网络配置效率

    3.2、可分配的地址信息主要包括

    网卡的IP地址、子网掩码

    对应的网络地址、广播地址

    默认网关地址

    DNS服务器地址

    3.3、安装DHCP服务器

    3.3.1、DHCP服务器软件

    ●CentOS光盘中的dhcp-4.2.5-47.el7 .centos .x86_ 64.rpm

    ●DHCP软件包的主要文件 ◆主配置文件: /etc/dhcpd.conf ◆执行程序: /usr/sbin/dhcpd、/usr/sbin/dhcrelay

    3.3.2、subnet网段声明,作用于整个子网段

    range参数:设置用于分配的IP地址池

    option subnet-mask 参数: 设置客户机的子网掩码

    option routers 参数: 设置客户机的默认网关地址

    3.3.3、host主机声明,作用于单个主机

    hardware ethernet 参数:指定对应主机的MAC地址

    fixed-address参数:指定为该主机保留的IP地址

    3.3.4、查看租约文件

    启动DHCP

    查看租约文件 /var/lib/dhcpd/dhcpd.lease

    四、DHCP实验

    实验步骤

    先安装dhcp包 关闭防护墙 清空防火墙规则

    [root@localhost ~]# rpm -q dhcp dhcp-4.2.5-79.el7.centos.x86_64 [root@localhost ~]# setenforce 0 [root@localhost ~]# iptables -F

    安装完成后在虚拟机中将CentOS 7改成仅主机模式

    再将客户机win 7也设置成仅主机模式,这时VMnet1相当于一个交换机

    查看DHCP是否安装成功,并查看配置文件 里面有个DHCP引导模板 将dhcp文件复制到dhcp.conf中

    [root@localhost dhcp]# cp /usr/share/doc/dhcp--/dhcpd.conf.example dhcp-4.2.5/ dhcp-common-4.2.5/ dhcp-devel-4.2.5/ [root@localhost dhcp]# cp /usr/share/doc/dhcp-4.2.5/dhcpd.conf.example /etc/dhcp/dhcpd.conf cp:是否覆盖"/etc/dhcp/dhcpd.conf"? yes

    编辑网卡信息 配置DNS地址 配置实验所需的IP地址池和网关 设置完成后重启服务

    [root@localhost ~]# systemctl restart dhcpd

    在客户机配置成自动获取IP地址 注意!! 发现客户机通过DHCP获取到IP地址 通过输入ipconfig /all命令可以查看网卡所有信息 这时我们DNS地址宣告子网段,验证优先是执行子网段DNS服务地址还是全局DNS服务地址,再次编辑dhcpd文件,添加子网端的DNS地址为9.9.9.9,保存退出 添加完记得重启DHCP服务

    [root@localhost ~]# systemctl restart dhcpd

    这时切换至win7 虚拟机记得先释放地址再重新获取地址,这时我们用ipconfig /all 发现子段宣告成功 我们给win7固定分配一个boss的 IP地址,先获取对方的mac地址,我们复制win7系统的MAC地址,然后给BOSS 分配一个固定的IP地址192.168.11.66 配置完成重启DHCP服务

    [root@localhost ~]# systemctl restart dhcpd

    在BOSS的客户机查看IP地址 实验结束 实验总结:设置完DHCP服务完都要重启DHCP服务 两个命令:

    重启网卡方法1 :systemctl restart network 重启网卡方法2 :service network restart
    Processed: 0.012, SQL: 9