DHCP动态主机配置协议

发布于:2024-05-15 ⋅ 阅读:(174) ⋅ 点赞:(0)

DHCP概述

DHCP是什么

  • DHCP:Dynamic Host Configuration Protocol:动态主机配置协议
  • DHCP是一种集中对用户IP地址进行动态管理和配置的技术

DHCP作用:

  • 作用:实现IP地址的动态分配和集中管理
  • 优势:避免手工配置IP地址,提高工作效率,避免出错,且能快速适应网络变化

DHCP角色

  • DHCP客户端:需要获取IP地址的设备
  • DHCP服务器:负责为DHCP客户端分配IP地址等网络参数的设备
  • DHCP中继:负责DHCP服务器和DHCP客户端之间的DHCP报文
    ps:企业网络中一般不需要部署DHCP中继

DHCP服务器给首次接入网络中的客户端分配网络参数的工作原理

  • 发现阶段:客户端广播发送DHCP Discover报文(DHCP发现报文,客户端找DHCP服务器,请求IP地址)
  • 提供阶段:服务端收到客户端发的报文后,会单播回复DHCP Offer报文(DHCP回应报文,服务器给客户端发IP地址、网关、DNS等)
  • 选择阶段:客户端收到Offer报文后,会再次广播发送DHCP Request报文(DHCP请求报文,客户端广播告知所有的服务器,选择了某某IP地址)
  • 确认阶段:服务器收到客户端发的报文后,会单播回复DHCP ACK报文(DHCP确认报文,确认分配结果,只有发了ACK报文,客户端才可以使用IP)

基于全局的DHCP实验

拓扑

需求:PC1/PC2能够自动获取IP地址、网关、DNS

配置步骤:

第一步:在系统视图下开启DHCP功能

第二步:配置IP地址池

  • 创建IP地址池
  • 配置可分配的IP地址段
  • 配置网关地址
  • 配置DNS地址
  • 配置租期

第三步:配置R1路由器接口的IP地址

  • 这个接口接收客户端发的报文,这个接口的IP地址,即客户端的网关地址
  • 在这个接口下开启基于全局的DHCP功能

第四步:验证结果

配置命令:

  • [R1]dhcp enable //开启DHCP功能
  • [R1]ip pool tedu //创建IP地址池
  • [R1-ip-pool-tedu]network 192.168.1.0 mask 24 //配置可分配的地址段
  • [R1-ip-pool-tedu]gateway-list 192.168.1.254 //配置网关地址
  • [R1-ip-pool-tedu]dns-list 8.8.8.8 //配置DNS地址
  • [R1-ip-pool-tedu]lease day 1 //配置租期
  • [R1-ip-pool-tedu]quit
  • [R1]int g0/0/0
  • [R1-G0/0/0]ip address 192.168.1.254 24 //此接口IP地址和网关地址一致
  • [R1-G0/0/0]dhcp select global //在接口下开启基于全局的DHCP

验证与测试:

  • PC1和PC2选择获取地址的方式为DHCP
  • 然后PC1和PC2在命令行中,使用ipconfig 命令查看IP地址

数据抓包

抓包

基于全局的dhcp:

  • [R1]ip pool tedu
  • [R1-ip-pool-tedu]excluded-ip-address 192.168.1.250 192.168.1.253 //在基于全局的IP地址池中做地址排除,排除的IP地址不做dhcp分发
  • display ip pool name tedu all //查看全局IP地址池中全部地址信息
  • display ip pool name tedu used //查看全局IP地址池中已分发的IP地址

基于接口的DHCP实验

配置命令:

  • [R1]dhcp enable //开启dhcp功能
  • [R1]int g0/0/0
  • [R1-G0/0/0]ip address 192.168.1.254 24
  • [R1-G0/0/0]dhcp select interface //开启基于接口的dhcp 功能
  • [R1-G0/0/0]dhcp server dns-list 8.8.8.8
  • [R1-G0/0/0]dhcp server lease day 1

DHCP中继实验

中继

配置命令

配置DHCP服务器

  • [R2-DHCP]dhcp enable //开启dhcp 功能
  • [R2-DHCP]ip pool ntd //创建IP地址池
  • [R2-DHCP-ip-pool-ntd]network 192.168.10.0 mask 24
  • [R2-DHCP-ip-pool-ntd]gateway-list 192.168.10.254
  • [R2-DHCP-ip-pool-ntd]dns-list 8.8.8.8
  • [R2-DHCP-ip-pool-ntd]excluded-ip-address 192.168.10.253

