一、DHCP简介 DHCP全称是 Dynamic Host Configuration Protocol﹐中文名为动态主机配置协议,它的前身是 BOOTP,它工作在OSI的应用层,是一种帮助计算机从指定的DHCP服务器获取它们的配置信息的自举协议。 DHCP使用客户端/服务器模式,请求配置信息的计算机叫做DHCP客户端,而提供信息的叫做DHCP的服务器。 DHCP为客户端分配地址的方法有三种:手工配置、自动配置、动态配置。 DHCP最重要的功能就是动态分配。除了IP地址,DHCP分组还为客户端提供其他的配置信息,比如子网掩码。这使得客户端无需用户动手就能自动配置连接网络。


二、DHCP报文 OP:若是client送给server的封包,设为1,反向为2 Htype:硬件类别,ethernet为1 Hlen:硬件长度,ethernet为6 Hops:若数据包需经过router传送,每站加1,若在同一网内,为0 Transaction ID:事务ID,是个随机数,用于客户和服务器之间匹配请求和相应消息 Seconds:由用户指定的时间,指开始地址获取和更新进行后的时间 Flags:从0-15bits,最左一bit为1时表示server将以广播方式传送封包给 client,其余尚未使用 Ciaddr:用户IP地址
Yiaddr:客户IP地址 Siaddr:用于bootstrap过程中的IP地址 Giaddr:转发代理(网关)IP地址
Chaddr:client的硬件地址 Sname:可选server的名称,以0x00结尾
File:启动文件名 Options:厂商标识,可选的参数字段.


三、DHCP配置

配置步骤配置路由器 (1) # 配置接口的 IP 地址。 <H3C> system-view [H3C] interface g 0/0 [[H3C-GigabitEthernet0/0]] ip address 192.168.1.254 24 [[H3C-GigabitEthernet0/0]] quit (2)# 启用 DHCP 服务。 [H3C] dhcp enable (3) # 配置不参与自动分配的 IP 地址。 [H3C] dhcp server forbidden-ip 192.168.1.10 [H3C] dhcp server forbidden-ip 192.168.1.254 (4)# 配置 DHCP 地址池 0,采用动态绑定方式分配 IP 地址。 可分配的网段为 192.168.1.0/24,租约有效期限为 10 天,DNS 服务器地址为 192.168.1.10。 [H3C] dhcp server ip-pool 0 [H3C-dhcp-pool-0] network 192.168.1.0 mask 255.255.255.0 [H3C-dhcp-pool-0] expired day 10 [H3C-dhcp-pool-0] dns-list 192.168.1.10 [H3C-dhcp-pool-0] gateway-list 192.168.1.254 [H3C-dhcp-pool-0] quit


四、配置DHCP中继 DHCP中继 也叫做DHCP中继代理。DHCP中继代理,就是在DHCP服务器和客户端 之间转发DHCP数据包。当DHCP客户端与服务器不在同一个子网上,就必须有DHCP中继代理来转发DHCP请求和应答消息。DHCP中继代理的数据转发,与通常路由转发是不同的,通常的路由转发相对来说是透明传输的,设备一般不会修改IP包内容。而DHCP中继代理接收到DHCP消息后,重新生成一个DHCP消息,然后转发出去。 在DHCP客户端看来,DHCP中继代理就像DHCP服务器;在DHCP服务器看来,DHCP中继代理就像DHCP客户端。 这个任务主要是做DHCP中继。 DHCP服务器在路由器上,而SWA上有3个VLAN,分属于3个不同网段, DHCP的请求报文是广播,因此必须在SWA上设置中继才能够传到路由器。 (1) # 配置路由器。 <H3C> system-view [H3C] interface g 0/0
[[H3C-GigabitEthernet0/0]] ip address 10.1.1.2 30 [[H3C-GigabitEthernet0/0]] quit 启用 DHCP 服务。 [H3C] dhcp enable 配置 DHCP 地址池 1,为来自 192.168.1.0/24网段内的客户端分配地址。 [H3C] dhcp server ip-pool 1 [H3C-dhcp-pool-0] network 192.168.10.0 mask 255.255.255.0 [H3C-dhcp-pool-0] dns-list 8.8.8.8 [H3C-dhcp-pool-0] gateway-list 192.168.10.254 [H3C-dhcp-pool-0] quit 配置 DHCP 地址池 2,为来自 192.168.20.0/24网段内的客户端分配地址。 [H3C] dhcp server ip-pool 2 [H3C-dhcp-pool-0] network 192.168.20.0 mask 255.255.255.0 [H3C-dhcp-pool-0] dns-list 8.8.8.8 [H3C-dhcp-pool-0] gateway-list 192.168.20.254 [H3C-dhcp-pool-0] quit 配置 DHCP 地址池 3,为来自 192.168.30.0/24网段内的客户端分配地址。 [H3C] dhcp server ip-pool 3 [H3C-dhcp-pool-0] network 192.168.30.0 mask 255.255.255.0 [H3C-dhcp-pool-0] dns-list 8.8.8.8 [H3C-dhcp-pool-0] gateway-list 192.168.30.254 [H3C-dhcp-pool-0] quit 配置静态路由到192.168.0.0/16网段 [H3C]ip route-static 192.168.0.0 16 10.1.1.1

