2019独角兽企业重金招聘Python工程师标准>>>

简介

snort读取配置文件时每条规则包括规则头和规则选项,而规则选项中的一个重要部分就是端口。snort中对端口的解析和对IP的解析思想相同但编码却有较大的差别。

IP解析时利用拷贝副本的方式避免了很多二次解析,而端口解析却没这样的功能。但端口解析使用了代理者模式,使上层接口不用直接和字符串交互,避免了上层接口还需要为解释端口的规则管理解析字串的脚手架。

流程说明

  1. 规则解释器就是snort中管理对配置文件解析的部分,当其解析到规则端口部分是就提取该字段交给端口解析管理器.

  2. 端口解析管理对非TCP,UDP的端口会按照默认处理即出这两个协议外的规则中的端口指定无效。

  3. 如果是TCP,UDP规则中的端口则交给端口解释代理解释构建端口对象

  4. 所以生成的端口对象都将存放在端口对象管理中

  5. 解释器获得的端口对象信息是指向端口对象管理中对应对象的指针。

总结

对比读取IP的处理:http://my.oschina.net/u/572632/blog/289775

总结了以下几点:

  1. 使用代理层次更分明

  2. 但对比IP的处理会出现重复解释

  3. 端口对象存放与管理方式和IP类似,但并未将取反端口集合和非取反集合分开存放,而是放在一起使用对象中的标志来区分。

转载于:https://my.oschina.net/u/572632/blog/289803

snort配置文件中的PORT解析相关推荐

  1. golang通过RSA算法生成token,go从配置文件中注入密钥文件,go从文件中读取密钥文件,go RSA算法下token生成与解析;go java token共用

    RSA算法 token生成与解析 本文演示两种方式,一种是把密钥文件放在配置文件中,一种是把密钥文件本身放入项目或者容器中. 下面两种的区别在于私钥公钥的初始化, init方法,需要哪种取哪种. 通过 ...

  2. Spring Boot 配置文件中的花样,看这一篇足矣!

    点击蓝色"程序猿DD"关注我哟 加个"星标",不忘签到哦 关注我,回复口令获取可获取独家整理的学习资料: - 001 :领取<Spring Boot基础教 ...

  3. Mysql配置文件/etc/my.cnf解析

    Mysql配置文件/etc/my.cnf解析 # 客户端设置 [client] port = 3306 # 默认情况下,socket文件应为/usr/local/mysql/mysql.socket, ...

  4. 基于Spring可扩展Schema提供自定义配置支持(spring配置文件中 配置标签支持)

    2019独角兽企业重金招聘Python工程师标准>>> spring使用了这么长时间, 你真的了解spring bean加载的机制吗? 这个是我们项目中最常见的配置文件中的内容配置, ...

  5. XML配置文件的命名空间与Spring配置文件中的头

    一直以来,写Spring配置文件,都是把其他配置文件的头拷贝过来,最多改改版本号,也不清楚哪些是需要的,到底是干嘛的.今天整理一下,拒绝再无脑copy. 一.Spring配置文件常见的配置头 < ...

  6. [转]/tomcat/conf/server.xml配置文件的源码解析

    备注: 在把Java项目直接放到/tomcat/webapps目录下时,server.xml的代码是不变的,端口为8080 你可以通过修改这个8080端口进行配置,以及配置<host>里面 ...

  7. 如何保护 SpringBoot 配置文件中的敏感信息

    今日推荐 Java 8 一行代码解决了空指针问题,太厉害了...List中remove()方法的陷阱,被坑惨了!25000 字详解 23 种设计模式,原来可以这么简单!最牛逼的 Java 日志框架,性 ...

  8. C#架构设计-程序运行时从xml配置文件中加载配置项并设置为全局变量

    场景 C#中全局作用域的常量.字段.属性.方法的定义与使用: https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/102550025 在 ...

  9. CXF客户端配置请求超时限制-SocketTimeoutException(Spring配置文件中配置和通过代码进行配置)

    在用cxf  开发webservice应用时,客户端老报 java.net.SocketTimeoutException: Read timed out 原因为连接超时,google 参考链接 Spr ...

最新文章

  1. 安装 MySQL-python 出错 ImportError: No module named 'ConfigParser'
  2. iphone中使用第三方工具(RegexKitLite)实现正则表达式
  3. printf 指针地址_c语言对指针的理解
  4. python x_PythonX
  5. Spring配置中的bean直接引用其它bean的属性值
  6. win10下cuda、cudnn、c++的cuda环境(build tool of Visual Studio 2019)、anaconda的pytorch-gpu环境、gcc编译环境
  7. C++中static的用法
  8. 校园饭卡充值系统服务器配置,校园一卡通系统实施方案.doc
  9. 定积分求导例题_定积分典型例题
  10. 近期java面试总结
  11. Android--设置显示大小导致APP crash
  12. 计算机专业买电脑买那种好,windows7好还是windows10好_电脑系统7和10哪个好用
  13. 漫谈:一个工作两年半的程序员的人生感悟
  14. 浅谈teamtalk
  15. 实验7-4 身份证号码最后一位
  16. 我是一个尽量少用国产软件的软件开发工程师
  17. 你真的会用@Transactional吗?
  18. 创造力国际农民丰收节贸易会-万祥军:荒漠土地以色列淘金
  19. kali2.0linux折腾记
  20. 护眼灯值不值得买?专业眼科医生盘点十大护眼台灯排行榜

热门文章

  1. python游戏按键无效_瞬速掌握Python系统管理-调试和分析脚本1-debugging
  2. vue openlayer单击地图事件循环多次执行_Vue中$nextTick的理解
  3. 用VB轻松调用其他程序
  4. 什么是缩量、放量、堆量
  5. 智能一代云平台(二十九):通用mapper的改造
  6. 与神经网络相比,你对P图一无所知
  7. 视频全程:哈萨比斯首次公开解读AlphaZero
  8. 海量ICLR论文点评公开,用这几个工具可以读得更轻松
  9. 刘强东解读京东AI战略布局,沈南鹏高文杨强助阵谈AI机遇
  10. 最强AlphaGo怎样炼成?刚刚,DeepMind团队进行了全面解读