DHCP Snooping基础

DHCP Snooping是一种DHCP安全技术,能够有效防止网络中仿冒DHCP服务器的攻击,保证客户端从合法的服务器获取IP地址,能够记录DHCP客户端IP地址与MAC地址等参数的对应关系进而生成绑定表。

一、DHCPSnooping概述

常见DHCP攻击:DHCP服务器仿冒者攻击、DHCP服务器拒绝服务攻击、仿冒DHCP报文攻击等。DHCP Snooping用于保证DHCP客户端从合法的DHCP服务器获取IP地址,并记录DHCP客户端IP地址与MAC地址等参数的对应关系,防止攻击。DHCP Snooping能够实现“信任功能”和“基本侦听功能”。

1、信任功能

网络中如存在私设的伪DHCP服务器,可能导致DHCP客户端获取错误的IP地址和网络配置参数。DHCP Snooping的信任功能可以控制DHCP服务器应答报文的来源,防止网络中可能存在的伪造或非法DHCP服务器为其他主机分配IP地址及其他配置信息。

DHCP Snooping信任功能允许将端口分为信任端口和非信任端口

①信任端口正常转发接收到的DHCP应答报文。

②非信任端口在接收到DHCP服务器响应的DHCP ACK、NAK、OFFER报文后,丢弃该报文。

部署网络时,一般将直接或间接连接合法DHCP服务器的端口设置为信任端口,其他端口设置为非信任端口,从而保证DHCP客户端只能从合法的DHCP服务器获取IP地址。

2、基本侦听功能

出于安全考虑,管理员需要记录用户上网时所用的IP地址,确认用户申请的IP地址和用户使用主机的MAC地址的对应关系。开启Snooping功能后,设备能够通过侦听DHCP请求报文和回应报文,生产DHCP Snooping绑定表。绑定表项包括客户端MAC地址、获取的IP地址、与DHCP客户端连接的端口及该端口所属的VLAN等信息。

通过对所接收的DHCP报文与Snooping绑定表进行匹配检查,能够有效防止攻击者构造合法用户报文对网络进行的攻击。通过DHCP Snooping的基本侦听功能生成绑定表的过程中,为了保证设备能够获取用户MAC地址等参数,DHCP Snooping功能需应用于二层接入设备或第一个DHCP中继上。

二、DHCP Snooping支持的Option82功能

传统DHCP动态分配IP过程中,DHCP服务器不能根据DHCP请求报文感知用户的具体物理位置,以至于同一VLAN的用户得到的IP地址所拥有的权限是完全相同的,不能对同一VLAN中的特定用户进行有效控制。

DHCP Relay Agent Information Option(DHCP中继代理信息选项,即Option82),该选项记录了DHCP客户端的位置信息。DHCP Snooping设备或DHCP中继通过在DHCP请求报文中添加Option82选项,将DHCP客户端的精确物理位置信息传递给DHCP服务器,从而使得DHCP服务器能够为主机分配合适的IP地址和其他配置信息,实现对客户端的安全控制。

Option82包含两个子选项Circuit ID(Sub-option 1)和Remote ID(sub-option2),其中CircuitID子选项主要用来标识客户端所在的VLAN、端口等信息,RemoteID子选项主要用来标识客户端接入的设备,一般为设备的MAC地址。

设备作为DHCP中继,使能或未使能DHCP Snooping功能都可支持Option82,但若设备在二层网络作为接入设备,必须使能DHCP Snooping功能方可支持Option82。

Option82选项携带的用户位置信息与DHCP Snooping绑定表记录的用户参数是两个相互独立的概念,没有任何关联。Option82携带的用户位置信息是在DHCP用户申请IP地址时(此时用户还未分配到IP),由设备添加到DHCP请求报文中。DHCP Snooping绑定表中的位置信息是在设备收到DHCP服务器回应的DHCP Ack报文时(此时已为用户分配了IP地址),设备根据DHCP Ack报文信息自动生成。

设备作为DHCP中继或设备在二层网络作为接入设备并使能DHCP Snooping功能时均可支持Option82功能。使能设备的Option82功能有Insert和Rebuild两种方式,使能方式不同,设备对报文的处理也不同。

1、Insert方式:当设备收到DHCP请求报文时,若该报文中没有Option82选项,则插入Option82选项;若含有Option82选项,则判断Option82选项中是否包含remote-id,如包含,则保持Option82选项不变,如不包含,则插入remote-id。

2、Rebuild方式:当设备收到DHCP请求报文时,若该报文中没有Option82选项,则插入Option82选项,若含有Option82选项,则删除该Option82选项并插入管理员自己在设备上配置的Option82选项。

对于Insert和Rebuild两种方式,当设备接收到DHCP服务器的响应报文时,处理方式一致:若该报文中含有Option82选项,则删除,并转发给DHCP客户端;若报文中不含Option82选项,则直接转发。

三、DHCP Snooping的典型应用

