0
点赞
收藏
分享

微信扫一扫

DHCP的初步了解

莞尔小迷糊 2022-04-20 阅读 81
网络

DHCP

(仅作为个人笔记,如有雷同,请联系删除。。)

https://baike.baidu.com/item/DHCP/218195?fr=aladdin

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

1、 DHCP(Dynamic Host Configuration Protocol,动态主机配置协议)通常被应用在大型的局域网络环境中,主要作用是集中的管理、分配IP地址,使网络环境中的主机动态的获得IP地址、Gateway地址、DNS服务器地址等信息,并能够提升地址的使用率。

2、 DHCP协议采用客户端/服务器模型[ C/S模式 ],主机地址的动态分配任务由网络主机驱动。当DHCP服务器接收到来自网络主机申请地址的信息时,才会向网络主机发送相关的地址配置等信息,以实现网络主机地址信息的动态配置。DHCP具有以下功能

  1. 保证任何IP地址在同一时刻只能由一台DHCP客户机所使用。
  2. DHCP应当可以给用户分配永久固定的IP地址。
  3. DHCP应当可以同用其他方法获得IP地址的主机共存(如手工配置IP地址的主机)。
  4. DHCP服务器应当向现有的BOOTP客户端提供服务。

3、DHCP有三种机制分配IP地址只有动态分配可以重复使用客户端不再需要的地址

  1. 自动分配方式(Automatic Allocation):DHCP服务器为主机指定一个永久性的IP地址,一旦DHCP客户端第一次成功从DHCP服务器端租用到IP地址后,就可以永久性的使用该地址。

  2. 动态分配方式(Dynamic Allocation):DHCP服务器给主机指定一个具有时间限制的IP地址,时间到期或主机明确表示放弃该地址时,该地址可以被其他主机使用。

  3. 手工分配方式(Manual Allocation):客户端的IP地址是由网络管理员指定的,DHCP服务器只是将指定的IP地址告诉客户端主机。

    DHCP消息的格式是基于BOOTP(Bootstrap Protocol)消息格式的,这就要求设备具有BOOTP中继代理的功能,并能够与BOOTP客户端和DHCP服务器实现交互。BOOTP中继代理的功能,使得没有必要在每个物理网络都部署一个DHCP服务器。RFC 951和RFC 1542对BOOTP协议进行了详细描述。

4、封包格式:DHCP封包在传输层是采用UDP协议,而当 Client传送封包给 Server时,采用的是UDP 68 Port,从 Server传送给 Client则是使用UDP 67 Port。
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Gg9eEcxD-1650381988370)(images/RIq1jjTGsqP713bJVfytRuVhctieSkotASgxkoF5bDc.jpeg)]

OP:若是 client 送给 server 的封包,设为 1 ,反向则为 2。

HTYPE:硬件类别,Ethernet 为 1。

HLEN:硬件地址长度, Ethernet 为 6。

HOPS:若封包需经过 router 传送,每站加 1 ,若在同一网内,为 0。

TRANSACTION ID:DHCP request 时产生的数值,以作 DHCP reply 时的依据。

SECONDS:Client 端启动时间(秒)。

FLAGS:从 0 到 15 共 16 bits ,当 bit 为 1 时表示 server 将以广播方式传送封包给 client ,其余尚未使用。

ciaddr:要是 client 端想继续使用之前取得的IP 地址,则列于这里。

yiaddr:从 server 送回 client 的 DHCP OFFER 与 DHCPACK封包中,此栏填写分配给 client 的 IP 地址。

siaddr:若 client 需要透过网络开机,从 server 送出的 DHCP OFFER、DHCPACK、DHCPNACK封包中,此栏填写开机程序代码所在 server 的地址。

giaddr:若需跨网域进行 DHCP 发放,此栏为 relay agent 的地址,否则为 0。

chaddr:Client 的硬件地址。

sname:Server 的名称字符串,以 0x00 结尾。

file:若 client 需要透过网络开机,此栏将指出开机程序名称,稍后以 TFTP 传送。

5、工作原理:DHCP协议采用UDP作为传输协议,主机发送请求消息到DHCP服务器的67号端口,DHCP服务器回应应答消息给主机的68号端口。