DHCP中继配置:

  • [R1-zj]dhcp enable
  • [R1-zj]int g0/0/0
  • [R1-zj-G0/0/0]ip add 192.168.20.10 24
  • [R1-zj-G0/0/0]int g0/0/1
  • [R1-zj-G0/0/1]ip add 192.168.10.254 24
  • [R1-zj-G0/0/1]dhcp select relay //在接口上开启dhcp中继功能
  • [R1-zj-G0/0/1]dhcp relay server-ip 192.168.20.20 //指定dhcp服务器的IP地址

接口上调用中继

  • [R2-DHCP]int g0/0/0
  • [R2-DHCP-GigabitEthernet0/0/0]ip add 192.168.20.20 24
  • [R2-DHCP-GigabitEthernet0/0/0]dhcp select global

租期

租期T1:

  • 当IP地址的租用时间到达50%时,客户机会以单播方式向服务器发送Request 请求报文,请求更新IP地址租期。
    DHCP 服务器如果回复DHCP ACK确认报文给客户机,代表租期更新成功,从0开始

租期T2:

  • 如果DHCP服务器一直没有回应,那么在IP地址的租用时间到达87.5%时,客户机会以广播方式向服务器发送Request 请求报文,请求更新IP地址租期
  • DHCP服务器如果回复DHCP ACK 确认报文给客户机,代表租期更新成功,从0开始

恢复接口上VLAN的缺省配置(让access/trunk/顺利切换)

access接口恢复默认配置(缺省配置)

  • SW1]vlan batch 10 20
  • [SW1]interface g0/0/1
  • [SW1-GigabitEthernet0/0/1]port link-type access
  • [SW1-GigabitEthernet0/0/1]port default vlan 10
  • [SW1-GigabitEthernet0/0/1]port link-type trunk //将接口模式修改为trunk(失败)
  • Error: Please renew the default configurations. :错误:请更新默认配置

如何解决:如何恢复接口上VLAN的缺省配置

第一种方法:
  • [SW1-GigabitEthernet0/0/1]port default vlan 1 //接口pvid恢复为vlan1
  • [SW1-GigabitEthernet0/0/1]port link-type trunk //将接口模式修改为trunk(成功)
第二种方法:
  • [SW1-GigabitEthernet0/0/1]undo port default vlan //恢复接口上VLAN的缺省配置
  • [SW1-GigabitEthernet0/0/1]port link-type trunk //将接口模式修改为trunk(成功)

trunk接口恢复默认配置(缺省配置)

  • [SW1]vlan batch 10 20
  • [SW1]interface g0/0/1
  • [SW1-G0/0/1]port link-type trunk
  • [SW1-G0/0/1]port trunk allow-pass vlan 10 20
  • [SW1-G0/0/1]port link-type access //将接口模式修改为access(失败)
  • Error: Please renew the default configurations. :错误:请更新默认配置

如何解决:如何恢复接口上VLAN的缺省配置

  • [SW1-G0/0/1]undo port trunk allow-pass vlan 10 20 //恢复默认
  • [SW1-G0/0/1]port link-type access //将接口模式修改为access(成功

ps:

  • [SW1-G0/0/1]undo port trunk allow-pass vlan all //删除所有vlan
  • [SW1-G0/0/1]port link-type access //无法修改报错
    Error: Please renew the default configurations.

如何解决:恢复默认配置: undo port trunk allow-pass vlan all 的时候把所有vlan 都干掉了,所以我们要恢复vlan1

第一种方法:
  • [SW1-G0/0/1]undo port trunk allow-pass vlan 2 to 4094 //只删除2 to 4094 不删除vlan1
  • [SW1-G0/0/1]port link-type access //修改成功
第二种方法:
  • [SW1-G0/0/1]undo port trunk allow-pass vlan all //删除所有vlan
  • [SW1-G0/0/1]port trunk allow-pass vlan 1 //补上vlan1,恢复默认
  • [SW1-G0/0/1]port link-type access //修改成功

网站公告

今日签到

点亮在社区的每一天
去签到