DHCP Snooping功能的主要应用体现以下几方面:

■防止DHCP服务器仿冒者攻击

■防止非DHCP用户攻击

■防止DHCP报文泛洪攻击

■防止仿冒DHCP报文攻击

■防止DHCP服务器拒绝服务攻击。

■通过Option82的支持实现对DHCP客户端的安全控制。

1、防止DHCP服务器仿冒者攻击

为防止这种DHCP服务器仿冒者攻击,可配置设备接口的“信任(Trusted)/非信任(Untrusted)”工作模式。与合法DHCP服务器直接或间接连接的端口设置为信任端口,其他端口设置为非信任端口。

2、防止非DHCP用户攻击

在DHCP网络中,静态获取IP地址的用户(非DHCP用户)对网络可能存在多种攻击,如假冒DHCP服务器、构造虚假DHCP Request报文等。可开启设备根据DHCP Snooping绑定表生成接口的静态MAC表项功能。之后,设备将根据接口下所有的DHCP用户对应的DHCP Snooping绑定表项自动执行命令生成这些用户的静态MAC表项,并同时关闭接口学习动态MAC表项的能力。此时,只有源MAC地址与静态MAC表项匹配的报文才能通过该接口。对于该接口下的非DHCP用户,只有管理员手动配置了此类用户的静态MAC表项其报文才能通过。

3、防止DHCP报文泛洪攻击

攻击者短时间向设备发送大量的DHCP报文,会对设备性能造成冲击。使能设备的DHCP Snooping功能时,同时使能设备对DHCP报文上送DHCP报文处理单元的速率进行检测的功能。

4、防止仿冒DHCP报文攻击

在DHCP服务提供过程中,已获取IP的合法用户通过向服务器发送Request或Release报文续租或释放IP地址。攻击者假冒合法用户不断发送DHCP Request或DHCP Release报文。可使用DHCP Snooping绑定表的功能。设备通过将DHCP Request续租报文和DHCP Release报文与绑定表进行匹配操作能够有效判别报文是否合法。

5、防止DHCP服务器拒绝服务攻击。

设备某接口下存在大量攻击者恶意申请IP地址,会导致DHCP服务器中IP地址快速耗尽而不能给合法用户提供服务。另一方面,DHCP服务器通常仅依据DHCP Request报文中的chaddr字段来确认客户端的MAC地址,如果某一攻击通过不断改变Chaddr字段向服务器申请IP,同样会导致地址池耗尽。用使能DHCP Snooping功能,配置设备或接口允许接入的最大DHCP用户数,当接入的用户数达到该值时,不再允许任何用户通过此设备或接口成功盛情到IP地址。对于通过改变Chaddr字段方式的攻击,可使能设备检测DHCP Request报文帧头MAC地址与DHCP数据区中Chaddr字段是否一致功能。

6、通过Option82的支持实现对DHCP客户端的安全控制

Option82称为中继代理信息选项,该选项记录了DHCP客户端的位置信息。DHCP Snooping设备或DHCP中继通过在DHCP请求报文中添加Option82,将DHCP客户端的位置信息传递给DHCP服务器。

在SwitchA使能DHCP Snooping功能之后可使能其Option82功能,在接收到用户申请IP地址发送的DHCP Request报文会插入Option82选项。DHCP服务器根据Option82选项获悉用户精确物理位置进而根据其上已部署的IP地址分配策略或其他安全策略为用户分配合适的IP地址和其他配置信息。

DHCP Snooping的基本功能配置与管理

DHCP Snooping的基本功能就是能够保证客户端从合法服务器获取IP地址,而且能够记录DHCP客户端IP地址与MAC地址的对应关系进而生成绑定表。

DHCP Snooping的基本功能配置任务如下:

(1)、使能DHCP Snooping功能
(2)、配置接口信任状态
(3)、(可选)使能DHCP Snooping用户位置迁移功能
(4)、(可选)配置ARP与DHCP Snooping联动功能
(5)、(可选)配置用户下线后及时清除对应MAC表项功能
(6)、(可选)配置丢弃GIADDR字段非零的DHCP Request报文。

1、使能DHCP Snooping功能

使能DHCP Snooping功能的配置顺序是先使能全局下的DHCP Snooping功能,再使能接口或VLAN下的Snooping。

system-view
dhcp snooping enable     全局使能DHCP Snooping功能
vlan vlan-id                                                   二选一,进入要使能DHCP Snooping功能的VLAN
interface interface-type interface-number    二选一,进入要使能DHCP Snooping功能的物理接口
dhcp snooping enable   使能以上VLAN或接口下的DHCP Snooping功能。还可在系统视图下使用: dhcp snooping enable vlan {vlan-id1 [to vlan-id2]}  &<1-10>,且可一次性为多个VLAN使能DHCP Snooping功能。

2、配置接口信任状态

