55
HL-009 DHCP 协协 ISSUE 1.1 江江江江江江江江江江江江 西

HL-009 DHCP 协议

Embed Size (px)

DESCRIPTION

HL-009 DHCP 协议. ISSUE 1.1. 江西陶瓷工艺美术职业技术学院. 课程目标. 学习完本课程,您应该能够:. 了解 DHCP 协议产生的原因和解决的问题 理解 DHCP 协议的工作原理 理解 DHCP 相关安全特性 掌握华为 3Com 网络设备上关于 DHCP 协议的配置. 目录. DHCP 协议产生原因 DHCP 协议介绍 DHCP 协议实现原理 DHCP 安全特性介绍 DHCP 配置及实验. 使用 DHCP 协议就 OK 了. 小张,我需要固定的 IP 地址. DHCP 协议产生的原因. - PowerPoint PPT Presentation

Citation preview

Page 1: HL-009  DHCP 协议

HL-009 DHCP 协议ISSUE 1.1

江西陶瓷工艺美术职业技术学院

Page 2: HL-009  DHCP 协议

了解 DHCP 协议产生的原因和解决的问题

理解 DHCP 协议的工作原理

理解 DHCP 相关安全特性

掌握华为 3Com 网络设备上关于 DH

CP 协议的配置

课程目标学习完本课程,您应该能够:

Page 3: HL-009  DHCP 协议

DHCP 协议产生原因

DHCP 协议介绍

DHCP 协议实现原理

DHCP 安全特性介绍

DHCP 配置及实验

目录

Page 4: HL-009  DHCP 协议

www.h3c.com 4

DHCP 协议产生的原因

每个人都要我亲自去分配 IP 地址,太烦了。

每个人都要我亲自去分配 IP 地址,太烦了。

小张,我需要固定的 IP 地址

小张,我需要固定的 IP 地址

唉,我的地址怎么又和别人冲突了??

唉,我的地址怎么又和别人冲突了??

怎么办 ?

怎么办 ?

使用 DHCP 协议就 OK了

Page 5: HL-009  DHCP 协议

DHCP 协议产生原因

DHCP 协议介绍

DHCP 协议实现原理

DHCP 安全特性介绍

DHCP 配置及实验

目录

Page 6: HL-009  DHCP 协议

www.h3c.com 6

DHCP 协议介绍

DHCP ( Dynamic Host Configuration Protocol )是在 BOOTP ( Bootstrap Protocol )的基础上提出的

作用是在 TCP/IP 网络中向主机提供配置信息采用 Client/Server 模式

由 DHCP Client 向 DHCP Server 提出配置申请, DHCP Server 根据策略返回相应配置信息。

DHCP 报文采用 UDP 进行封装,识别采用端口号DHCP Client 使用 68 , DHCP Server 使用 67 。

Page 7: HL-009  DHCP 协议

www.h3c.com 7

DHCP 协议特点

整个配置过程自动实现, DHCP Client 端无需配置所有配置信息由 DHCP Server 统一管理通过 IP 地址租期管理,提高 IP 地址的使用效率采用广播实现报文交互,报文一般不能跨网段,如

果需跨网段,需要使用 DHCP Relay 技术实现

Page 8: HL-009  DHCP 协议

DHCP 协议产生原因

DHCP 协议介绍

DHCP 协议实现原理

DHCP 安全特性介绍

DHCP 配置及实验

目录

Page 9: HL-009  DHCP 协议

www.h3c.com 9

DHCP 协议系统组成

DHCP ClientDHCP Client 通过 DHCP 协议来获得网络配置参数 通常是一台主机或网络设备

DHCP ServerDHCP Server 提供网络设置参数给 DHCP Client通常是一台服务器或网络设备

DHCP Relay在 DHCP Client 和 DHCP Server 之间跨网段转发 DHCP

消息通常是网络设备

Page 10: HL-009  DHCP 协议

www.h3c.com 10

DHCP 地址分配种类

Automatic Allocation为连接到网络的某些主机分配 IP 地址,该地址将长期由

该主机使用Dynamic Allocation

DHCP Server 为 DHCP Client 指定一个 IP 地址,同时为此地址规定了一个租用期限

如果租用时间到期, DHCP Client 必须重新申请地址Manual Allocation

网络管理员为某些少数特定的主机绑定固定 IP 地址,且地址不会过期

Page 11: HL-009  DHCP 协议

www.h3c.com 11

DHCP 协议分配地址的优先级 DHCP Server 数据库中与该 DHCP Client 的 MAC 地址

静态绑定的 IP 地址 该 DHCP Client 曾经使用过的地址 顺序查找 DHCP 地址池中可供分配的 IP 地址,最先找到