配置 SWA交换机 建立vlan,并且配置各接口的 IP 地址。 <H3C> system-view [H3C]vlan 10 [H3C-vlan10]quit [H3C]vlan 20 [H3C-vlan20]quit [H3C]vlan 30 [H3C-vlan30]quit [H3C]inter range g 1/0/1 to g 1/0/5 [H3C-if-range]port link-type access [H3C-if-range]port access vlan 10 [H3C-if-range]quit [H3C]inter range g 1/0/6 to g 1/0/10 [H3C-if-range]port link-type access [H3C-if-range]port access vlan 20 [H3C-if-range]quit [H3C]inter range g 1/0/11 to g 1/0/15 [H3C-if-range]port link-type access [H3C-if-range]port access vlan 30 [H3C-if-range]quit [H3C]inter vlan 10 [H3C-Vlan-interface10]ip add 192.168.10.254 24 [H3C-Vlan-interface10]quit [H3C]inter vlan 20 [H3C-Vlan-interface20]ip add 192.168.20.254 24 [H3C-Vlan-interface20]quit [H3C]inter vlan 30 [H3C-Vlan-interface30]ip add 192.168.30.254 24 [H3C-Vlan-interface30]quit [H3C]inter g 1/0/23 [H3C-GigabitEthernet1/0/23]port link-m r [H3C-GigabitEthernet1/0/23]ip add 10.1.1.1 30 [H3C-GigabitEthernet1/0/23]quit 配置DHCP中继(SWA交换机) 启用 DHCP 服务。 [H3C] dhcp enable 配置 VLAN 接口 10 工作在 DHCP 中继模式。 [H3C] interface vlan-interface 10 [H3C-Vlan-interface10] dhcp select relay 配置 DHCP 服务器的地址。 [H3C-Vlan-interface10] dhcp relay server-address 10.1.1.2 [H3C-Vlan-interface10] quit 配置 VLAN 接口 20 工作在 DHCP 中继模式。 [H3C] interface vlan-interface 20 [H3C-Vlan-interface20] dhcp select relay [H3C-Vlan-interface20] dhcp relay server-address 10.1.1.2 [H3C-Vlan-interface20] quit 配置 VLAN 接口 30 工作在 DHCP 中继模式。 [H3C] interface vlan-interface 30 [H3C-Vlan-interface30] dhcp select relay [H3C-Vlan-interface30] dhcp relay server-address 10.1.1.2 [H3C-Vlan-interface30] quit