将与信任的DHCP服务器直接或间接连接的设备接口设置为信任接口,其他接口设置为非信任接口。信任接口正常转发接收到的DHCP应答报文;非信任接口在接收到DHCP服务器响应的DHCP Ack、DHCP Nak和DHCP Offer报文后,丢弃该报文。

在连接用户的接口或VLAN下使能DHCP Snooping功能后,需将连接DHCP服务器的接口配置为“信任”模式,两者同时生效的设备才能生成DHCP Snooping动态绑定表。

system-view
interface interface-type interface-number      二选一,进入要配置为信任状态的接口
dhcp snooping trusted     配置以上接口为信任接口
vlan vlan-id                                                   二选一,进入要要配置为信任状态的VLAN
dhcp snooping trusted interface interface-type interface-number  配置指定接口为VLAN中的信任接口。

3、使能DHCP Snooping用户位置迁移功能

移动应用场景中,若某一用户由接口A上线,然后切换到接口B,为让用户能够上线,需要使用Snooping用户位置迁移功能。

在系统视图下执行dhcp snooping user-transfer enable命令,使用户切换了所连接的交换机接口后仍能保持网络连接。

4、配置ARP与DHCP Snooping的联动功能

DHCP Snooping设备在收到DHCP用户发出的DHCP Release报文时会删除该用户对应的绑定表项,但若用户发生了异常下线而无法发出DHCP Release报文时,DHCP Snooping设备将不能及时删除该DHCP用户对应的绑定表。

使能ARP与DHCP Snooping联动功能后,如果DHCP Snooping表项中的IP地址对应的ARP表项到达老化时间,则Snooping设备会对该IP地址进行ARP探测,在规定的探测次数内探测不到用户,设备将删除用户对应的ARP表项。之后,再次按规定的探测次数对该IP进行ARP探测,仍不能够探测到用户,则设备会删除该哟用户对应的绑定表项。只有当设备作为DHCP中继时,才支持ARP与DHCP Snooping的联动功能。

在系统视图下执行arp dhcp-snooping-detect enable

5、配置用户下线后及时清除对应MAC表项功能

系统视图下执行:dhcp snooping user-offline remove mac-address

6、配置丢弃GIADDR字段非零的DHCPRequest报文

DHCP请求报文中的Giaddr(网关地址)记录了DHCP请求报文经过的第一个DHCP中继的IP地址。正常情况下,第一个DHCP中继在将DHCP请求报文转发给DHCP服务器前把自己的IP地址填入Giaddr字段中。DHCP服务器会根据Giaddr字段值来判断客户端所在的网段地址,从而选择合适的地址池。然而,在通过Snooping的基本侦听功能生成绑定表的过程中,为了保证设备能够获取到客户端MAC地址等参数,DHCP Snooping设备接收到请求报文中Giaddr字段必然为0.0.0.0,如果不为0.0.0.0,则为非法报文,需丢弃。

在VLAN视图或者接口视图下通过dhcp snooping check dhcp-giaddr enable命令使能检测DHCP请求报文中GIADDR字段是否非零的功能。当在VLAN视图下配置时,则对DHCP Snooping设备上所有接口在接收到的属于该VLAN的DHCP请求报文时都要进行Giaddr字段是否非零的检测,而在接口视图下配置时,仅对对应接口上收到的DHCP请求报文进行Giaddr字段是否非零的检测。

7、DHCP Snooping基本功能管理

①display dhcp snooping【interface interface-type interface-number | vlan vlan-id】:查看指定接口或全部接口的DHCP Snooping运行信息

②display dhcp snooping configuration【valn vlan-id |interface interface-type interface-number】:查看指定VLAN或指定接口或全部的DHCPSnooping配置信息。

③display dhcp snooping user-bind {{interface interface-typeinterface-number | ip-address ip-address | mac-address mac-address |vlanvlan-id}*|all}【verbose】:查看指定接口、IP地址、MAC地址、VLAN或者所有DHCP Snooping绑定表信息。

④reset dhcp snooping statistics global:清除全局的报文丢弃统计计数。

⑤reset dhcp snooping statistics interface interface-typeinterface-number【vlan vlan-id】:清除指定接口下指定VLAN或者所有VLAN中的报文丢弃统计计数。

⑥reset dhcp snooping statistics vlan vlan-id【interfaceinterface-type interface-number】:清除指定VLAN下指定接口或者所有接口的报文丢弃统计计数。

⑦reset dhcp snooping suer-bind【vlanvlan-id|interface interface-type interface-number】*:清除指定VLAN、指定接口或者所有DHCPSnooping动态绑定表。

eNSP实验:

AR1和AR2都配置有DHCP服务器,并且所分配的IP范围不同,这是,五台PC客户端同时申请IP地址,结果:

可见,如果没有相应的防范措施,同一网段内出现另外的DHCP服务器,会影响到IP地址的分配,从而影响网络通信。

配置端口信任功能