的可用 IP 地址,优先级高 如果未找到可用的 IP 地址,则依次查询超过租期、发生

冲突的 IP 地址 找不到则报告错误

Page 12: HL-009  DHCP 协议

www.h3c.com 12

DHCP 的报文组成

hops(1)hlen(1)

options (variable)

file(128)

sname(64)

chaddr(16)

giaddr(4)

siaddr(4)

yiaddr(4)

ciaddr(4)

flags(2)secs(2)

xid(4)

htype(1)op(1)

Page 13: HL-009  DHCP 协议

www.h3c.com 13

DHCP 报文中各个部分的含义

八位中最左边的一位置位代表广播,反之代表单播。flags

由 DHCP Client 填充,从 DHCP Client 开始获得地址或地址续借后所使用了的秒数。secs

Transaction ID ,由 DHCP Client 选择的一个随机数,被 DHCP Server 和 DHCP Client 用来在它们之间交流 messages 和 responses 。由客户设置并由 DHCP Server 返回的 32 bit 整数。客户用它对请求和应答进行匹配。

xid

DHCP Client 设置为 0 ,也能被一个代理服务器设置hops

hardware address length , 6 字节。hlen

hardware address type , 1 表示 10 Mb/s 的以太网,这和 ARP 请求或应答中同名字段表示的含义相同。htype

message op code / message type“1“ 代表 BOOTREQUEST ”2“ 代表 BOOTREPLY

op

含义字段

Page 14: HL-009  DHCP 协议

www.h3c.com 14

DHCP 报文中各个部分的含义

可选参数域,定义的选项列表。 DHCP “报文 options”域的头四个八位字节的十进制值分别为 99、 130、 83、 99 “, options”域的剩余项包括一列 tagged参数。 RFC 2132中介绍了全部的 option的定义。

options

Boot file name,是一个空值终止串。 DHCPDISCOVER “中是 generic”名字或空字符; DHCPOFFER提供有效的目录路径全名。file

“ ”服务器主机名 字段是一个空值终止串,由服务器填写。sname

Client hardware addresschaddr

DHCP Relay代理的 IP地址。giaddr

bootstrap中,下一个 Server的 IP地址。siaddr

‘your’( Client) IP addressyiaddr

Client IP address,只有 DHCP Client已经获得 IP地址,并且能响应 ARP requests时,才能被填充。ciaddr

含义字段

Page 15: HL-009  DHCP 协议

www.h3c.com 15

DHCP 协议的 8 种报文

DHCPDISCOVER此报文是 DHCP Client 开始 DHCP 过程的第一个报文

DHCPOFFER此报文是 DHCP Server 对 DHCP DISCOVER 报文的响

应DHCPREQUEST

此报文是 DHCP Client 开始 DHCP 过程中对 DHCPOFFER 报文的回应,或者是 DHCP Client 续延 IP 地址租期时发出的报文

DHCPDECLINE当 DHCP Client 发现 DHCP Server 分配给它的 IP 地址

无法使用,将发出此报文,通知 DHCP Server 禁止使用该 IP 地址

Page 16: HL-009  DHCP 协议

www.h3c.com 16

DHCPACKDHCP Server 对 DHCP Client 的 DHCPREQUEST 报文

的确认响应报文DHCPNAK

DHCP Server 对 DHCP Client 的 DHCPREQUEST 报文的拒绝响应报文

DHCPRELEASEDHCP Client 主动释放 DHCP Server 分配给它的 IP 地址

的报文 DHCPINFORM

DHCP Client 已经获得了 IP 地址,发送此报文,只是为了从 DHCP Server 处获取其他的一些网络配置信息

DHCP 协议的 8 种报文(续)DHCP 协议的 8 种报文(续)

Page 17: HL-009  DHCP 协议

www.h3c.com 17

DHCP 的通信过程

DHCPDISCOVER

DHCPOFFER

DHCPREQUEST

DHCPACK/NAK

DHCPDECLINE

DHCP Client DHCP Server

IP 网

Page 18: HL-009  DHCP 协议

www.h3c.com 18

DHCP 的通信过程分析

Page 19: HL-009  DHCP 协议

www.h3c.com 19

DHCP 续订租约

T

DHCPREQUEST ( UNICAST )DHCP Client DHCP Server

DHCPACK ( UNICAST )T1: 使用时间达到租期的 50%

DHCPREQUEST ( BROADCAST )

DHCPACK ( UNICAST )T2: 使用时间达到租期的 87.5%

IP 网

Page 20: HL-009  DHCP 协议

www.h3c.com 20

DHCP Relay 的通信过程