五、DHCP snooping配置 开启了DHCP Snooping的设备将用户(DHCP客户端)的DHCP请求报文通过信任接口发送给合法的DHCP服务器。之后设备根据DHCP服务器回应的DHCP ACK报文信息生成DHCP Snooping绑定表。后续设备再从开启了DHCP Snooping的接口接收用户发来的DHCP报文时,会进行匹配检查,能够有效防范非法用户的攻击。 DHCP监听(DHCP Snooping)是一种DHCP安全特性。Cisco交换机支持在每个VLAN基础上启用DHCP监听特性。通过这种特性,交换机能够拦截第二层VLAN域内的所有DHCP报文。 这个任务主要是做DHCP Snooping。 DHCP服务器在路由器上,而SWA上有3个VLAN,分属于3个不同网段, DHCP的请求报文是广播,因此必须在SWA上设置中继才能够传到路由器。 伪DHCP Server已经配置好,将发布172.22.1.1-99的地址池,网关172.22.1.254,DNS 9.9.9.9 (1) # 配置路由器。 <H3C> system-view [H3C] interface g 0/0
[[H3C-GigabitEthernet0/0]] ip address 10.1.1.2 30 [[H3C-GigabitEthernet0/0]] quit 启用 DHCP 服务。 [H3C] dhcp enable 配置 DHCP 地址池 1,为来自 192.168.1.0/24网段内的客户端分配地址。 [H3C] dhcp server ip-pool 1 [H3C-dhcp-pool-0] network 192.168.10.0 mask 255.255.255.0 [H3C-dhcp-pool-0] dns-list 8.8.8.8 [H3C-dhcp-pool-0] gateway-list 192.168.10.254 [H3C-dhcp-pool-0] quit 配置 DHCP 地址池 2,为来自 192.168.20.0/24网段内的客户端分配地址。 [H3C] dhcp server ip-pool 2 [H3C-dhcp-pool-0] network 192.168.20.0 mask 255.255.255.0 [H3C-dhcp-pool-0] dns-list 8.8.8.8 [H3C-dhcp-pool-0] gateway-list 192.168.20.254 [H3C-dhcp-pool-0] quit 配置 DHCP 地址池 3,为来自 192.168.30.0/24网段内的客户端分配地址。 [H3C] dhcp server ip-pool 3 [H3C-dhcp-pool-0] network 192.168.30.0 mask 255.255.255.0 [H3C-dhcp-pool-0] dns-list 8.8.8.8 [H3C-dhcp-pool-0] gateway-list 192.168.30.254 [H3C-dhcp-pool-0] quit 配置静态路由到192.168.0.0/16网段 [H3C]ip route-static 192.168.0.0 16 10.1.1.1

配置 SWA交换机 建立vlan,并且配置各接口的 IP 地址。 <H3C> system-view [H3C]vlan 10 [H3C-vlan10]quit [H3C]vlan 20 [H3C-vlan20]quit [H3C]vlan 30 [H3C-vlan30]quit [H3C]inter range g 1/0/1 to g 1/0/5 [H3C-if-range]port link-type access [H3C-if-range]port access vlan 10 [H3C-if-range]quit [H3C]inter range g 1/0/6 to g 1/0/10 [H3C-if-range]port link-type access [H3C-if-range]port access vlan 20 [H3C-if-range]quit [H3C]inter range g 1/0/11 to g 1/0/15 [H3C-if-range]port link-type access [H3C-if-range]port access vlan 30 [H3C-if-range]quit [H3C]inter vlan 10 [H3C-Vlan-interface10]ip add 192.168.10.254 24 [H3C-Vlan-interface10]quit [H3C]inter vlan 20 [H3C-Vlan-interface20]ip add 192.168.20.254 24 [H3C-Vlan-interface20]quit [H3C]inter vlan 30 [H3C-Vlan-interface30]ip add 192.168.30.254 24 [H3C-Vlan-interface30]quit [H3C]inter g 1/0/23 [H3C-GigabitEthernet1/0/23]port link-m r [H3C-GigabitEthernet1/0/23]ip add 10.1.1.1 30 [H3C-GigabitEthernet1/0/23]quit 配置DHCP中继(SWA交换机) 启用 DHCP 服务。 [H3C] dhcp enable 配置 VLAN 接口 10 工作在 DHCP 中继模式。 [H3C] interface vlan-interface 10 [H3C-Vlan-interface10] dhcp select relay 配置 DHCP 服务器的地址。 [H3C-Vlan-interface10] dhcp relay server-address 10.1.1.2 [H3C-Vlan-interface10] quit 配置 VLAN 接口 20 工作在 DHCP 中继模式。 [H3C] interface vlan-interface 20 [H3C-Vlan-interface20] dhcp select relay [H3C-Vlan-interface20] dhcp relay server-address 10.1.1.2 [H3C-Vlan-interface20] quit 配置 VLAN 接口 30 工作在 DHCP 中继模式。 [H3C] interface vlan-interface 30 [H3C-Vlan-interface30] dhcp select relay [H3C-Vlan-interface30] dhcp relay server-address 10.1.1.2 [H3C-Vlan-interface30] quit 配置DHCP Snooping(SWB交换机) 启用 DHCP Snooping 功能。 [H3C] dhcp snooping enable 设置 GigabitEthernet1/0/21 端口为信任端口。 [H3C] interface GigabitEthernet 1/0/21 [H3C-GigabitEthernet1/0/21] dhcp snooping trust [H3C-GigabitEthernet1/0/21] quit 在 GigabitEthernet1/0/1 上启用 DHCP Snooping 表项功能。 [H3C] interface GigabitEthernet 1/0/1 [H3C-GigabitEthernet1/0/1] dhcp snooping binding record [H3C-GigabitEthernet1/0/1] quit