dhcp抓包分析:https://blog.csdn.net/u012359618/article/details/51872678
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-eX1GfKh9-1650381988374)(images/7lyRGez0VY-7IYWRoRRrnfsJRCajXdbhr1pJgX4-i0I.jpeg)]

6、DHCP也可以用在不同的子网上,这时候需要使用称为DHCP中继代理( DHCP Relay, DHCPR,也叫DHCP中继 )的设备。当DHCP客户端与服务器不在同一个子网上,就必须有DHCP中继代理来转发DHCP请求和应答消息。DHCP中继代理的数据转发,与通常路由转发是不同的,通常的路由转发相对来说是透明传输的,设备一般不会修改IP包内容,而DHCP中继代理接收到DHCP消息后,重新生成一个DHCP消息,然后转发出去。DHCP中继主机必须自己具有路由能力,且能将双方的数据报互传对方。

7、Linux上配置dhcp服务器:[ dhcp服务器IP:172.25.254.91 ]

https://blog.csdn.net/sinat_36888624/article/details/78647847

yum install -y dhcp #安装dhcp服务软件
systemctl start dhcpd
cp -p /usr/share/doc/dhcp-4.2.5/dhcpd.conf.example /etc/dhcp/dhcpd.conf #根据dhcp的示例配置文件制作dhcp的配置文件
vim /etc/dhcp/dhcpd.conf

/etc/dhcp/dhcpd.conf文件修改为:

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-LDlEixuT-1650381988376)(images/Seh1zW_MOxSAuR6-ITpLjuGCKO9QgYPo7QEa9uwItkI.png)]
删除:
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-2L1G7NhE-1650381988378)(images/U9Ir6OCXfCs2d3Ibt3tCfbsNDDnfLE1Mnh6GaS5jgVc.png)]
修改:
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-3mwq9F2q-1650381988379)(images/Cce0vI5tHBwkAvGvxS_O-sWlr7qABfZBHOKwrugZGG8.png)]

最后,删除‘33行‘以后的内容!

参数解释:
option domain-name ” test.com “; #设置DNS域
option domain-name-servers 172.25.254.91; #设置DNS服务器地址
default-lease-time 21600; #设置默认租期,单位为秒
max-lease-time 43200; #设置客户端最长租期,单位为秒
subnet #网段
netmask #子网掩码
range #地址池,即可以被分配的ip地址
option routers #分配给客户机的网关

配置完成dhcp服务器后,在同一局域网中的主机上测试,测试主机设置为dhcp自动获取ip,重启网络之后,可以看见测试机已经被分配了ip,子网掩码和网关等信息,而且是按照dhcp服务器中设置的所分配的。

注意:在测试的时候需要先关闭NetworkManager,然后在重启网络,才能获得ip,否则无法获取ip

8、交换机/路由器配置DHCP实战:https://www.cnblogs.com/yu15/p/11381850.html
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-lczdRskt-1650381988383)(images/UDbvOHhcmMqEukbq7hv50qF35eRdWcB22TqodZRails.png)]

  1. 基于全局地址池的DHCP服务器给客户端分配IP地址:
    1. DHCP server配置

      [DHCP server]dhcp enable 
      [DHCP server] ip pool huawei //设置一个名为 huawei 的全局地址池
      [DHCP server-ip-pool-huawei] network 192.168.1.0 mask 24      //设置分配的地址网段
      [DHCP server-ip-pool-huawei] gateway-list 192.168.1.1         //设置分配的网关IP
      [DHCP server-ip-pool-huawei] lease day 10 hour 12 minute 59   //设置地址池IP租用有效期
      [DHCP server-ip-pool-huawei] excluded-ip-address 192.168.1.2  //不参与自动分配的地址,留给DNS使用
      [DHCP server-ip-pool-huawei] dns-list 8.8.8.8 192.168.1.2     //主DNS和备用DNS
      [DHCP server]int g0/0/0
      [DHCP server-GigabitEthernet0/0/0] ip address 192.168.1.1 24
      [DHCP server-GigabitEthernet0/0/0] dhcp select global      //接口下使能全局方式分配地址
      [DHCP server-ip-pool-huawei] static-bind ip-address 192.168.1.3 mac-address 5489-98e1-76a8 //IP地址和MAC地址进行绑定-->为指定mac地址的客户端配置指定的IP:假如PC2的mac为5489-98e1-76a8,则将为PC2分配的IP为192.168.1.3
      
      [DHCP server] dis ip pool name huawei all    // 查看全局地址池的分配信息
      
    2. 在PC1、PC2上设置为DHCP自动获取方

  2. 基于接口的DCHP服务器给客户端分配IP地址:
    1. DHCP server配置

      [DHCP server] int g0/0/0
      [DHCP server-GigabitEthernet0/0/0] ip address 192.168.1.1 24
      [DHCP server-GigabitEthernet0/0/0] dhcp select interface   //使能接口分配地址方式且关联接口地址池
      [DHCP server-GigabitEthernet0/0/0] dhcp server dns-list 192.168.1.3 8.8.8.8 
      [DHCP server-GigabitEthernet0/0/0] dhcp server lease day 10 hour 23 minute 59 
      [DHCP server-GigabitEthernet0/0/0] dhcp server excluded-ip-address 192.168.1.3 
      
    2. 在PC1上设置为DHCP自动获取方式