配置的顺序,必须先全局使能dhcp,再全局使能dhcp snooping,然后再在端口使能dhcp snooping,然后配置端口信任。同时其他端口也必须使能DHCP Snooping功能,但不用配置信任,也就是不信任,否则,如果在端口没有使能dhcp Snooping功能,则不起作用,两个DHCP服务器都会给客户端分配IP。这样配置后,所有客户端只就受AR1分配的IP。

抓包:

在LSW1——AR1之间

是完整的四步,客户端获得了IP地址

在LSW1——AR2之间:

没有发现ACK,按照前面的介绍,如果是不信任端口,则Offer和ACK都是被丢弃的,即Offer报文应该被LSW1丢弃,就不应该有Request报文,看一下Request报文:

发现这个Request是对AR1的Offer的应答,这是正确的。

其他配置:

DHCP Snooping的攻击防范功能配置与管理

配置DHCP Snooping的攻击防范功能之前,务必确保已完成DHCP Snooping的基本功能配置。主要包括以下三项配置任务:

①配置防止DHCP服务器仿冒者攻击

②配置防止仿冒DHCP报文攻击

③配置防止DHCP服务器拒绝服务攻击

一、配置防止DHCP服务器仿冒者攻击

通过配置DHCP服务器探测功能,DHCP Snooping设备会检查并在日志中记录所有DHCP应答(DHCP Relay)报文中携带的DHCP服务器地址与端口等信息,网管可根据日志判断网络中是否存在伪DHCP服务器进而对网络进行维护。

日志文件后缀*.Log或*.dblg,可用display logfile file-name查看,用display logbuffer查看缓冲区日志信息。

系统视图下执行dhcp server detect命令

二、配置防止仿冒DHCP报文攻击

仿冒合法用户的DHCP Request报文,将会导致合法用户的IP地址租约到期后不能及时释放,也无法使用该IP;仿冒合法用户的Release报文,将导致合法用户异常下线。使能DHCP Snooping,设备可根据生成的Snooping绑定表项,对DHCP Request报文或DHCP Release报文进行匹配检查,只有匹配成功的报文才将其转发,可有效防止非法用户通过发送伪造DHCP Request或Release报文冒充合法用户续租或释放IP地址。

DHCP Snooping 设备对DHCPRequest或 Release报文的匹配检查规则如下:

1、对DHCP Request报文

①首先检查报文的目的MAC地址是否为全F,如是,则认为是第一次上线的DHCP Request广播报文,直接通过;如报文的目的MAC地址不是全F,则认为是续租报文,将根据绑定表项对报文中的VLAN、IP、接口信息进行匹配检查,完全匹配才通过。

②检查CHADDR字段值是否与绑定表中的网关地址匹配,如不匹配,则认为是用户第一次上线,直接通过;如匹配,则继续检查报文中的VLAN、IP、接口信息是否均与绑定表匹配,完全匹配通过,否则丢弃。

2、对DHCP Release报文

将直接检查报文中的VLAN、IP、MAC、接口信息是否匹配绑定表,匹配则通过,不匹配则丢弃。

防止仿冒DHCP报文攻击的配置

system-view
vlan vlan-id                                                   二选一,进入要使能对DHCP报文 进行绑定表匹配检查的功能的VLAN
interface interface-type interface-number    二选一,进入要使能对DHCP报文 进行绑定表匹配检查的功能的物理接口
dhcp snooping check userbind enable        使能对DHCP报文 进行绑定表匹配检查的功能
使能DHCP Snooping告警功能(仅可在接口视图下配置)
dhcp snooping alarm user-bind enable 
dhcp snooping alarm threshold threshold       系统视图下配置DHCP Snooping丢弃报文的告警阈值
dhcp snooping alarm user-bind thrusereshold threshold    接口视图下配置与绑定表不匹配而被丢弃的DHCP报文数的告警阈值。

三、配置防止DHCP服务器拒绝服务攻击

为抑制DHCP用户恶意申请IP,可配置接口允许学习的DHCP Snooping绑定表项的最大个数,超过则任何用户无法申请。为防止攻击者不断改变DHCP Request报文中的CHADDR字段值进行攻击,可使能检测DHCP Request报文帧头MAC地址与DHCP数据区中CHADDR字段是否相同的功能,相同则转发报文,否则丢弃。

system-view
dhcp snooping useralarm percentage percent-lower-value percent-upper-value    配置DHCP Snooping绑定表的告警阈值百分比。
vlan vlan-id 
interface interface-type interface-number 
dhcp snooping max-user-snnumber max-number      配置接口允许学习的DHCP Snooping绑定表项的最大个数。
dhcp snooping check mac-address enable   使能检测DHCP Request报文帧头MAC地址与DHCP数据区中CHADDR字段是否一致功能。

四、DHCPSnooping的攻击防范功能配置实例

Client1与Client3通过DHCP方式获取IP地址,而Client2使用静态配置的IP地址。网络中存在非法用户的攻击导致合法用户不能正常获取IP地址,管理员希望能够防止网络中针对DHCP的攻击。

