问题1:什么是DHCP?
DHCP (Dynamic Host Configuration Protocol,动态主机配置协议)是动态向Internet终端提供配置参数协议。在终端提出申请之后,DHCP可以向终端提供IP地址、网关、DNS服务器地址等参数。
问题2:采用DHCP的好处:
减少错误:通过配置DHCP,把手工配置IP地址所导致错误减少到最低,如已分配IP地址再次分配给另一设备所造成地址冲突将大大减少。
减少网络管理:TCP/IP配置是集中化和自动完成,不需要网络管理员手工配置。使用DHCP选项可以自动给客户机分配范围内的TCP/IP配置值。
问题3:DHCP的结构:
DHCP采用客户机/服务器结构。
DHCP服务器拥有一个IP地址池,启用DHCP客户机登录网络时,从那里租借一个IP地址,不使用IP地址自动返回地址池。
问题4:DHCP的工作流程:
DHCP服务的工作共分为四个阶段:发现阶段、提供阶段、选择阶段、确认阶段。
问题5:DHCP报文种类及其格式。
报文种类:
DHCP DISCOVER : 客户机广播发现可用的DHCP服务器
DHCP OFFER :服务器响应客户机DHCP DISCOVER报文,向客户机提供配置参数
DHCP REQUEST :
a)客户机向服务器申请地址及其他配置参数
b)客户机重新启动后,确认原来地址及参数正确性
c)客户机向服务器申请延长地址及参数使用期限
DHCP ACK : 服务器向客户机发送所需分配地址及参数
报文格式:
OP: 操作码 (1=bootrequest ,2=bootreply); Htype: 硬件地址类型 (1=10mb ethernet)
Hlen: 硬件地址长度 (ethernet 为10) Hops: 客户机设置为0,当使用多个DHCP Relay时可变
Xid: 传输ID,在同服务器的交互中,由客户机所选择 Secs: 客户机所使用地址,在最近一次地址获取/地址更新后所经过时间
Flags: 最左边一位是广播位,其余各位置0
问题6:DHCP中继工作原理:
Client 使用UDP67号端口在Subnet 上广播DHCP-DISCOVER。
启用DHCP中继路由器,收到DHCP-DISCOVER后,检测BOOTP消息头中网关IP地址。
Server收到消息,为服务器可用于提供IP地址租约DHCP作用域,检查其网关IP地址字段。
? 如果服务器有多个DHCP作用域,网关IP地址字段(GIADDR)中地址标识将从哪个DHCP作用域提供IP地址租约。当Server收到DHCP-DISCOVER消息,处理IP地址租约(DHCP-OFFER),以单播方式发给在网关地址(GIADDR)字段中标识中继代理。
? 路由器将地址租约(DHCPOFFER)数据包,以广播方式转发给客户端。此时客户端地址仍不知道,必须还在本地子网广播。
当Client 收到DHCP-OFFER后,又以广播方式发送DHCP-REQUEST包。
中继路由器收到DHCP-REQUEST包后,以单播方式发送给Server。
Server收到DHCP-REQUEST后,以单播方式回复DHCP-ACK给网关标识字段中标识中继代理。
问题7:DHCP snooping (DHCP侦听)
DHCP侦听简介:当交换机开启了 DHCP-Snooping后,会对DHCP报文进行侦听,并可以从接收到的DHCP Request或DHCP Ack报文中提取并记录IP地址和MAC地址信息。另外,DHCP-Snooping允许将某个物理端口设置为信任端口或不信任端口。信任端口可以正常接收并转发DHCP Offer报文,而不信任端口会将接收到的DHCP Offer报文丢弃。这样,可以完成交换机对假冒DHCP Server的屏蔽作用,确保客户端从合法的DHCP Server获取IP地址。
DHCP侦听的作用:
? dhcp-snooping的主要作用就是隔绝非法的dhcp server,通过配置非信任端口。
与交换机DAI的配合,防止ARP病毒的传播。
? 建立和维护一张dhcp-snooping的绑定表,这张表一是通过dhcp ack包中的ip和mac地址生成的,二是可以手工指定。这张表是后续DAI(dynamic arp inspect)和IPSource Guard 基础。这两种类似的技术,是通过这张表来判定ip或者mac地址是否合法,来限制用户连接到网络的。
? 通过建立信任端口和非信任端口,对非法DHCP服务器进行隔离,信任端口正常转发DHCP数据包,非信任端口收到的服务器响应的DHCP offer和DHCPACK后,做丢包处理,不进行转发。
问题8: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-1] network 192.168.10.0 mask 255.255.255.0
[H3C-dhcp-pool-1] dns-list 8.8.8.8
[H3C-dhcp-pool-1] gateway-list 192.168.10.254
[H3C-dhcp-pool-1] quit
配置 DHCP 地址池 2,为来自 192.168.20.0/24网段内的客户端分配地址。
[H3C] dhcp server ip-pool 2
[H3C-dhcp-pool-2] network 192.168.20.0 mask 255.255.255.0
[H3C-dhcp-pool-2] dns-list 8.8.8.8
[H3C-dhcp-pool-2] gateway-list 192.168.20.254
[H3C-dhcp-pool-2] quit
配置 DHCP 地址池 3,为来自 192.168.30.0/24网段内的客户端分配地址。
[H3C] dhcp server ip-pool 3
[H3C-dhcp-pool-3] network 192.168.30.0 mask 255.255.255.0
[H3C-dhcp-pool-3] dns-list 8.8.8.8
[H3C-dhcp-pool-3] gateway-list 192.168.30.254
[H3C-dhcp-pool-3] quit
配置静态路由到192.168.0.0/16网段
[H3C]ip route-static 192.168.0.0 16 10.1.1.1
(2)# 配置 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]
[H3C]inter g 1/0/23
[H3C-GigabitEthernet1/0/23]port link-t
[H3C-GigabitEthernet1/0/23]ip add 10.1.1.1 30
[H3C-GigabitEthernet1/0/23]quit
(3)#配置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
(4)#配置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
原文地址:https://blog.51cto.com/14221438/2382214