URPF - 单播逆向路径转发

  

概念

URPF :Unicast Reverse Path Forwarding,单播逆向路径转发。URPF其主要功能是防止基于源地址欺骗的网络***行为。

 

源地址***原理

Router A(伪地址2.3.4.5)------> Router B------> Router C(2.3.4.5)

在RouterA上伪造源地址为2.1.1.1的包,向RouterB发起请求,RouterB响应请求时将向真正的“2.1.1.1”发送包。

这种伪造源地址的非法包对Router B和Router C都造成了***。

 

URPF技术原理

一般情况下,路由器接收到包后,获取包的目的地址,针对目的地址查找路由(Dst-IP, Next Hop),如果找到了就转发包,否则丢弃该包。

URPF技术会首先获取包的源地址和入接口,而后以源地址为目的地址,在路由转发表中查找相对应的转发接口是否与入接口匹配,如不匹配则认为该源地址是伪装的,并将该包丢弃。

通过这种方式,URPF就能有效地防范网络中通过修改源地址而进行的恶意***行为的发生。一种***模型如下:

 

URPF主要模式

URPF有三种方式,Strict URPF、Loose URPF和iACL URPF (Infrastructure ACL)。 Strict, Loose和Infrastructure ACL uRPF的主要区别在于:

  • Loose: 只要RIB中有该Src Addr,不管是从哪个接口学到都可。RPF松散模式是在ISP行业广泛使用的触发式黑洞过滤技术的基础。在松散模式下,URPF可以根据源IP地址有效地丢弃DoS和DDoS***分组,并在很短的时间内将该方案发送到数百台路由器。
  • Strict:不仅要查SrcAddr,而且还要看是否来自从该接口学到的源地址。当某个接口启用URPF严格模式时,路由器会检查接收到的所有分组,验证源地址和以源地址为目的地址查找到的出接口是否出现在路由表中,以及与收到分组的接口是否匹配。
  •  iACL :主要通过ACL来实现uRPF的功能。

在接入路由器上实施时,对于通过单链路接入时,一般使用Strict uRPF;

在出口路由器配置uRPF的安全策略时,一般采用Loose uRPF;

对于通过ECMP接入到网络,一般可采用iACL uRPF和Loose uRPF。