路由器重温——DHCP/DNS服务配置管理-2

配置DHCP中继

当DHCP客户端与DHCP服务器之间经过三层设备相连时(客户端与服务器不在同一网段),就需要通过DHCP中继设备在中间担当一个中间代理角色,负责转发DHCP客户端与DHCP服务器之间的DHCP通信。这样多个网段的DHCP客户端可以使用同一个DHCP服务器。

DHCP中继是直接与DHCP所在网段客户端连接的,但不一定要与DHCP服务器所在网段直接相连,所以要确保DHCP中继到达DHCP服务器的路由畅通。

AR G3路由器作为DHCP中继所包括的主要配置任务如下:

①配置指定接口工作在DHCP中继模式

②(可选)配置DHCP中继转发的目的DHCP服务器组(仅当DHCP中继设备需要为多个DHCP服务器进行报文转发时才需要配置)。

③配置DHCP中继接口绑定DHCP服务器或DHCP服务器组。

④(可选)配置DHCP中继请求DHCP服务器释放客户端IP地址(仅当DHCP客户端需要请求释放IP地址时才需要执行)。

一、配置指定接口工作在DHCP中继模式

DHCP中继模式仅可在三层模式的接口(指DHCP中继连接DHCP客户端的接口上配置,并且首先需要全局使能DHCP服务功能,然后在该接口上使能DHCP中继功能

system-view
dhcp enable
ip relay address cycle
 可选配,配置DHCP中继的轮询功能,仅当DHCP中继设备需向多个DHCP服务器转发DHCP报文时才需要配置。因为当DHCP中继上配置多个DHCP服务器时,DHCP中继默认向所有服务器转发DISCOVER报文。执行此命令,DHCP客户端发送DISCOVER报文时,DHCP中继只会选择其中一个DHCP服务器进行轮询转发,如果没收到这个服务器的响应,则继续向另一个DHCP服务器转发DISCOVER报文,依此类推,直到接收到响应报文。
interface interface-type interface-number
ip address ip-address {mask | mask-length}
dhcp select relay
      在以上三层接口上使能DHCP中继功能
quit
dhcp relay trust option82
 使能DHCP Relay信任Option82选项功能,使在DHCP中继在收到DHCP请求报文时,如包含Option82信息,但当giaddr字段为0时,缺省情况下设备继续对改该报文进行处理。

二、配置DHCP中继转发的目的DHCP服务器组

因为当路由器担当DHCP中继角色时可以向多个DHCP服务器进行报文转发,故可在DHCP中继设备上配置一个包括多个DHCP服务器的服务器组。

system-view
dhcp server group group-name
    创建DHCP服务器组,进入DHCP服务器组视图。
dhcp-server ip-address [ip-address-index]   向以上DHCP服务器组中添加一个DHCP服务器IP地址。
gateway ip-address  配置DHCP中继到达DHCP服务器的网关地址,仅当DHCP服务器和DHCP中继不在同一网段时才需要配置。另一方面,DHCP服务器也需要使用gateway-list建立到达DHCP中继的网关地址。不配置此命令默认使用DHCP中继上的接口地址与DHCP服务器建立通信,一般不用配置。
vpn-instance vpn-instance-name   将DHCP服务器组绑定到已创建好的VPN实例。

三、配置DHCP中继接口绑定DHCP服务器或DHCP服务器组

使能了DHCP中继设备连接DHCP服务器的接口的中继功能后,就可以在DHCP中继接口上绑定创建的DHCP服务器组,从而为DHCP客户端指定可以访问的DHCP服务器。

如果DHCP中继接口仅需与一个DHCP服务器进行绑定,也可以不用绑定DHCP服务器组,而是直接配置所要代理的DHCP服务器。

system-view
interface interface-type interface-number
dhcp relay server-select group-name     
二选一,指定接口要绑定的DHCP服务器组。
dhcp relay server-ip ip-address    二选一,指定接口要绑定的DHCP服务器地址。

四、配置DHCP中继请求DHCP服务器释放客户端IP地址

在系统视图下或者DHCP中继接口视图下请求DHCP服务器释放客户端IP地址,执行:dhcp relay release client-ip-address mac-addressvpn-instance vpn-instance-name】【server-ip-address

在系统视图下执行时:如果不指定DHCP服务器(即server-ip-address),则向所有配置为中继模式的接口所绑定的所有DHCP服务器发送释放申请;如果指定了DHCP服务器的IP地址,则只向指定DHCP服务器发送释放申请;如果在接口视图下执行时:如果不指定DHCP服务器,则向该接口所绑定的所有DHCP服务器发送释放申请,如果指定DHCP服务器IP地址,则只向指定DHCP服务器发送释放申请。

五、不同网段内DHCP服务器和DHCP中继的配置实例:

不同主机在不同的VLAN内。地点A的主机所在网段为20.20.20.0/24,而DHCP服务器所在的网段为100.10.10.0/24.通过DHCP中继功能的RouterA转发DHCP报文。RouterA上接口GE1/0/0的公网地址为100.10.20.1/24,对端运营商侧地址为100.10.20.2/24,RouterB上接口GE1/0/0的公网地址为100.10.10.1/24,对端运营商侧地址为100.10.10.2/24。

1、基本配置思路分析

①在RouterA上VLANIF100接口上使能DHCP中继功能,实现RouterA转发不同网段的DHCP报文功能。因为缺省使用的就是DHCP中继接口为出口网关,故可不用配置到达DHCP服务器的出口网关。

②在RouterB上配置一个地址范围为20.20.20.0/24的全局地址池,实现DHCP服务器为位于不同网段的DHCP客户端分配IP地址。DHCP服务器上全局地址池的配置仅配置必须要配置的配置任务。

2、具体配置步骤

(1)RouterA上DHCP中继功能配置

①在接口下使能DHCP中继功能。先要把RouterA上的Ethernet2/0/0加入VLAN100中(因为Ethernet2/0/0接口是与Internet连接的,不能识别VLAN,所以要配置为不带标签的Hybrid接口类型),然后配置VLANIF100接口的IP地址,使能VLANIF100接口上的DHCP中继功能。

这里的描述感觉有问题,Ethernet2/0/0接口是与局域网连接的接口

[RouterA]vlan batch 100
[RouterA]interface ethernet 2/0/0
[RouterA-Ethernet2/0/0]port hybrid pvid vlan 100
[RouterA-Ethernet2/0/0]port hybrid untagged vlan 100
[RouterA-Ethernet2/0/0]quit
[RouterA]dhcp enable
[RouterA]interface vlanif 100
[RouterA-Vlanif100]ip address 20.20.20.1 24
[RouterA-Vlanif100]dhcp select relay
[RouterA-Vlanif100]quit

②创建DHCP服务器组并为服务器组添加DHCP服务器

[RouterA]dhcp server group dhcpgroup1
[RouerA-dhcp-server-group-dhcpgroup1] dhcp-server 100.10.10.1
[RouerA-dhcp-server-group-dhcpgroup1]quit

本例只有一台DHCP服务器,可以直接在DHCP中继接口视图下使用dhcp relay server-ip 100.10.10.1

③配置VLANIF100接口绑定前面创建的DHCP服务器组

[RouterA]interface vlanif 100
[RouterA-Vlanif100]dhcp relay server-select dhcpgroup1
[RouterA-Vlanif100]quit

④在RouterA上配置到达DHCP服务器RouterB的缺省路由(以RouterA对端运营商IP地址为下一跳)。

[RouterA]interface gigabitethernet 1/0/0
[RouterA-GigabitEthernet1/0/0]ip address 100.10.20.1 24
[RouterA-GigabitEthernet1/0/0]quit
[RouterA]ip route-static 0.0.0.0 0.0.0.0 100.10.20.2

(2)RouterB上全局地址池配置

①使能DHCP服务

<Huawei>system-view
[Hauwei]sysname RouterB
[RouterB]dhcp enable

②配置GE1/0/0接口IP地址,并使其工作在全局地址池模式

[RouterB]interface gigabitethernet 1/0/0
[RouterB-GigabitEthernet1/0/0]ip address100.10.10.1 24  !—这个IP地址不能与地址池的IP地址在同一网段
[RouterB-GigabitEthernet1/0/0]dhcp select global
[RouterB-GigabitEthernet1/0/0]quit

③创建地址池并配置出口网关列表

[RouterB]ip pool pool1
[RouterB-ip-pool-pool1]network 20.20.20.0mask 24
[RouterB-ip-pool-pool1]gateway-list20.20.20.1 !—配置分配地址时的出口网关地址为VLANIF100接口IP地址
[RouterB-ip-pool-pool1]quit

④在RouterB上配置到达DHCP中继RouterA的缺省路由(以RouterB对端运营商IP地址为下一跳)。

[RouterB]ip route-static 0.0.0.0 0.0.0.0100.10.10.2

配置好后,可在RouterA上使用display dhcp relay interface vlanif100命令查看接口的DHCP中继配置情况。

eNSP测试:




抓包:LSW1——AR1之间:

中继地址选项是与前面无中继的不同之处。

ACK报文中携带有中继地址。

AR1——AR2之间:

Discover报文是单播报文了,并且中继地址有了。所有报文的IP都是中继和服务器的地址在互换。

AR2_AR3之间

同AR1_AR2之间报文,不同之处就是链路层地址改变。

为多个网段分配IP地址:

在上例的基础上,增加一个网段

LSW2配置:

AR1上的新增配置:

AR3上的新增配置:

此时,AR3就可以同时为20.20.20.0和20.20.40.0网段动态分配IP地址了。

配置DHCP/BOOTP客户端

AR G3路由器也可配置作为DHCP或BOOTP客户端使用,通过DHCP协议使其接口可从指定的DHCP服务器动态取得IP地址及其他配置信息。

在配置DHCP/BOOTP客户端之前,完成以下任务:

1、配置DHCP服务器
2、配置DHCP中继(根据实际需要)
3、配置路由器到DHCP中继或DHCP服务器的路由

ARG3路由器配置成DHCP或者BOOTP客户端的主要配置任务:

1、(可选)配置DHCP/BOOTP客户端属性
2、(可选)配置DHCP服务器路由下发属性
3、使能DHCP/BOOTP客户端功能。

一、配置DHCP/BOOTP客户端属性

DHCP/BOOTP客户端属性主要包括配置DHCP客户端的主机名、标识、Option60字段、网关探测功能、期望租期,并使能DHCP服务

system-view
dhcp enable
interface interface-type interface-number
dhcp client class-id class-id
    配置DHCP客户端发送DHCP请求报文中的Option60字段(设置厂商分类信息选项,标识DHCP客户端的类型和配置)
dhcp client hostname hostname    配置DHCP客户端或BOOTP客户端的主机名。缺省没有配置。
dhcp client client-id client-id      配置DHCP客户端的标识。DHCP服务器将根据该标识,为DHCP客户端分配IP地址。
dhcp client gateway-detect period period retransmit retransmit timeout time   配置DHCP客户端的网关探测功能。仅适用于双上行链路场景。
dhcp client expected-lease time   配置DHCP客户端期望的租期时间。客户端申请地址时,可以携带期望地址租期,存于报文的Option51字段。服务器会根据期望值和服务器的配置值选一个较短的值分配。

二、配置DHCP服务器路由下发属性

当DHCP客户端发送DHCP请求后,DHCP服务器可以分配给客户端IP地址以及其他网络配置参数。DHCP服务器还可以下发路由表项给DHCP客户端,动态刷新客户端路由表。还可以配置DHCP客户端通过DHCP方式获取的路由表项优先级。

system-view
ip route ip-address {mask | mask-length} interface-type interface-number dhcp [preference-value]     配置DHCP客户端通过DHCP方式获取的路由表,实现动态刷新客户端路由表。
interface interface-type interface-number 
dhcp client default-route preference preference-value    配置DHCP服务器下发给以上接口下链接的DHCP客户端的路由表项的默认优先级。

三、使能DHCP/BOOTP客户端功能

在DHCP/BOOTP客户端配置任务中,DHCP/BOOTP客户端功能的使能必须放在最后进行,否则路由器会使用错误的属性配置来从DHCP服务器获取IP地址。

使能方法:在对应的DHCP或BOOTP客户端接口视图下分别执行ip address dhcp-allocip address bootp-alloc命令。

抓包Discover:

Option61就是client-id,配置的为hwclient,但是在包中显示的是一串十六进制数,Option12为客户端的hostname,Option60为客户端的class-id,Option51为客户端希望的租期。

关于配置DHCP服务器路由下发属性一直没弄明白。从命令表面理解,ip route ip_address mask int_type int_number dhcp prefernce就是配置要通过DHCP服务器的接口下发对应目的ip_address的路由项到DHCP客户端,如我这里配置

当前路由器的路由表:

我的理解是路由表中10.10.30.0这一项的路由通过g0/0/0端口被发送给DHCP客户端。但是配置后在客户端一侧路由器上一直看不到对应的路由项。希望有大侠指点一下这里。

配置DHCP报文限速

为了避免受到攻击者发送大量DHCP报文攻击,可在设备上配置DHCP报文限速功能,以检查DHCP报文,并限制报文的上传速率。这样在一定时间内只允许规定数目的报文上送协议栈,多余的报文将被丢弃。

一、DHCP报文限速配置步骤

DHCP报文限速可在系统视图下配置,也可在VLAN视图下配置,或者在DHCP服务接口(使能了DHCP服务器,或者DHCP中继功能的接口)视图下配置。可根据实际需要选择一种,也可同时在全局模式、VLAN或接口下进行配置,同时配置生效优先级从高到低顺序是接口最高,VLAN其次,全局模式最低。

配置前要先配置好DHCP服务器或DHCP中继。

DHCP报文限制配置:

system-view
dhcp enable

方式1:在系统视图下配置DHCP报文限速

dhcp check dhcp-rate enable [vlan { vlan-id1 [to vlan-id2]} &<1-10>    使能DHCP报文速率检查功能。
dhcp check dhcp-rate rate [vlan { vlan-id1 [to vlan-id2]} &<1-10>    配置DHCP报文上送到DHCP协议栈的检查速率。

方式2:在VLAN视图下配置DHCP报文限速

vlan vlan-id
dhcp check dhcp-rate enable
     在以上VLAN中使能DHCP报文速率检查
dhcp check dhcp-rate rate    配置以上VLAN中的DHCP报文上送到DHCP协议栈的检查速率,超过此速率限制的DHCP报文会被丢弃。

方式3:在接口视图下配置DHCP报文限速

interface interface-type interface-number
dhcp check dhcp-rate enble 
     在以上DHCP接口上使能DHCP报文速率检查功能
dhcp check dhcp-rate rate    配置以上DHCP接口的DHCP报文上送到DHCP协议栈的检查速率,超过此速率限制的DHCP报文会被丢弃。
dhcp alarm dhcp-rate enable   使能DHCP报文速率检查告警功能,如接口下丢弃的报文达到告警阈值,产生告警。
dhcp alarm dhcp-rate threshold threshold   配置DHCP报文速率检查告警阈值。

二、DHCP报文限速功能配置实例:

RouterA作为直接连接用户的设备,网管员希望通过RouterA上进行配置,对攻击者发送的DHCP报文进行有效防范。要求对连接在RouterA上所有客户端的DHCP报文上传速率进行限制,可在RouterA上全局配置DHCP报文限速功能。

1、使能DHCP服务

[RouterA]dhcp enable

2、配置DHCP报文上送速率限制

[RouterA]dhcp check dhcp-rate enable !--使能DHCP报文速率检查功能

[RouterA]dhcp check dhcp-rate 90     !--配置DHCP报文的上送速率

3、配置告警功能

[RouterA]dhcp alerm dhcp-rate enable !--使能DHCP报文速率检查告警功能

[RouterA]dhcp alarm dhcp-rate threshold 80!--配置DHCP报文速率检查告警阀值

配置好后,可通过display current-configuration | include dhcp命令,查看全局情形下已经使能DHCP功能和DHCP报文限速功能。

个人理解,DHCP报文限速应该在DHCP中继或DHCP服务器上配置,而实例中的拓扑结构,是在RouterA上进行配置,所以RouterA应该是DHCP中继,而不是RouterB为DHCP中继

  • 2
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值