- 博客(13)
- 资源 (4)
- 收藏
- 关注
原创 TCP的TIME_WAIT快速回收与重用
声明一点:Linux中是无法修改tcp的TIME_WAIT值的,除非重新编译,起码我是没有找到怎么改。值得注意的是,net.ipv4.tcp_fin_timeout这个参数是FIN_WAIT_2的值,而不是TIME_WAIT的值。我不知道为何很多人都会把它当成是TIME_WAIT的值,想了一下,我觉得是两点:1.TIME_WAIT过于耀眼,以至于所有出现timeout,加上里面有个tcp的配置,都
2013-10-30 23:20:58 64665 9
原创 TPROXY之殇-NAT设备加代理的恶果
一段往事无独有偶,过了N多年,又到了这个时候,碰到了同样的事情...xx年的万圣节,由于服务器瘫痪我们被罚了500块钱,最终发现瘫痪的原因是TPROXY造成的,当时每个大服务区有一台LVS负载均衡设备,工作在NAT模式下,下联一台核心交换机,核心交换机分出N条线路去往各小区域服务器群,每一个小区域服务群拥有一台TPROXY实现的登录代理服务器,仅仅对登录数据包做代理,其它的包直接通过。
2013-10-26 23:39:18 24618 1
原创 指出一些常见的谎言与谬误
1.关于读书我是搞IT的,对历史感兴趣,因此会读很多书,互联网时代人们评书就不必在茶馆里评了,各种专业非专业论坛,但是都在评论经典。可是据我的怀疑以及事后的调查,大多数的人都是人云亦云,根本就没有读过,由于经典太具声望而买来摆在书架上,把拥有当读过而去评头论足。其实书和钞票是一样的,正如你有1000万+,仅仅有那么多钱,你却跑去跟人家评论顶级奢侈品,仅仅有书而不读并不算拥有!举出几个经典,我有,但
2013-10-13 10:57:27 4842 2
原创 Linux系统NAT实现机制的升级改进
一点牢骚和希望一直以来,一直对Linux的NAT很不满,也写过《Linux系统如何平滑生效NAT》系列文章中的patch进行修补,还写过一些类Cisco实现的patch,然而都效果不大好,暴雨的夜晚,长假的倒数第二晚,虽然没有10月7日晚雨量大,可是10月6日晚上到7日凌晨,上海嘉定那边的雨也可以堪称暴雨了。一直想看却一直没有时间看的《斯巴达克斯 第三季》终于看完了,雨越大越兴奋,可是巴拉巴西的《
2013-10-13 08:05:12 6845
原创 为一张PCI卡打通经络的过程
一张PCI卡通过“一转二”的转接卡插在主板上,probe调用失败,日志显示读取配置空间的时候发生了奇偶校验错误,可是使用相同的转接卡把它插在另外一台相同机器的主板上时,却运行正常,这就说明不是转接卡的问题,也不是PCI卡的问题,那就是主板的问题了,是这样吗?换另外一张相同的PCI卡使用相同转接卡插在出问题的主板上,运行正常,这貌似也不能说主板有问题...所有的卡金手指擦了又擦,哈了又哈,问题依旧.
2013-10-13 07:57:17 4744 2
原创 Static NAT with iptables on Linux
本文的名字取的比较有意义,因为本文并不是真的要讨论如何在Linux上使用iptables实现static nat!之所以这么命名本文,是想引起别人的注意,因为中文资料,以及国内的搜索引擎,基本上没有人关注这个问题,也几乎没有什么人讨论这个问题,而我却由于项目原因以及平时的折腾,切身体会到了Linux的NAT实现的缺陷。如果你使用google,你会看到大量的国外的技术宅男宅女们在讨论这个问题,虽然也
2013-10-13 07:56:10 5344
原创 Linux NAT基本流程与实现技巧
基于matches的NATLinux的NAT是基于match的,即在满足一系列条件的前提下执行SNAT或者DNAT,因此要求也就比较宽松,唯一的约束就是路由,即路由动作发生的时候,必须是基于最终的目标IP地址,因此DNAT必须发生在路由之前(对于本机发出的数据包,则在路由之后,然后重新路由),如下图所示附:Netfilter与ip_conntrackNetfilterLinux的协议栈仅仅实现了基
2013-10-04 11:35:21 10022 1
原创 互联网上的内容转发
转发:本文的转发并不指转发行为forwarding,而特指非自己原创的内容发布。声明:个人观点,不必较真,无所谓对与错。如果让我补充,我会补充一些外延,比如如今的微博,就像是为转发而生的,转发量基本成了人气最重要的权值;还有微信刷屏,在我的圈子里,这些人包括老年人-一般指父辈那一代,大龄领导,步入社会后变老成的曾经的同学,无聊的手机控。这些人转发微博以及微信刷屏的动机不同,但是效果有一个,那就是占
2013-10-04 09:39:29 5206 1
原创 编写一个Linux虚拟网卡来实现类NVI
我们可以在Linux上使用loopback接口来模拟两个阶段的路由抉择,第一个阶段是走一遍PRE/POST ROUTING流程,将NAT实施完毕,第二阶段完成单纯路由转发。然而需要在Netfilter上挂钩子,以便取消关联在skb上的路由项,并且取消关联在skb上的conntrack信息,因为在第二阶段的单纯路由流程里面,我不希望再有什么基于conntrack的动作,因此如果需要有基于conntr
2013-10-04 09:36:56 5245
原创 Linux实现基于Loopback的NVI(NAT Virtual Interface)
Loopback实际上是个hole但是如果它不是一个hole,它确实可以做一些事,类似Cisco的NVI那样。既然前期是“如果它不是一个hole”,那就需要对代码进行一些修改。在修改之前,你必须明白的是,Linux的loopback接口为什么是一个hole。 标准规定,所有试图经过loopback接口去往其它地方(非本机)的数据包要全部丢弃。Linux使用loop hole做到了这一
2013-10-04 09:33:45 7355
原创 用IP地址的用途理解Loopback接口
1.问题IP地址到底是属于主机的还是属于网卡的?这个问题有点太学院派了,现实中,只要懂得IP地址的概念以及IP路由,基本上没有问题。IP作为一个网络层协议,它更多的意义在于寻址而不是标识主机,因此你可以认为IP是属于网卡的。 然而不同的人对于IP地址有不同的看法,程序员看来,IP地址是属于主机的,因为他们总是用一个套接字来表示一个服务,套接字中的IP地址表示一台主机,协议和端口号表示
2013-10-04 09:27:44 36900 1
原创 闲聊计算机IP网络
记得刚上第一节《计算机网络》课的时候,下课时就记得网络分为通信子网和资源子网,当时觉得这是多么的教条,时隔多年以后,再来回味这个通信子网和资源子网的划分,还真是能牵扯出来不少东西呢... 通信子网和资源子网的划分是横向的划分,而纵向的划分就是诸协议栈。 什么是通信子网呢?通信子网就是负责网络交通的子网,它的任务就是路由寻址。什么是资源子网呢?资源子网中存储资源数据
2013-10-04 09:24:43 5846 3
原创 UNIX一切皆文件的思想正确吗
一切皆XX,这一看就是本质论以及整体论信徒的呐喊!引.关于树型模型树型模型和一切皆文件没有直接的关系,只是它们的经历很类似。近期看了一本老婆买的书,《视觉繁美》。在古代,人们对树情有独钟,最终包括组织架构,包括分类都变成了树,读到了后面的章节,我才发现,原来树型模型并不是一切的本质,它是在公元前10000左右的美索不达米亚的新月地带人为产生的,即农业革命导致了人们产生了树型模型的观念。
2013-10-04 09:17:50 10078 1
一个iptables的stateless NAT模块实现
2014-12-27
模块化的nf-HiPAC
2014-11-21
关于linux内核以及其他个人体会的文集
2009-09-07
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人