DHCPDISCOVER DHCPDISCOVER

DHCPOFFERDHCPOFFER

DHCPREQUEST DHCPREQUEST

DHCPACK/NAKDHCPACK/NAK

DHCPDECLINE

Unicast 或Broadcast

Unicast 或Broadcast

DHCP Client 和 DHCP Relay 间的所有报文,从初始状态获取 IP 地址时, DISCOVER 和 REQUEST都是广播的, OFFER 和 ACK 根据请求报文中的广播标志位来决定广播还是单播,如果请求标注位为广播,则 OFFER 和 ACK 就是广播的,否则就是单播的。

DHCP Client DHCP Server

子网 1 子网 2

Page 21: HL-009  DHCP 协议

www.h3c.com 21

DHCP Relay 的通信过程分析

Page 22: HL-009  DHCP 协议

www.h3c.com 22

DHCP Relay 的通信过程分析(续)

Page 23: HL-009  DHCP 协议

www.h3c.com 23

DHCP Relay 续订租约

DHCP Client DHCP Server

DHCPACK ( UNICAST )

DHCPREQUEST(BROADCAST)

DHCPREQUEST ( UNICAST )

DHCPREQUEST(UNICAST)

DHCPACK ( UNICAST )

DHCPACK ( UNICAST )

T

T1: 使用时间达到租期的 50%

T2: 使用时间达到租期的 87.5%

子网 1 子网 2

Page 24: HL-009  DHCP 协议

www.h3c.com 24

当 giaddr 字段为空的时候, DHCP Server 返回DHCPNAK 报文采用的都是广播方式

如果 giaddr 字段非空,那么 DHCP Server 就会采用单播的方式把返回报文发送给 giaddr 字段所代表的 IP 地址

如果 giaddr 字段为空并且 ciaddr 非空,那么 DHCP Server 也会采用单播的方式把 DHCPOFFER和 DHCPACK 报文发送给 ciaddr 字段所代表的 IP 地址

DHCP 报文的广播与单播

Page 25: HL-009  DHCP 协议

www.h3c.com 25

DHCP 报文的广播与单播(续)如果 giaddr 和 ciaddr 字段都为空,并且 flags 字段

中的广播位置位,那么 DHCP Server 返回 DHCPOFFER 和 DHCPACK 报文的时候就采用广播方式。

如果广播位没有置位,那么 DHCP Server 就把这些报文单播给 yiaddr 代表的 IP 地址

如果在某些情况下不能使用单播,那么 DHCP Server 就采用广播方式

Page 26: HL-009  DHCP 协议

DHCP 协议产生原因

DHCP 协议介绍

DHCP 协议实现原理

DHCP 安全特性介绍

DHCP 配置及实验

目录

Page 27: HL-009  DHCP 协议

www.h3c.com 27

DHCP 的安全特性

DHCP Relay 地址合法性检查DHCP SnoopingDHCP Option 82

Page 28: HL-009  DHCP 协议

www.h3c.com 28

DHCP Relay 地址合法性检查DHCP Relay 安全特性维护了一张 IP 和 MAC 的对应表用户通过 DHCP Relay 申请 IP 地址时,会增加记录表项启了 DHCP Relay 安全特性后, ARP 模块就会根据这张

对应表对 IP 地址和 MAC 地址匹配的合法性检查如果 IP 和 MAC 对应的关系在表中找不到匹配项时,就丢

弃 ARP 报文如果作 DHCP Relay 的设备不是默认网关,则报文的转发

不受影响

Page 29: HL-009  DHCP 协议

www.h3c.com 29

DHCP Relay 地址合法性检查

192.168.0.2192.168.0.1

192.168.1.2

192.168.0.600EF-AABB-CF08

192.168.0.500EF-AABB-CF08

192.168.3.0

Check

ARP 请求

Page 30: HL-009  DHCP 协议

www.h3c.com 30

DHCP Snooping

DHCP Snooping 设备可以对 DHCP Client 与 DHCP Server 端交互的 DHCP 协议报文进行监听

设备可以对自身的端口属性进行配置,将连接合法 DHCP Server 的端口设为信任端口,其余端口设为非信任端口

信任端口可以正常转发 DHCPOFFER 及 DHCPACK 报文,而非信任端口将拒绝这些报文

Page 31: HL-009  DHCP 协议

www.h3c.com 31

Legal DHCP server

DHCP Client

Illegal DHCP server

Legal DHCP INFO

Illegal DHCP INFO

Legal DHCP INFO

DHCP Snooping

Page 32: HL-009  DHCP 协议

www.h3c.com 32

DHCP Option 82

