URPF简介

定义

URPF(Unicast Reverse Path Forwarding)是单播逆向路径转发的简称,其主要功能是防止基于源IP地址欺骗的网络攻击行为。

目的

拒绝服务DoS(Denial of Service)攻击是一种阻止连接服务的网络攻击。DoS的攻击方式有很多种,最基本的DoS攻击就是利用合理的服务请求来占用过多的服务资源,从而使合法用户无法得到服务的响应。

URPF根据数据包的源IP地址在FIB表中查找对应的出接口,并判断该接口是否与数据包的来源接口相匹配。如果没有匹配表项则丢弃该数据包,从而预防IP欺骗,特别是针对伪造IP源地址的DoS攻击非常有效。

工作模式

在复杂的网络环境中应用URPF时,会遇到路由不对称的情况,即对端设备记录的路由路径不一样,此时使能URPF的设备可能丢弃合法报文,造成设备不能正确转发。

为了解决以上复杂网络中应用URPF的问题,设备实现了URPF的两种工作模式:

  • 严格模式

    严格模式下,设备不仅要求报文源地址在FIB表中存在相应表项,还要求接口匹配才能通过URPF检查。

    建议在路由对称的环境下使用URPF严格模式,例如两个网络边界设备之间只有一条路径的话,这时,使用严格模式能够最大限度的保证网络的安全性。

  • 松散模式

    松散模式下,设备不检查接口是否匹配,只要FIB表中存在该报文源地址的路由,报文就可以通过。

    建议在不能保证路由对称的环境下使用URPF的松散模式,例如两个网络边界设备之间如果有多条路径连接的话,路由的对称性就不能保证,在这种情况下,URPF的松散模式也可以保证较强的安全性。

工作原理

URPF通过获取报文的源地址和入接口,在FIB表中查找源地址对应的接口是否与入接口匹配。如果不匹配,则认为源地址是伪装的,丢弃该报文。通过这种工作方式,URPF能有效地防范网络中通过修改源地址而进行的恶意攻击行为。

图1 URPF原理
 

图1所示,在RouterA上伪造源地址为2.1.1.1的报文向RouterB发起请求,RouterB响应请求时将向真正的“2.1.1.1”即RouterC发送报文。这种非法报文对RouterB和RouterC都造成了攻击。

如果在RouterB上启用URPF严格检查,则RouterB在收到源地址为2.1.1.1的报文时,URPF检查到以此报文源地址对应的接口与收到该报文的接口不匹配,报文会被丢弃。

  • 3
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值