1、基本配置思路

①使能DHCP Snooping功能

②配置接口的信任状态,防止仿冒DHCP服务器攻击。

③使能ARP与DHCP Snooping的联动功能,防止仿冒合法用户进行欺骗攻击,保证DHCP用户在异常下线时实时更新绑定表

④使能对DHCP报文进行绑定表匹配检查功能,防止仿冒DHCP报文攻击

⑤配置允许接入的最大用户数以及使能检测DHCP Request报文帧头MAC与DHCP数据区中CHADDR字段是否一致功能,防止DHCP服务器拒绝服务攻击。

2、具体配置步骤、

①使能DHCP Snooping功能,包括全局使能和在接口上使能

[RouterC]dhcp enable
[RouterC]dhcp snooping enable
[RouterC]interface ethernet 2/0/0
[RouterC-Ethernet2/0/0]dhcp snooping enable
[RouterC-Ethernet2/0/0]quit
[RouterC]interface ethernet 2/0/1
[RouterC-Ethernet2/0/1]dhcp snooping enable
[RouterC-Ethernet2/0/1]quit

②配置接口的信任状态:将连接DHCP服务器的接口状态配置为“信任”状态,其他接口保持为缺省的“非信任”状态。

[RouterC]interface ethernet 2/0/2
[RouterC-Ethernet2/0/2]dhcp snooping trusted
[RouterC-Ethernet2/0/2]quit

③使能ARP与DHCP Snooping的联动功能,防止仿冒合法用户进行欺骗攻击

[RouterC]arp dhcp-snooping-detect enable

④在用户侧接口使能对DHCP报文进行绑定表匹配检查功能,防止仿冒DHCP报文攻击。

[RouterC]interface ethernet 2/0/0
[RouterC-Ethernet2/0/0]dhcp snooping check user-bind enable
[RouterC-Ethernet2/0/0]quit
[RouterC]interface ethernet 2/0/1
[RouterC-Ethernet2/0/1]dhcp snooping check user-bind enable
[RouterC-Ethernet2/0/1]quit

⑤在用户侧接口使能检测DHCP Request报文中GIADDR字段是否非零的功能

[RouterC]interface ethernet 2/0/0
[RouterC-Ethernet2/0/0]dhcp snooping check dhcp-giaddr enable
[RouterC-Ethernet2/0/0]quit
[RouterC]interface ethernet 2/0/1
[RouterC-Ethernet2/0/1]dhcp snooping check dhcp-giaddr enable
[RouterC-Ethernet2/0/1]quit

⑥在用户侧接口配置允许接入的最大用户数,并使能对CHADDR字段检查功能

[RouterC]interface ethernet 2/0/0
[RouterC-Ethernet2/0/0]dhcp snooping max-user-number 20
[RouterC-Ethernet2/0/0]dhcp snooping check mac-address enable
[RouterC-Ethernet2/0/0]quit
[RouterC]interface ethernet 2/0/1
[RouterC-Ethernet2/0/1]dhcp snooping max-user-number 20
[RouterC-Ethernet2/0/1]dhcp snooping check mac-address enable
[RouterC-Ethernet2/0/1]quit

⑦在用户侧接口配置丢弃报文告警阀值和报文限速告警功能。

[RouterC]interface ethernet 2/0/0
[RouterC-Ethernet2/0/0]dhcp snooping alarm mac-address enable
[RouterC-Ethernet2/0/0]dhcp snooping alarm user-bind enable
[RouterC-Ethernet2/0/0]dhcp snooping alarm untrust-reply enable
[RouterC-Ethernet2/0/0]dhcp snooping alarm mac-address threshold 120
[RouterC-Ethernet2/0/0]dhcp snooping alarm user-bind threshold 120
[RouterC-Ethernet2/0/0]dhcp snooping alarm untrust-reply threshold 120
[RouterC-Ethernet2/0/0]quit
[RouterC]interface ethernet 2/0/1
[RouterC-Ethernet2/0/1]dhcp snooping alarm mac-address enable
[RouterC-Ethernet2/0/1]dhcp snooping alarm user-bind enable
[RouterC-Ethernet2/0/1]dhcp snooping alarm untrust-reply enable
[RouterC-Ethernet2/0/1]dhcp snooping alarm mac-address threshold 120
[RouterC-Ethernet2/0/1]dhcp snooping alarm user-bind threshold 120
[RouterC-Ethernet2/0/1]dhcp snooping alarm untrust-reply threshold 120
[RouterC-Ethernet2/0/1]quit

执行display dhcp snooping configuration查看DHCP Snooping的配置信息,执行displaydhcpsnooping interface查看接口下的DHCP Snooping运行信息。