DHCP Option 82称为 DHCP 报文中的中继代理信息选项( Relay Agent Information Option )

DHCP Relay 设备可以同支持 Option 82 的 DHCP Server共同配合,实现 DHCP Client 合法性检查、可控静态 IP 地址分配、可控 DHCP Relay 设备部署等

Option 82 中可以包含最多 255 个 sub-option ,若定义了 option 82 ,至少要定义一个 sub-option 。

目前 option 82 中常用的是 sub-option 1 、 sub-option 2 和 sub-option 5 。

Page 33: HL-009  DHCP 协议

www.h3c.com 33

DHCP Option 82 报文结构

Code标识了中继代理信息选项的序号。本报文中序号为 82 ,

即 Option 82Len

指明 Agent Information Field 的长度Agent Information Field

指定了使用的 sub-option

Code LEN i1 i2 ...... iN

Agent Information Field

Page 34: HL-009  DHCP 协议

www.h3c.com 34

DHCP Option 82 子选项报文结构

SubOpt1 表示代理电路 ID ( Circuit ID )子项2 表示代理远程 ID ( Remote ID )子项5 表示链路选择( Link Selection )子项

Len标识 Sub-option Value 的长度。

Sub-option Valuesub-option 的值

SubOpt LEN i1 i2 ...... iN

Sub-option Value

Page 35: HL-009  DHCP 协议

www.h3c.com 35

DHCP Option 82子选项介绍

sub-option 1代理电路 ID ( Circuit ID )子项。

sub-option 2代理远程 ID ( Remote ID )子项。

sub-option 5链路选择( Link Selection )子项。

Page 36: HL-009  DHCP 协议

www.h3c.com 36

DHCP Relay支持 Option 82 时的工作机制

DHCP Client 在初始化时以广播的形式发送请求报文

DHCP Relay 设备检查报文中是否已有 Option 8

2选项,进行相应的处理如果已有 Option 82 ,按照配置的策略对该报文进行

处理,然后将请求报文转发给 DHCP Server

若没有 Option 82 选项,则将 Option 82 选项添加到报文中后转发给 DHCP Server

Page 37: HL-009  DHCP 协议

www.h3c.com 37

DHCP Server收到转发来的 DHCP 请求报文后,记录报文中 Option选项信息,按照既定的针对Option 82 的安全规则进行处理

DHCP Server 将带着 DHCP 配置信息以及 Optio

n 82 信息的报文发给 DHCP RelayDHCP Relay收到 DHCP Server 的返回报文后,剥离报文中的 Option 82 信息

DHCP Relay 将带有 DHCP 配置信息的报文转发给 DHCP Client

DHCP Relay支持 Option 82 时的工作机制(续)

Page 38: HL-009  DHCP 协议

www.h3c.com 38

DHCP 协议产生原因

DHCP 协议介绍

DHCP 协议实现原理

DHCP 安全特性介绍

DHCP 配置及实验

目录

Page 39: HL-009  DHCP 协议

www.h3c.com 39

DHCP Server 配置任务

启动 DHCP 服务配置本地 DHCP Server 的地址分配方式创建 DHCP 全局地址池(全局地址池方式必配)配置动态分配的 IP 地址范围(全局地址池方式必

配)配置 DHCP Client 的默认网关 IP 地址(全局地址池

方式必配)配置 DHCP Client 的 DNS 服务地址(选配)配置地址池中 IP 地址的租期(选配)

Page 40: HL-009  DHCP 协议

www.h3c.com 40

DHCP Server 配置

启动 DHCP服务启动 DHCP 服务,在系统视图下配置 dhcp enable

Page 41: HL-009  DHCP 协议

www.h3c.com 41

DHCP Server 配置(续)

配置本地 DHCP Server 从全局地址池进行地址分配配置当前 VLAN 接口从全局地址池分配地址,在接口视图下配置 dhcp select global 配置多个 VLAN 接口从全局地址池分配地址 ,在系统视图下配置 dhcp select global { interface vlan-interface vlan_id [ to vlan-inter

face vlan_id ] | all } 配置本地 DHCP Server 从接口地址池进行地址分配

配置从当前接口地址池分配地址,在接口视图下配置 dhcp select interface 配置多个 VLAN 接口从接口地址池分配地址,在系统视图下配置 dhcp select interface { interface vlan-interface vlan_id [ to vlan-in

terface vlan_id ] | all }

Page 42: HL-009  DHCP 协议

www.h3c.com 42

DHCP Server 配置(续)

创建 DHCP 全局地址池请在系统视图下进行下列配置 dhcp server ip-pool pool-name

