DHCP

182 阅读6分钟

DHCP

DNCP原理

  • 一台DHCP给不同网端分地址,动态主机配置协议
  • DHCP,Dynamic Host Configuration Protocol,动态主机配置协议,是一种可以使主机开机后自动获取IP地址、子网掩码、DNS等信息的技术手段。应用DHCP技术,不仅可以简化用户的上网流程,方便用户上网,如果从企业的角度来说,还可以实现对公司内部网络用户的管理。
  • DHCP是一种C/S模式的网络协议,要想实现DHCP功能,首先主机必须支持DHCP Client功能,其次网络中还必须拥有一台DHCP服务器,并且主机和该服务器之间必须能够正常通信。因为DHCP中有些报文时以广播的形式,因此DHCP Server和DHCP Client一般必须要在一个子网内。
  • DHCP是一种C/S模式的网络协议,要想实现DHCP功能,首先主机必须支持DHCP Client功能,其次网络中还必须拥有一台DHCP服务器,并且主机和该服务器之间必须能够正常通信。因为DHCP中有些报文是以广播的形式,因此DHCP Server和

DHCP工作原理

image.png

1.首先客户机加入到当前网络中是没有地址的,他会发送一个dhcp discover 广播报文 来寻找dhcp服务器

2.服务器接收到discover 报文 会回复offer (ip地址(合法地址地址中挑出),子网掩码,dns地址,网关等信息)

3.客户机收到 offer 以后 会发送一个 request 的报文 告诉服务器 我收到了你的 offer,并且我很满意你的地址,我就使用它了,不要再分配给别人了

4.当服务器收到 request 的报文 以后 好了解 会发送一个ack 报文确认消息告诉客户端 你放心使用,不会再给别人分配你的ip地址

DHCP报文

  1. DHCP DISCOVER:客户端到服务器
  2. DHCP OFFER :服务器到客户端
  3. DHCP REQUEST:客户端到服务器
  4. DHCPACK :服务器到客户端
  5. .DHCPNAK:服务器到客户端通知用户无法分配合适的IP地址
  6. DHCP DECLINE :客户端到服务器,指示地址已被使用
  7. DHCP RELEASE:客户端到服务器,放弃网络地地口取消剩余的租约时间
  8. DHCP INFORM:客户端到服务器,客户端如果需要从DHCP服务器端获取更为单ffl的配置信息,则 发送Inform报文向服务器进行请求,极少用到

DHCP的好处

  • 减少管理员的工作量
  • 避免输入错误的可能
  • 避免ip地址冲突
  • 当更改ip地址段时,不需要重新配置每个用户的ip地址
  • 提高了ip地址的利用率
  • 方便客户端的配置

DHCP的分配方式

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

什么是DHCP的租约过程

客户机从DHCP服务器获取ip地址的过程称作DHCP的租约过程

DHCP的租约步骤

1665846376008.jpg 注意:客户端收到的第一个回复报文是谁发出来的,就认谁做老大

DHCP中继原理

一般情况下,DHCP Server和DCHP Client都必须处于同一个网络中,这是因为DHCP的报文有些是以广播的形式发送,如果不位于同一个网络,则这些广播的报文就无法跨越三层路由设备传输。 而在有些情况下,DHCP服务必须跨越不同的网络,这时,我们就可以配置DHCP中继服务。 DHCP中继,其实就是在与DHCP Server不同而又需要申请DHCP服务的网络内,设置一个中继器,中继器在该网络中代替DHCP Server服务器接收DHCP Client的请求,并将DHCP Client发给DHCP Server的DCHP报文,以单播的形式发送给DHCP Server。DHCP Server在收到由DHCP发送来的DHCP 报文后,同样会把响应的DHCP报文发送给DHCP 中继。这样,DHCP其实是充当了一个中间人的作用,起到了在不同的网络中运行DHCP的目的。

  • 当企业的内部网络规模较大时,通常被划分为多个不同的子网,网络内配置了VLAN,VLAN能隔离广播,而DHCP协议使用广播
  • DHCP服务器在VLAN100中,就只有VLAN100内的客户机能从在此获取ip地址

两种解决方法

  • 为每个网段安装一台DHCP服务器,但这种方式存在资源上的浪费,而且不利于集中管理。
  • 在连接不同网段的设备上开启DHCP中继功能,将DHCP这种特殊的广播信息在VLAN之间转发,让其他VLAN的客户机也能从DHCP服务器获得IP地址。

拍错思路

客户端:

某一个服务,无法访问

  • ping一下看通不通
  • telnet一下看对面ip地址的端口号,开没开
  • telnet没问题
  • 看配置文件或者其他的

服务端:

  • ss:看一下端口开没开
  • 再看一下配置文件或者其他的

实验

DHCP动态获取ip地址

环境

一台centos7虚拟机,一台windows机器

实验开始

实验环境

  • win10机器:仅主机模式
  • 服务器:192.168.247.13(仅主机模式)
  1. 安装软件

image.png 2. 将虚拟机的网卡调整为仅主机模式,并且将en33的网段与虚拟机的仅主机网段调整一致

image.png

image.png

image.png

image.png

image.png

image.png 再次连接外部终端

出现连接不上问题

如果连不上,查看物理机的网络配置上的vmnet1网段与虚拟机的仅主机模式的网段是否相同

image.png

image.png

image.png

image.png

image.png

  1. 配置

image.png 注意:编辑配置文件时候,一定要备份,放置不小心删除等问题出现

image.png

image.png

image.png 4. 打开一台win10的虚拟机,并将网卡调成仅主机模式

image.png

image.png 5. 在win10里面打开cmd命令行编辑

  1. 可以在搜索栏里面直接搜索cmd打开 1666366253183.jpg
  2. 也可以使用win + r打开cmd 命令行打开

image.png 6. 进入cmd后

image.png

image.png

image.png

image.png 此地址在配置的DHCP配置文件中配置的范围内,才算实验成功

image.png

网卡获取地址

在win10的cmd里面获取地址,获取一个地址,如果获取的这个地址被使用后,再次获取地址,就是DHCP配置文件范围中的其他地址;

如果获取的地址没有被使用,那么再次获取地址时候,还是会出现这个地址,直到这个地址被使用