对于上述的实验实例,个人有几点看法:其一是这个实验中使用RouterA和RouterB感觉不太合适,应该改用交换机,因为前面说配置DHCP服务器和中继时,说是要在同一子网中的,即二层相同的,这里使用路由器,中继好像就与客户端不在一个网段了,所以中继就应该设置在RouterA和RouterB上,这里是设置在RouterC上,说明RouterA和RouterB是作为交换机使用的。其二是trusted信任端口,这里是设置在RouterC的Ethernet2/0/2端口,在eNSP上测试,在三层接口上无法设置dhcp Snooping trusted,按照前面的介绍,信任端口配置在直接或间接连接DHCP服务器的接口,按理说应该就是Ethernet2/0/2接口上配置。

配置在DHCP报文中添加Option82字段

Option82选项记录了DHCP客户端的位置信息。DHCP Option82必须配置在设备的用户侧,否则设备向DHCP服务器发送的DHCP报文不会携带Option82选项内容。

system-view
vlan vlan-id
interface interface-type interface-number 
dhcp option82 {insert | rebuild} enable      使能在DHCP报文中添加Option82选项功能。
dhcp option82 [circuit-id | remote-id] format {default | common | extend | user-defined text}   在系统视图下配置在DHCP报文中添加的Option82选项的格式。
dhcp option82 [vlan vlan-id] [circuit-id | remote-id] format {default | common | extend | user-defined text}   在接口视图下配置在DHCP报文中添加的Option82选项的格式。

DNS服务配置与管理

DNS是一种用于TCP/IP应用程序的分布式数据库,提供域名与IP地址之间的转换服务。AR G3路由器支持作为DNS客户端、DNS代理/中继(Proxy/Relay)和DDNS(动态DNS)客户端(不能配置做为DNS服务器)。

一、配置作为DNS客户端

路由器作为DNS客户端使用时,支持静态域名解析ip和动态域名解析。静态域名解析即手工建立域名和IP地址之间的对应关系。在设备上配置静态域名表项后,当DNS客户端需要域名对应的IP地址时,会查询静态域名解析表。动态域名解析有专用的DNS服务器,负责接收DNS客户端提出的域名解析请求。

DNS客户端的静态域名解析和动态域名解析配置方法:

system-view

配置静态DNS客户端
ip host host-name ip-address       配置静态DNS表项。
配置动态DNS客户端
dns resolve    使能动态域名解析功能
dns server ip-address     配置DNS客户端访问的DNS服务器的IP地址。
dns server source-ip ip-address     指定本段设备作为DNS客户端,进行DNS报文交互时的源IP地址,可以是自己设备的地址,也可以不是,但一定要使DNS服务器可达。
dns-server-select-algorithm {fixed | auto}   配置设备选择目的DNS服务器算法。
dns forward retry-number number     配置设备向目的DNS服务器发送查询请求的重传次数。
dns forward retry-timeout time          配置设备向目的DNS服务器发送查询请求的超时重传时间。
dns domain domain-name                配置域名后缀。设置域名后缀是为了便于在访问对应主机时可不用输入其域名,只需输入其前面NetBIOS名部分即可。

二、配置DNS Proxy/Relay

路由器可以配置作为Proxy/Relay使用,转发DNS请求和应答报文。在配置DNS Proxy/Relay之前,需要配置好对应的DNS服务器以及与DNS客户端和DNS服务器之间的路由。

DNS Relay和DNS Proxy功能相同,区别在于Proxy接收到DNS客户端的DNS查询报文后会查找本地缓存,Relay不会查询本地缓存。

1、配置目的DNS服务器

首先要全局使能DNS Proxy/Relay功能,然后配置DNS Proxy/Relay要访问的目的DNS服务器及相关的参数属性。

在设备上使能DNS Proxy或DNS Relay功能后,可用于在DNS Client和DNS Server之间转发DNS请求和应答报文。局域网内的DNS客户端把DNS Proxy或DNS Relay当做DNS服务器,将DNS请求报文发送给Proxy/Relay。Proxy/Relay将该请求报文转发到真正的DNS服务器,并将应答报文返回给DNS客户端。

2、(可选)配置DNS Spoofing功能

当设备使能DNS Proxy/Relay后,如果设备上没有配置服务器地址或不存在到达DNS服务器的路由,则设备不会转发DNS服务器的域名解析请求,也不会应答该请求。如果设备上同时是能了DNS Spooofing功能,则会利用配置的IP地址作为域名解析结果,欺骗性的应答域名解析请求。

如把宽带路由器当成DNS服务器使用,宽带路由器本身不具备DNS服务器功能,所使用的就是DNS Spoofing功能。如果没有使能Spoofing功能,路由器接收到主机发送的域名解析请求报文后,不存在对应的域名解析表项,需要向DNS服务器发送域名解析请求。当此时拨号接口尚未建立连接,路由器上不存在DNS服务器地址,路由器不会向DNS服务器发送域名解析请求,也不会应答DNS客户端的请求,导致域名解析失败,且没有流量触发拨号接口建立。如果使用Spoofing功能,即使路由器上不存在DNS服务器IP地址或到达DNS服务器的路由,路由器也会利用指定的IP地址作为域名解析结果,应答DNS客户端的域名解析请求,DNS客户端后续发送的报文可以用来触发拨号接口建立连接。

