首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    Linux防火墙iptables中mark模块分析及编写

    在linux系统中为了更好的实现网络流量的管理,使用了内核的mark来标识网络流量。这样造成了用户层再使用mark来标记多线负载,两种mark会互相覆盖,达不到想要的结果。在此种情况下,通过研究发现可以扩展mark模块来解决这种冲突。    1 Iptables的结构和命令格式分析    1.1 Iptables的结构分析    Iptables是linux系统为用户提供的一个配置防火墙的工具。它提供一个命名规则集。在linux中iptables防火墙实现的核心模块是netfilter,它负责维护防火墙的规则链表,实现防火墙安全防御能力。Netfilter主要有三种功能:数据包过滤、网络地址转换(nat)以及数据包处理(mangle)。数据包过滤模块的功能是过滤报文,不作任何修改,或者接受,或者拒绝。Nat是网络地址转换,该模块以connection tracking模块为基础,仅对每个连接的第一个报文进行匹配和处理,然后交由connection tracking模块将处理结果应用到该连接之后的所有报文。Mangle是属于可以进行报文内容修改的ip tables,可供修改的报文内容包括mark、tos、ttl等。同时该模块带有用户空间和内核交流的接口。    1.2 Iptables命令格式分析    一个最简单的规则可以描述为拒绝所有转发报文,用iptables命令表示就是:iptables -A FORWORD -j DROP。Iptables应用程序将命令行输入转换为程序可读的格式,然后再调用libiptc库提供的iptc_commit()函数向核心提交该操作请求。它根据请求设置了一个struct ipt_replace结构,用来描述规则所涉及的表和HOOK点等信息,并在其后附接当前这条规则,一个struct ipt_entry结构。组织好这些数据后,iptc_commit()调用setsockopt()系统调用来启动核心处理这一请求。    2 Netfilter的结构分析    Netfilter是linux系统中的内核防火墙框架,主要进行包过滤,连接跟踪,地址转换的功能,是防火墙的基础。其主要通过表、链实现。在netfilter中,每种网络协议都有自己的一套hook函数。数据报经过协议栈的几个关键点时调用hook函数,hook函数标号和协议栈数据报作为参数,传递给netfilter框架。其主要框架如图1所示:    3 Netfilter和 Iptables相关模块属性分析    3.1 与netfilter有关的结构    Netfilter一个重大修正思想就是将netfilter作为一个协议无关的框架,表现在内核结构树中单独建立net/netfilter目录,在net/netfilter下的匹配和目标模块文件名称以“xt_”开头。    为了和iptables兼容,这些文件中增加了一个新的宏定义:module_alias,来表示模块的别名。所有扩展程序的名称也是以xt开头。    Netfilter扩展的程序框架:    Xt_kzmark.c:    Static unsigned int kzmark_tg(struct sk_buff *skb, const struct xt_action_param *par)    Static int kzmark_tg_check(const struct xt_tgchk_param *par)    Static void kzmark_tg_destroy(const struct xt_tgdtor_param *par)    Static boool kzmark_mt(const struct sk_buff *skb, struct xt_action_param *par)    Static int kzmark_mt_check(const struct xt_mtchk_param *par)    Static void kzmark_mt_destroy(const struct xt_mtdtor_param *par)    Static struct xt_target kzmark_tg_reg __read_mostly = {}    Static struct xt_match kzmark_mt_reg __read_mostly = {}    Static int __init kzmark_mt_init(void)    {Int ret;    Need_ipv4_conntrack();    Ret = xt_register_target(&kzmark_tg_reg);    Ret = xt_register_match(&kzmark_mt_reg);}    Static void_exi

    02

    个人服务器购买、安装与配置攻略~20k搞定一台可以做转录组分析的服务器~

    塔式服务器中Dell完胜其他~ 四、选什么样的配置? 使用云服务器做分析的时候,能使用的最高性能配置就是12核64G+8T的硬盘,至于其他比如显卡:等做深度学习的时候再配也来得及比如SSD:性价比超低,等价钱降下来了再配也来得及比如双路cpu:其实一个就够用了,只要板子有两个接口,以后再配也来得及比如光驱:随机附送,可有可无。等等都是次要的所以下面就是最后的配置塔式服务器机箱+主板:dell poweregde T630CPU:E5 2630V4(10核20线程)内存:64G硬盘:2x4T,dell工业级SAS硬盘列阵卡:H330(管理硬盘的东西)电源:495W dell热插拔电源(考虑发在家里电费问题,就选了个低功率的)其他:都是默认的 五、只有机箱吗?还需要买什么配件? 当然只有机箱,你需要配一个显示器,还有一套鼠标键盘。显示器不用特别好,站长选的是:Dell SP2318H 六、价格 其实,这套配置的议价空间真的不大,网上购买节省的就是因为销售渠道造成的加价,只要找到直销的店都能拿到最低上面那套配置,整机价格:19500元。 显示器赶上了促销价格:1000元。20k的价格,在预算之内,就这样,站长不仅花光了讲课赚的钱,还要还贷。哎~~~~~ 七、运行情况 1、系统选择:站长因为使用centos习惯了,强行让卖家安了个一个centos。没想到的是Centos也有图形界面了,欣慰一。2、转录组分析:云服务器上能做的这个服务器完全胜任,从下载到分析数据可视化,整个过程效率提高20%,欣慰二。3、远程操控与网络:这个对于站长是刚需,值班时候用手机简单操作一下什么是必须要实现的。站长家的宽带是所谓的100M电信光纤。然而,实际使用中下载峰值只有10M/s,没有云服务器使用的时候20M/s的峰值快,能到10M/s也知足了。然而,第一次使用的时候站长几近崩溃,用ascp高速下载峰值只有5M/s,更不爽的是只要下载一开始,全家都不要用网了,看个世界杯都卡死,在不断扎心中,站长绝对找找解决方案,如下:(1)从头找原因,一般电信小区光纤入户都是在一个大局域网下面,分到家里IP都是100.xxx.xxx.xxx这样的,用这个IP你是不能进行远端操作的。另外家里都用路由器,电脑上显示的IP都是192.168.xxx.xxx这样的地址,远程是无法操控的。站长联系了10000,得知电信可以把100局域网IP改成123公网IP,通过路由器设置定向转发,就可以在外网用ssh输入账号密码,登陆自己家里的服务器了。也就是像腾讯云服务器那样实现登陆。欣慰三。

    02

    20k搞定生信服务器购买、安装与配置攻略~

    塔式服务器中Dell完胜其他~ 四、选什么样的配置? 使用云服务器做分析的时候,能使用的最高性能配置就是12核64G+8T的硬盘,至于其他比如显卡:等做深度学习的时候再配也来得及比如SSD:性价比超低,等价钱降下来了再配也来得及比如双路cpu:其实一个就够用了,只要板子有两个接口,以后再配也来得及比如光驱:随机附送,可有可无。等等都是次要的所以下面就是最后的配置塔式服务器机箱+主板:dell poweregde T630CPU:E5 2630V4(10核20线程)内存:64G硬盘:2x4T,dell工业级SAS硬盘列阵卡:H330(管理硬盘的东西)电源:495W dell热插拔电源(考虑发在家里电费问题,就选了个低功率的)其他:都是默认的 五、只有机箱吗?还需要买什么配件? 当然只有机箱,你需要配一个显示器,还有一套鼠标键盘。显示器不用特别好,站长选的是:Dell SP2318H 六、价格 其实,这套配置的议价空间真的不大,网上购买节省的就是因为销售渠道造成的加价,只要找到直销的店都能拿到最低上面那套配置,整机价格:19500元。 显示器赶上了促销价格:1000元。20k的价格,在预算之内,就这样,站长不仅花光了讲课赚的钱,还要还贷。哎~~~~~ 七、运行情况 1、系统选择:站长因为使用centos习惯了,强行让卖家安了个一个centos。没想到的是Centos也有图形界面了,欣慰一。2、转录组分析:云服务器上能做的这个服务器完全胜任,从下载到分析数据可视化,整个过程效率提高20%,欣慰二。3、远程操控与网络:这个对于站长是刚需,值班时候用手机简单操作一下什么是必须要实现的。站长家的宽带是所谓的100M电信光纤。然而,实际使用中下载峰值只有10M/s,没有云服务器使用的时候20M/s的峰值快,能到10M/s也知足了。然而,第一次使用的时候站长几近崩溃,用ascp高速下载峰值只有5M/s,更不爽的是只要下载一开始,全家都不要用网了,看个世界杯都卡死,在不断扎心中,站长绝对找找解决方案,如下:(1)从头找原因,一般电信小区光纤入户都是在一个大局域网下面,分到家里IP都是100.xxx.xxx.xxx这样的,用这个IP你是不能进行远端操作的。另外家里都用路由器,电脑上显示的IP都是192.168.xxx.xxx这样的地址,远程是无法操控的。站长联系了10000,得知电信可以把100局域网IP改成123公网IP,通过路由器设置定向转发,就可以在外网用ssh输入账号密码,登陆自己家里的服务器了。也就是像腾讯云服务器那样实现登陆。欣慰三。

    03
    领券