- 博客(4)
- 收藏
- 关注
原创 Netfilter学习之NAT类型动态配置(六)全锥型NAT用户空间iptables命令行实现
本文主要实现全锥型NAT的用户空间iptables命令行扩展的实现,实现思路见上文,具体可以模仿MASQUERADE的源码进行改写。1.关键部分实现代码 由于fullcone类型并不需要输入参数,因此parse可以为空,print和save也很简单,只需要help和结构注册两部分保证正确即可。 help如下:static void FULLCONE_help(voi...
2018-04-22 22:10:32 1584 1
原创 TCP拥塞控制算法BBR源码分析
BBR是谷歌与2016年提出的TCP拥塞控制算法,在Linux4.9的patch中正式加入。该算法一出,瞬间引起了极大的轰动。在CSDN上也有众多大佬对此进行分析讨论,褒贬不一。 本文首先对源码进行了分析,并在此基础上对BBR算法进行总结。1.源码分析/* Bottleneck Bandwidth and RTT (BBR) congestion control * ...
2018-04-19 23:38:34 9467 3
原创 Netfilter学习之NAT类型动态配置(五)全锥型、限制型锥形、端口限制型锥型、对称型NAT的实现思路
本节中,我们根据上节的分析,从理论上分析不同NAT的实现思路。对NAT不了解的可以看Netfilter学习之NAT类型动态配置(二)。1. 端口限制型NAT Port Restricted NAT是Netfilter中自带的NAT转化规则,即MASQUERADE。此种情况下,需要检测外部tuple和目标tuple四个变量,均相同才可以成功访问内部tuple。2. 限制型N...
2018-04-14 20:19:59 33070
原创 Netfilter学习之NAT类型动态配置(四)nf_nat_core.c源码解析
在研究了masquerade的用户空间和内核源码之后,我们发现最后进入了nf_nat_setup_info()函数,该函数位于nf_nat_core.c之中,是Netfilter的NAT表核心函数的实现。1 nf_nat_core.c源码分析 本小节分析了nf_nat_core的源码,重点分析当Iptables指定的钩子函数激活后,在Netfilter中是如何识别和起作用的。这里...
2018-04-06 11:39:42 4230
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人