9、交换机/路由器配置DHCP Relay实战:https://www.cnblogs.com/yu15/p/11381850.html
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-ZOQleEWB-1650381988384)(images/FWmyE6Yekk9fk3miqo-53fJ2bQmbSb68VNETGr7gikY.png)]

  1. DHCP server 配置

    [Huawei] dhcp enable 
    [Huawei] ip pool csy  //设置一个名为 csy 的全局地址池
    [Huawei-ip-pool-csy] network 192.168.1.0 mask 24        //设置分配的地址网段
    [Huawei-ip-pool-csy] gateway-list 192.168.1.1           //设置分配的网关IP
    [Huawei-ip-pool-csy] excluded-ip-address 192.168.1.3    //不参与自动分配的地址,留给DNS使用
    [Huawei-ip-pool-csy] dns-list 192.168.1.3               //DNS
    
    [Huawei]ip pool huawei
    [Huawei-ip-pool-huawei] network 172.16.1.0 mask 24
    [Huawei-ip-pool-huawei] gateway-list 172.16.1.1
    [Huawei-ip-pool-huawei] excluded-ip-address 172.16.1.3
    [Huawei-ip-pool-huawei] dns-list 172.16.1.3
    
    [Huawei-GigabitEthernet0/0/0]ip address 10.1.12.2 24
    
  2. DHCP 中继上配置DHCP服务器组

    [Huawei] dhcp enble 
    [Huawei] dhcp server group csy  //配置DHCP服务器组名
    [Huawei-dhcp-server-group-csy] dhcp-server 10.1.12.2 设定DHCP服务器地址
    
    [Huawei-GigabitEthernet0/0/0] dhcp select relay   //启动DHCP Relay功能
    [Huawei-GigabitEthernet0/0/0] dhcp relay server-select csy //设定DHCP Relay要使用的服务器组
    [Huawei-GigabitEthernet0/0/0] ip address 192.168.1.1 24
    
    [Huawei-GigabitEthernet0/0/2] dhcp select relay  
    [Huawei-GigabitEthernet0/0/2] dhcp relay server-select csy
    [Huawei-GigabitEthernet0/0/2] ip address 172.16.1.1 24
    
    [Huawei-GigabitEthernet0/0/1] ip address 10.1.12.1 24 //配置连接DHCP服务器的接口地址
    
  3. DHCP 服务器上配置静态回程路由

    [Huawei] ip route-static 172.16.1.0 24 10.1.12.1    // 目的地址是要分配的网段,下一跳是dhcp中继
    [Huawei] ip route-static 192.168.1.0 24 10.1.12.1
    
  4. 在PC1、PC4上设置为DHCP自动获取方式ipconfig查看本机IP信息。

  5. DHCP 中继上查看中继器配置信息dis dhcp relay all

  6. DHCP服务器上查看地址池曾经分配过的地址dis ip pool name csy used

举报

相关推荐

SSM的初步了解

JS初步了解this

初步了解java

docker初步了解

HTML初步了解

FFmpeg初步了解

0 条评论