Linux——DHCP原理与配置(实验)

文章目录

  • DHCP原理与配置
    • 一、了解DHCP服务
    • 二、DHCP的租约过程
          • 租约过程四个步骤
          • 重新登陆
          • 更新租约
    • 三、使用DHCP动态配置主机地址
    • 四、DHCP主配置文件
          • dhcpd.conf的内容构成
          • 全局设置,作用域整个DHCP服务器 《重要》
          • Subnet网段声明,作用于整个子网段
          • host主机声明,作用于单个主机
    • 五、启动DHCP服务
    • 六、使用DHCP客户端
          • 两种使用方式
    • DHCP中继实验:

DHCP原理与配置

一、了解DHCP服务

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

使用DHCP的好处:

  • 减少管理员的工作量
  • 避免IP地址冲突
  • 当网络更改IP地址段时,不需要再重新配置每个用户的IP地址
  • 提高了IP地址的利用率
  • 方便客服端的配置

DHCP的分配方式:

  • 自动分配:分配到一个IP地址后永久使用
  • 手动分配:由DHCP服务器管理员专门指定IP地址
  • 动态分配:使用完后释放该IP,供其他客户机使用

IP地址的获取和释放命令(用于windows)

ipconfig/release 释放

ipconfig/renew 重新获取

二、DHCP的租约过程

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

租约过程四个步骤

Linux——DHCP原理与配置(实验)_第1张图片
1、客服端在网络中搜索服务器(广播发送到整个局域网,确定有没有DHCP服务器)

  • 客户机请求IP地址:(Discover消息)

    • 当一个DHCP客户机启动时,客户机还没有IP地址,所以客户机要通过DHCP获取一个合法的地址
    • 此时DHCP客户机以广播方式发送DHCP Discover发现信息来寻找DHCP服务器
      Linux——DHCP原理与配置(实验)_第2张图片

2、服务器向客户端响应服务(广播,因为客户端没有ip)

  • 服务器响应:(Offer消息)
    • 当DHCP服务器接收到来自客户机请求IP地址的信息时,它就在自己的IP地址池中查找是否有合法的IP地址提供给客户机,如果有,DHCP服务器就将此IP地址做上标记,加入到DHCP Offer的消息中,然后DHCP服务器就广播一则DHCP Offer消息
      Linux——DHCP原理与配置(实验)_第3张图片

3、客户端向目标服务器发出服务请求(广播,确认)

  • 客户机选择IP地址:(request消息)

    • DHCP客户机从接收到的第一个DHCP Offer消息中提取IP地址,发出IP地址的DHCP服务器将该地址保留,这样该地址就不能在分配给另一个DHCP客户机

    Linux——DHCP原理与配置(实验)_第4张图片

4、服务器向客户端提供服务(广播)

  • 服务器确定租约:
    • DHCP服务器接收到DHCP Request消息后,以DHCP ACK消息的形式向客户机广播成功确定,该消息包含有IP地址的有效租约和其他可配置的消息
    • 当客户机收到DHCP ACK消息时,它就配置了IP地址,完成TCP/IP的初始化

Linux——DHCP原理与配置(实验)_第5张图片

ACK确认:哪台服务器先给offer,并且地址可用,才会给ack确认

重新登陆
  • DHCP客户机每次重新登陆网络时,不需要在发送DHCP Discover信息,而是直接发送包含前一次所分配的IP地址的DHCP Request请求信息
    Linux——DHCP原理与配置(实验)_第6张图片
更新租约
  • 当DHCP服务器向客户机出租的IP 地址租期达到50%时,就需要更新租约
  • 客户机直接向提供租约的服务器发送DHCP Resquest包,要求更新现有的地址租约

当租约到期需要续约时,DHCP服务器宕机,找不到了,原来的地址将会自动释放掉,然后分配一个不可用的地址(169.254.0.0~169.254.255.255)

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

DHCP服务

  • 为大量客户机自动分配地址,提供集中管理

  • 减轻管理和维护成本、提高网络配置效率

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

  • 网卡的IP地址、子网掩码

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

  • 默认网关地址

  • DNS服务器地址

安装DHCP服务器

DHCP服务器软件

  • CentOS关盘中的dhcp-4.2.5-47.el7.centos.x86_64.rpm
  • dhcp软件包的主要文件
  • 主配置文件:/etc/dhcp/dhcpd.conf //(服务中的主配置文件是核心)
  • 执行程序:/usr/sbin/dhcpd、/usr/sbin/dhcrelay //(执行程序,可以使用的命令)
  • 执行参数配置:/etc/sysconfig/dhcpd //(默认元码配置文件,不做更改)

四、DHCP主配置文件

dhcpd.conf的内容构成

Linux——DHCP原理与配置(实验)_第7张图片

全局设置,作用域整个DHCP服务器 《重要》
  • ddns-update-style none; //禁止DNS更新
  • default-lease-time 600; //默认租约期限,单位s
  • max-lease-time 7200; //最大的租约期限
  • option domain-name “doman.org”; //指定域名
  • option domain-name-servers 202.206.0.20; //指定分配的DNS地址
