- 博客(12)
- 资源 (4)
- 收藏
- 关注
原创 彻底理解Cisco/Linux/Windows的IP路由
-1.只要理解实质,名称并不重要!很多使用Linux的网络高手在面对Cisco管理员的诸如管理距离,路由度量等词汇时,还没有PK就自觉败下阵来了。我觉得这实在太可惜了,大家本是一家,为何这么为难对方呢?如果理解了实质,如何描述就不是那么重要了。如果一个Cisco设备管理员对你说一些你不懂的名词,或者对你描述一些Cisco上有但是基于Linux的网关设备上没有的特性,而且那个人因为拥有了CCIE证书
2013-08-31 21:04:25 6943 3
原创 适用于连续资源块的数组空闲链表的算法
如何来管理空闲资源,显而易见的是组织成一个双向链表,称作freelist,然后每次从该链表上取出一个,释放的时候再放回去。为了减少碎片,最好的策略就是优先分配最近释放掉的那个,如果能考虑合并的话,类似伙伴系统那样,就再好不过了,本文给出的是一个通用的可以将资源映射到一个整型ID的资源分配算法,完全基于一个数组,不需要内存管理,也不需要分配结构体。 组织链表的时候,内存管理要耗去大量的
2013-08-25 14:32:56 4696
原创 编写一个UNIX文件系统
近日有人求助,要写一个UNIX文件系统作为暑假作业。这种事情基本是学操作系统的必须要做的或者是做过的,毕竟文件系统是操作系统课程的一个重要组成部分。要实现这个UNIX文件系统,很多人就扎进了UNIX V6的的系统源码,以及《莱昂氏UNIX源代码分析》和《返璞归真:UNIX技术内幕》这两本书,很多人出来了,很多人在里面迷失了...最终忘了自己只是要实现一个UNIX文件系统而已。 为何会
2013-08-25 14:30:51 7831 2
原创 手机上网的秘密1
现在的智能手机都带有3G功能和WIFI功能,默认起作用的是WIFI。为何接入WIFI后,3G就能停用呢?实际上并没有被停用,改变的只是默认路由而已,3G分组网络依然存在。有一种现象可以揭示它,比如你接入了公司内部的一个WIFI热点,而该WIFI只是一个内部网络,无法接入互联网,此时你的手机显示在使用WIFI而不是3G,然而此时你依然能获得MZone,QQ,微信等应用为你推送的信息,如果3G分组网络
2013-08-18 18:32:12 4681
原创 欧洲中世纪末期的战争
罗马帝国崩塌,欧陆各诸侯封土建国,在基督教的名义下,上演了一出出大戏,或战争和英雄,或王子和公主,或猎鹰和巫婆,...中世纪末期,开始了长达几百年的战争,这些战争催生了西方文明,将西方带入了世界的顶峰。实际上,这些战争的原因几乎都可以归结为亲家或亲属之间的财产纠纷。 和中国春秋战国时期一样,当时的欧洲也是嫡长子继承制,公国侯国之间普遍联姻,然而和中国不同的是,那时欧洲是一夫一妻制,即
2013-08-18 13:43:20 9673 1
原创 ip_conntrack缓存neighbour
在我的ip_conntrack版本中,它目前已经可以缓存路由,filter规则等,还可以平滑生效最新配置的NAT,它越来越像真正的SDN了,唯一有待完善的就是将5元组的tuple进化成N元组的tuple了,其余的更新及修正都是些不会引发质变的量变。 现在看一下,ip_conntrack还能缓存什么?当然了,在我的"路由cache in conntrack"版本中,我只是将dst_en
2013-08-18 13:02:52 3892
原创 关键在封装并发出了帧-IP冲突也无所谓
最近有点走火入魔了!本文所用技术非标准,较真儿者慎入!!一个局域网内,两台机器拥有同样的IP,可以吗?这不就是IP地址冲突吗?当然不行!可是要知道,如果搞点旁门左道,还是可以做到的!首先要明白的是,IP数据报在以太网中的收发特征:对于发送来讲:只要你有一个目标MAC供你封装成帧,就可以发出去,而这个MAC地址是由ARP来获取的;对于接收来讲:只要收到帧的目标MAC是接收到帧的网卡的MAC地址,就可
2013-08-18 13:01:15 4261
原创 关于互联网共享精神
有买才有卖,如果你每次都揣着钱想为在网上搜到的对自己解决问题有用的信息而付费的话,那么如果你搞清楚了一个别人没有搞清楚的问题,那么你肯定也希望别人也会为你付费,这样对你才公平,这也是人的交换本性,远古时期的人类不就是靠这个发展出文明了吗?然而文明不可能在物物交换的基础上发展到更高程度。 远古时期,纯粹的物物交换中,人们是不会带有盈利思想的,虽然人的本性是贪婪的,但是在物物交换中完全体
2013-08-18 12:59:31 5101 1
原创 Windows配置路由时可以指定源地址啦
如果你的一块网卡上配置了多个IP地址,那么在数据包发出时会使用哪一个呢?在Linux上,使用iproute2工具可以设置src参数强制封装源地址:ip route add 1.2.3.4/32 via 4.3.2.1 src 3.3.3.3但是在Windows上,一切都是内部逻辑自动选择的,其原则如下:单网卡时,选择和默认网关在同一网段的最匹配IP地址为源;多网卡时,首先选择默认网关所在的网卡作为
2013-08-18 12:57:31 12964 1
原创 iptables/arptables实现单IP一级二级路由
有时候,你仅仅有一个IP地址,然而却有多台设备,比如公司配发的电脑,自己的笔记本电脑,手机,iPad等,显然公司配发的电脑将是你的这个IP的第一优先占有者,其它的设备将无法接入。如果你手上有一个带有WIFI模块的Linux BOX,你可能会想到建立二级路由,然而此时你的那台公司配发的机器就会被隐藏在这个BOX后面,如果你的BOX在WAN口做了基于状态的MASQURADE地址转换,那么所有针对你的被
2013-08-08 21:41:45 26993
原创 我和ip_conntrack不得不说的一些事
面对让人无语的ip_conntrack,我有一种说不出的感觉!自从接触它到现在,已经两年多了,其间我受到过它的恩惠,也被它蹂躏过,被它玩过,但是又不忍心舍弃它,因为我找不到更好的替代。工作中,学习中,用到了ip_conntrack的几乎所有特性,然而这些都不能拿来主义得使用,过程中多少有些美中不足,多少会留下一些遗憾,总结下来,我遇到的典型而非全部的问题如下所列:1.不能马上生效NAT问题;2.需
2013-08-03 14:34:42 24130 1
原创 Linux系统如何平滑生效NAT-BUGFIX
在《Linux系统如何平滑生效NAT》中,代码有两处问题。这只是目前发现的,没有发现的还有很多很多,这就是我为何不一开始把代码搞复杂的原因。1.一个bug附带一个优化:注意以下的代码:if (!nf_nat_initialized(ct, maniptype)) { //NAT还没有设置进conn的情况 ...
2013-08-03 14:15:31 4762
一个iptables的stateless NAT模块实现
2014-12-27
模块化的nf-HiPAC
2014-11-21
关于linux内核以及其他个人体会的文集
2009-09-07
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人