URPF 简单流程
主要功能是防止基于源地址欺骗的网络攻击。
路由器接口一旦使能URPF功能,当该接口收到数据报文时,首先会对数据报文的源地址进行合法性检查,对于源地址合法性检查通过的报文,才会进一步查找去往目的地址的转发表项,进入报文转发流程;否则,将丢弃报文。
URPF检查分为严格(strict)和松散性(loose)两种。
严格型:不但要求路由器的转发表中存在去往报文源地址的路由,还要求报文的入接口与转发表中去往源地址路由的出接口一致,只有同时满足上述两个条件的报文才被认为是合法报文。对非对称路径下严格型检查会错误丢弃报文。
松散型:要求路由器的转发表中存在去往报文的源地址路由即可。
严格型和松散型检查是URPF两个基本检查机制;部分设备在此基础上,还进一步增加了缺省路由检查以及ACL检查功能,进而将URPF检查实现的更灵活和全面。
特别情况下,设备在严格型URPF检查的基础上再增加链路层检查,即在确认路由转发表中存在去往源地址的路由以及出接口后,再增加检查ARP表项,确保报文的源MAC地址和查到的ARP表项中的MAC地址一样才允许报文通过。链路层检查功能对于运营商用单个三层以太网接口接入大量PC机用户时较适合部署。
四、 小结
诸如TCP Syn Flood、UDP flood 和ICMP flood等攻击,都可能通过借助源地址欺骗的方式攻击目标设备或者主机,造成被攻击者系统性能严重的降低,甚至导致系统崩溃。URPF就是网络设备为了防范此类攻击而使用的一种常用技术。
不同厂家的不同产品对URFP功能的支持情况有所不同,具体应用中,请查看相关产品手册,以确认设备的实现情况。
在DHCP的情况下DISCOVER包的源地址全0,目的地址为全F,目的在全网环境下查找有无DHCP Server。
松散型流程图: 严格型流程图:
URPF 简单流程的更多相关文章
- MVC学习一:MVC简单流程
MVC学习一:MVC初次接触 1.MVC简单流程 1.1.服务器接收客户端请求后,解析URL(根据 路由表里配置的URL来分析 类名(控制器名)和方法名)根据请求的类名,创建对应的控制器类对象,并调用 ...
- Linux内核网络报文简单流程
转:http://blog.csdn.net/adamska0104/article/details/45397177 Linux内核网络报文简单流程2014-08-12 10:05:09 分类: L ...
- git分布式版本控制系统权威指南学习笔记(一):配置文件、简单流程和小问题
文章目录 git配置文件简介 git config各种命令 配置级别: 用户信息 文本编辑器 差异分析工具 配置命令别名 公钥 git协同流程 简单流程 初始化版本库 提交至缓存区 查看状态 提交分支 ...
- django入门 -- 简单流程
django入门 -- 简单流程 简介 通过简单示例,使用django完成基本流程的开发,学习django的主要的知识点,在后续课程中会逐个知识点进行深入讲解 以“图书-英雄”管理为示例 主要知识点介 ...
- BPM配置故事之案例1-配置简单流程
某天,Boss找到了信息部工程师小明. Boss:咱们新上了H3 BPM,你研究研究把现在的采购申请流程加上去吧,这是采购申请单. 小明:好嘞 采购申请单 小明回去后拿着表单想了想,开始着手配置. 他 ...
- Appium的测试简单流程
1.环境的搭建:jdk,SDK,appium,手机模拟器(夜神模拟器) 2.appium的运作流程图: 图中的流程步骤简单来说是: 1.测试脚本写入appium: 2.appium创建连接,将脚本利用 ...
- Activiti实战04_简单流程
在Activiti实战03_Hello World中我们介绍了一个中间没有任何任务的流程,实现了流程的部署与查阅,而在本章中,将会为流程添加任务节点,是流程能够像个流程,变得更加丰满起来. 在上一节的 ...
- 硬件初始化,nand flash固化操作,系统启动简单流程
2015.3.27星期五 晴 链接脚本定义代码的排放顺序 硬件系统初始化:一:arm核初始化:(里面有指令)初始化ARM核的时候需要看arm核的手册指令:1.异常向量(最起码有个复位异常,初始化模式- ...
- VC++6.0MFC运行的简单流程
背景: 由于下位机做的一些东西,总是需要通过上位机来验证,以及为了直观给客户展示下位机的功能,所以时常需要编写一些简单的APP.今天就以VC++6.0为例,简单的记录下该如何快速的创建一个APP. 正 ...
随机推荐
- LianLianKan - HDU 4272(状态压缩)
题目大意:有一列数据,可以从最上面的开始连接下面相同的元素,然后消除,不过距离不能超过6,询问最后能不能消除完整个数列. 分析:首先讨论一点最远能消除的地方,比如点的位置是x,如若想要消除x+1位置处 ...
- jQuery包裹节点用法完整示例
本文实例讲述了jQuery包裹节点用法.分享给大家供大家参考,具体如下: <html> <head> <meta http-equiv="Content-Typ ...
- DevExpress 控件 GridControl常见用法
刚接触DevExpress第三方控件,把GridControl的常见用法整理一下,以供参考: 说明: gcTest GridControl gvText GridView //隐藏最上面的G ...
- Linq to Object实现分页获取数据
最后调用的CSharp代码可以是: int totalcount = dboperator.Customers.Count(); //总记录数 int pagesize = 100;//每页显示数 / ...
- Vim 程序编辑器 经常使用操作
按下 i 进入编辑模式 wq! 强制保存并退出 q! 不保存,强制退出 !有强制的意思 方向键位: k h j l Ctrl + f 向下移动一页 Ctrl + b 向上移动一页 0 一行的开头 ...
- highgui.h备查 分类: C/C++ OpenCV 2014-11-08 18:11 292人阅读 评论(0) 收藏
/*M/////////////////////////////////////////////////////////////////////////////////////// // // IMP ...
- [置顶] iptables 性能 测试
一直研究iptables 性能,这几天刚好有硬件资源,于是发始下手测试iptables NAT 性…… 硬件环境 : 服务器: IBM x3650 ( 4G E5645 6核 12线程) ESXi ...
- [AngularJS] Sane, scalable Angular apps are tricky, but not impossible.
Read fromhttps://medium.com/@bluepnume/sane-scalable-angular-apps-are-tricky-but-not-impossible-less ...
- Android利用Filter过滤数据
MainActivity如下: package cc.testfilterable; import java.util.ArrayList; import java.util.HashMap; imp ...
- eclipse 上安装systemgui
http://wiki.eclipse.org/Linux_Tools_Project/PluginInstallHelp http://wiki.eclipse.org/Linux_Tools_Pr ...