配置动态分配的 IP 地址范围请在 DHCP 地址池视图下进行下列配置 network ip-address [ mask netmask ]

配置 DHCP Client 的默认网关 IP 地址请在 DHCP 地址池视图下进行下列配置 gateway-list ip-address [ ip-address ]

Page 43: HL-009  DHCP 协议

www.h3c.com 43

DHCP Server 配置(续)

配置 DHCP Client 的 DNS服务器地址请在 DHCP 地址池视图下进行下列配置 dns-list ip-address&<1-8>

配置全局地址池中 IP 地址的租期请在 DHCP 地址池视图下进行下列配置 expired { day day [ hour hour [ minute minute ] ] | unli

mited } 配置 VLAN接口 DHCP 地址池的 IP 地址租用有效期限 请在 VLAN 接口视图下进行下列配置 dhcp server expired { day day [ hour hour [ minute mi

nute ] ] | unlimited }

Page 44: HL-009  DHCP 协议

www.h3c.com 44

DHCP Server显示和调试

查看 DHCP Server 的冲突相关信息display dhcp server conflict { all | ip ip-address }

查看 DHCP 地址池的可用地址范围display dhcp server free-ip

查看 DHCP 地址池中地址绑定信息display dhcp server ip-in-use { ip ip-address | pool [

pool-name ] | interface [ vlan-interface vlan_id ] | all }查看 DHCP Server 的统计信息

display dhcp server statisticsDHCP server 的调试

debugging dhcp server

Page 45: HL-009  DHCP 协议

www.h3c.com 45

DHCP Relay 配置任务

启动 DHCP服务

配置接口工作在 DHCP Relay 模式

Page 46: HL-009  DHCP 协议

www.h3c.com 46

DHCP Relay 配置

配置接口工作在 DHCP Relay 模式配置 DHCP Server 组中 DHCP Server 的地址,请在系

统视图下进行下列配置 dhcp-server groupNo ip ip-address1 [ ipaddress-list ] 配置接口与 DHCP Server 组的归属关系 ,请在接口视图

下进行下列配置 dhcp-server groupNo

Page 47: HL-009  DHCP 协议

www.h3c.com 47

DHCP Relay显示和调试

显示 DHCP Server 组的相关信息 display dhcp-server groupNo

显示 VLAN接口对应的 DHCP Server 组的相关信息 display dhcp-server interface vlan-interface vlan-id

显示 DHCP Server 组的合法用户地址表中所有用户的地址信息 display dhcp-security [ ip-address | dynamic | static

| tracker ] DHCP Relay 的调试

debugging dhcp-relay

Page 48: HL-009  DHCP 协议

www.h3c.com 48

DHCP 安全特性配置任务

配置 DHCP Relay 地址合法性检查

配置 DHCP Snooping功能

配置 DHCP Relay支持 Option 82

Page 49: HL-009  DHCP 协议

www.h3c.com 49

DHCP 安全特性配置

配置 DHCP Relay 地址合法性检查手工配置 DHCP 用户地址表项 ,请在系统视图下配置 dhcp-security static ip-address mac-address 启动 DHCP Relay 的地址匹配检查功能 ,请在接口视图下配置 address-check enable

配置 DHCP Snooping开启交换机 DHCP Snooping 功能 ,请在系统视图下配置 dhcp-snooping 指定连接到 DHCP Server 方向的端口为信任端口,请在接口视图

下配置 dhcp-snooping trust

配置 DHCP Relay支持 Option 82 ,请在系统视图下配置dhcp relay information enable

Page 50: HL-009  DHCP 协议

www.h3c.com 50

DHCP Server 实验

HostASWA

3.3.3.254/24

Eth1

Page 51: HL-009  DHCP 协议

www.h3c.com 51

DHCP Relay 和 DHCP Relay 的地址合法性检查

HostA

SWB2.2.2.2

Eth1

HostB

2.2.2.1

Eth3

SWA

Vlanif 300

3.3.3.254

3.3.3.10

Eth1

Eth2

Page 52: HL-009  DHCP 协议

www.h3c.com 52

DHCP Snooping

HostASWB

Vlanif 300 3.3.3.254

Eth1Eth2

SWA

Eth1DHCP Snooping

Page 53: HL-009  DHCP 协议

www.h3c.com 53

DHCP Option 82

HostC

HostB 2.2.2.2

Eth3

SWA

Eth1

2.2.2.1HostA

Eth2

Vlanif 300

3.3.3.254

Page 54: HL-009  DHCP 协议

DHCP协议产生原因和解决的问题

DHCP协议的基本工作原理

网络设备上的 DHCP配置

本章总结

Page 55: HL-009  DHCP 协议

思考题