要让DNS Spoofing生效,除使能Proxy/Relay外,还需满足如下条件之一:

①没有配置DNS服务器,或者配置了DNS服务器,但没有使能DNS动态解析功能

②没有到达DNS服务器的路由

③通往DNS服务器的出接口上没有可用的源IP地址。

当满足以上某一条件,Proxy/Relay接收到一个A类(主机类)查询时,使用DNS Spoofing配置的IP地址进行应答。

system-view
配置目的DNS服务器
dns proxy enable  或  dns relay enable    使能DNS Proxy或Relay功能
dns resolve     使能动态域名解析功能
dns server ip-address      配置DNS Proxy/Relay访问的DNS服务器
dns server source-ip ip-address  
dns-server-select-algorithm {fixed | auto}   配置DNS Proxy/Relay选择目的DNS服务器算法
dns forward retry-number number     配置DNS Proxy/Relay向目的DNS服务器发送查询请求的重传次数。
dns forward retry-timeout time          配置DNS Proxy/Relay向目的DNS服务器发送查询请求的超时重传时间。

配置DNS Spoofing功能

dns spoofing ip-address 使能DNS Spoofing功能,并指定应答的IP地址

三、配置DDNS客户端

DNS仅提供了域名和IP地址之间的静态对应关系,当节点的IP地址发生变化时,DNS无法动态更新域名和IP地址的对应关系。动态域名系统DDNS可用来动态更新DNS服务器上域名和IP地址之间的对应关系,保证通过域名解析到正确的IP地址。

这里所说的是指域名所对应的IP这个节点,其IP发生了改变,而在DNS服务器的数据库中域名还是对应着没有修改前的IP,造成最终访问失败。

DDNS采用客户端/服务器工作模式。系统举例:如花生壳等。

具体工作原理如下:

①DDNS客户端:DDNS客户端就是向DDNS发出动态域名解析的设备,如各种需要进行域名解析的应用服务器。为保证在这些需要进行域名解析的应用服务器IP地址变化时,其他用户仍可以通过域名访问这些应用服务器,需要将这些应用服务器配置为DDNS客户端,向DDNS服务器发送更新域名和IP地址对应关系的DDNS更新请求。

②DDNS服务器:DDNS服务器负责通知DNS服务器动态更新域名和IP地址之间的对应关系。在接收到DDNS客户端的更新请求后,DDNS服务器通知DNS服务器重新建立DDNS客户端的域名和IP地址之间的对应关系,从而保证即使DDNS客户端的IP地址改变,Internet用户仍然可以通过同样的域名访问DDNS客户端。

DDNS的更新过程没有统一的标准。

担当DDNS客户端的设备端需要配置以下两项任务:

(1)配置DDNS策略

通过配置策略,可以指定在接口IP地址发生变化后,DDNS更新请求发送到目的DDNS服务器。

(2)绑定DDNS策略

通过在接口上应用指定的DDNS策略来更新指定的FQDN(Fully Qualified Domain Name,完全合格域名)与IP地址的对应关系,并启动DDNS更新。

system-view
配置DDNS策略
ddns policy policy-name     创建DDNS策略,并进入DDNS策略视图。
url request-url     指定DDNS更新请求的URL地址。request-url包含用户名和密码信息,且用户名和密码的配置信息以明文显示。DDNS更新请求的URL地址格式为:http://username:password@members.3322.org/dyndns/update?system=dyndns&hostname=<h>&ip=<a>。不同的DDNS,其访问的URL不同。
ssl-policy policy-name     在DDNS策略下绑定SSL策略。
interval interval-time  指定DDNS更新启动后,定时发起更新请求的时间间隔。
绑定DDNS策略
interface interface-type interface-number 键入要绑定DDNS策略的DDNS客户端接口
ddns apply policy policy-name [fqdn domain-name]  在DDNS客户端接口上绑定DDNS策略。

DNS客户端是应用于用户侧主机或路由器上的,发送的是地址解析请求报文,即发送一个域名,请求得到这个域名对应的IP地址,DDNS客户端则是应用于具体的应用服务器上的,这个服务器对外提供服务(如WEB服务),用户是通过域名来访问这台服务器的,域名又通过域名解析找到对应的服务器IP,然后访问,DDNS就是来解决这台服务器的IP经常变动,会引起域名与IP对应错误的问题,即一旦服务器的IP地址发生了改变,就要发送DDNS请求,告诉DDNS服务器,我的IP发生了改变,需要你来处理域名与IP对应的改变。这个用途主要用在个人通过拨号上网来提供服务的情景,这时用户获得的IP地址是动态分配的(DHCP),可能会经常变动。