Subnet网段声明,作用于整个子网段
  • range参数:设置用于分配的IP地址池
  • option subnet-mask参数:设置客户机的子网掩码
  • option souters参数:设置客户机的默认网关地址

当全局与子网段冲突时,已子网段为主

Linux——DHCP原理与配置(实验)_第8张图片

host主机声明,作用于单个主机
  • hardware ethernet 参数:指定对应主机的MAC地址

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

    Linux——DHCP原理与配置(实验)_第9张图片

五、启动DHCP服务

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

Linux——DHCP原理与配置(实验)_第10张图片

六、使用DHCP客户端

两种使用方式
  • 修改网卡配置文件(如 ifcfg-ens33)

    • BOOTPROTO=dhcp
    [root@localhost ~]#vim /etc.sysconfig/network-scripts/ifcfg-ens33
    DEVICE=ens33
    ONBOOT=yes
    BOOTPROTO=dhcp                             //DHCP自动获取
    …………省略内容
    [root@localhost ~]#ifdown ens33
    [root@localhost ~]#ifup ens33
    
  • 使用dhclient命令

    dhclient [-d] [网络接口名]
    

Linux——DHCP原理与配置(实验)_第11张图片

DHCP中继实验:

实验中分别划分vlan,而三层交换中路由有隔离广播的作用

(DHCP中继在网关中帮忙跨越vlan广播,从而为两台PC及分配地址)

DHCP端口号是UDP 的67

Linux——DHCP原理与配置(实验)_第12张图片

sw配置:二层交换连接了DHCP服务器及两台PC机,分别划分vlan10,20,100。f1/0接口连接了三层交换,而三层交换中的f1/0则作为PC机服务器的网关。所以需要将连接创建trunk链路

Linux——DHCP原理与配置(实验)_第13张图片
Linux——DHCP原理与配置(实验)_第14张图片

sw_3配置:三层交换在这里起到了网关的作用,需要为其划分vlan10,20,100并分别为其配置地址作为网关地址,另外为f1/0配置trunk。最重要的一点,路由隔离广播,所以这里我们要使用dhcp中继,允许dhcp服务通过

Linux——DHCP原理与配置(实验)_第15张图片

Linux——DHCP原理与配置(实验)_第16张图片
Linux——DHCP原理与配置(实验)_第17张图片

到这里,连接上的配置都已经完成了,下面来进行DHCP上的配置

首先服务器需要有一个固定地址,为服务器配地址

[root@localhost ~]# yum install dhcp -y                  //先安装dhcp服务
[root@localhost ~]# vim /etc/sysconfig/network-scripts/ifcfg-ens33  //为服务器配置IP

Linux——DHCP原理与配置(实验)_第18张图片

[root@localhost ~]# systemctl restart network          //配置完成重启网络服务
[root@localhost ~]# ifconfig                           //查询验证配置成功
ens33: flags=4163  mtu 1500
        inet 192.168.100.100  netmask 255.255.255.0  broadcast 192.168.100.255
        inet6 fe80::d847:7ee6:3c15:c62  prefixlen 64  scopeid 0x20
        …………省略部分内容…………
[root@localhost ~]# cp /usr/share/doc/dhcp-4.2.5/dhcpd.conf.example /etc/dhcp/dhcpd.conf
cp:是否覆盖"/etc/dhcp/dhcpd.conf"? yes
[root@localhost ~]# vim /etc/dhcp/dhcpd.conf               //进入dhcp全局配置

服务器地址配置完成后,就需要对DHCP服务的配置文件进行配置,分别分配10,20,100段的地址
Linux——DHCP原理与配置(实验)_第19张图片

[root@localhost ~]# systemctl start dhcpd                 //配置完成启用dhcp服务   
[root@localhost ~]# systemctl status dhcpd                //查询验证已启用
● dhcpd.service - DHCPv4 Server Daemon
   Loaded: loaded (/usr/lib/systemd/system/dhcpd.service; disabled; vendor preset: disabled)
   Active: active (running) since 二 2019-11-19 19:01:19 CST; 37s ago

所有配置完成,记得要启动服务,然后我们就去验证,两台PC机是否有获取到IP

Linux——DHCP原理与配置(实验)_第20张图片
Linux——DHCP原理与配置(实验)_第21张图片

我们看到两台PC机已经分别获取了10段及20段的地址

下面,我们来为win10指定一个固定ip:

还是进入DHCP配置页面:将需要配置固定地址主机的MAC地址填写进来并指定一个IP即可

[root@localhost ~]# vim /etc/dhcp/dhcpd.conf

Linux——DHCP原理与配置(实验)_第22张图片

[root@localhost ~]# systemctl restart dhcpd

配置完成后不要忘记重启服务,接下来我们来验证,win10的IP地址是否为我们配置的指定IP地址:
Linux——DHCP原理与配置(实验)_第23张图片
总结:/etc/dhcp/dhcpd.conf 服务中的主配置文件是核心使用DHCP服务需安装dhcp-4.2.5-47.el7.centos.x86_64.rpm,具体配置须在/etc/dhcp/dhcpd.conf 来做相应的操作

你可能感兴趣的:(Linux)