路由器重温——DHCP/DNS服务配置管理-3相关推荐

  1. 路由器重温——ADSL/VDSL接口配置管理

    ADSL(Asymmetric Digital Subscriber Line,不对称数字用户线)是一种非对称的传输技术,利用普通电话线中未使用的高频段,在双绞铜线上实现高速数据传输.当路由器作为CP ...

  2. 路由器重温——POS/CPOS接口配置管理

    POS接口的配置主要包括:接口的链路层协议.接口时钟模式.开销字节.MTU.帧格式.加扰功能.CRC校验功能和日志门限等方面 POS接口配置步骤: system-view interface pos ...

  3. 路由器重温——CE1/PRI接口配置管理

    E1系统和T1系统都是WAN专线的一种接入线路标准,都属于PDH(Plesiochronous Digital Hierarchy,准同步数字体系)体系.T1支持1.544Mbit/s专线电话数据传输 ...

  4. DDNS配置实例(DHCP+DNS=DDNS)

    DDNS配置实例(DHCP+DNS=DDNS) 在网络管理中,维护DNS服务器是一项很基本的工作.但是,随着网络规模的不断扩大,频繁的去修改DNS区域数据文件,那也将会是一件很麻烦的事情.因此,动态D ...

  5. centos8 配置 dns_Linux搭建DHCP+DNS+WEB服务

    实验环境: 一台GNS3 一台Centos7的Linux系统 一台server2016服务器 两台PC机 实验目的: 搭建一台DHCP服务自动分配IP地址给两台PC机 搭建一台DNS解析服务器解析域名 ...

  6. Cisco路由器配置DHCP服务及中继

    Cisco路由器配置DHCP服务及中继 拓扑示意 R1 LAN侧的网段为192.168.10.0/24 默认网关为192.168.10.1 R2 LAN侧的网段为192.168.20.0/24 默认网 ...

  7. 好用的开源轻量级DHCP和DNS服务软件“Dual DHCP DNS Server”

    软件网址:http://dhcp-dns-server.sourceforge.net/ 下载地址:http://sourceforge.net/projects/dhcp-dns-server/fi ...

  8. 华为路由器配置DHCP中继

    DHCP(动态主机配置协议) 理论知识: DHCP主要用来为客户机自动配置I P地址相关的网络参数,包括IP地址.子网掩码.默认网关.DNS服务器等. DHCP 通信为广播的方式,因此当需要 DHCP ...

  9. 设置dns_2019让你的网速飞起来,你需要……设置正确DNS服务篇

    有时候上网明明网络连接正常,但网页访问却很慢?平时会不会经常听到一些老司机说,网络很慢啊可以修改一下DNS啊!什么是DNS?又为什么会对网速产生影响呢?跟着小编的教程一起来学习一下吧~ PART 1  ...

最新文章

  1. Docker建网站 4条命令搞定
  2. 【Git】工作中99%能用到的git命令
  3. 【OpenCV】目标检测
  4. C#各种文件操作的代码与注释
  5. 利用 bat 脚本强制杀死 Windows 进程
  6. 异步社区本周(3.26-4.1)半价电子书
  7. 贝叶斯分析好坏_玩转贝叶斯分析
  8. 如何在Mac OS X中使用GeekTool设置桌面任务清单
  9. Wince电源管理(五) ---- Windows CE设备驱动开发之电源管理
  10. 郭霖老师的组合模式讲解
  11. adobe acrobat xi pro绿色免安装版
  12. has a default child route. When navigating to this named route 。。。。。报错
  13. Python代码画樱花树--Turtle绘图
  14. 耶鲁女孩:改变,从背单词开始!(刘畅:我知道耶鲁会录取我的。学习,都要经历死记硬背)
  15. 抖音直播团队部门岗位KPI考核主播绩效制度
  16. 阿里云部署k8s集群
  17. mysql赋予用户数据库所有权限_MySQL 数据库赋予用户权限操作表
  18. 大连理工大学计算机学院院长,大连理工大学计算机学院姚念民教授团队最新成果被人工智能顶级期刊TNNLS录用...
  19. cors跨域资源共享】同源策略和jsonp
  20. 关于html5的标签整理合集(二)

热门文章

  1. 第一章 人工智能的研究和发展《2022年斯坦福AI指数报告》中文全解读
  2. GB2312汉字大全
  3. Java找出字符串中第一个不重复的字符
  4. ExtraCHM 1.5破解版和破解教程:
  5. 人人网之后,代替者会是谁?
  6. matlab二元方程区间求解,matlab求解二元方程组
  7. python blp模型 估计_谁能简单解释一下经济学中的BLP模型?
  8. 2022年 前端web 面试题(笔试真题)(5)
  9. 英特尔第十代处理器为什么不支持win7_新硬件不支持Win7怎么回事? 新CPU仅兼容Win10的原因解析...
  10. Python3 源码安装