napt66 改进版
napt66是北邮的同学做的ipv6的nat程序,我在它们的基础上做了些改进。1、只对私网IP进行NAT,对本机发出的数据包不做nat。
2、添加端口映射功能。用户空间程序使用netlink与内核模块通信,添加要映射的地址和端口到内核的链表中。
3、使用内核的定时器自动对超时连接表进行删除,不再需要在新建立连接的时候进行遍历删除。
4、针对smp下可能存在的问题对链表上锁。
5、改进hash。在hash时加上远程端口。尽量避免hash碰撞。 还是先做个软件的科普吧 老大 fuzhend 发表于 2012-5-9 14:23 static/image/common/back.gif
还是先做个软件的科普吧 老大
简单说就是对ipv6进行nat的内核模块。:P
因为ipv6理论上有无穷多的IP地址,是根本不需要使用nat的。(nat也就是网络地址转换,解决公网IP地址不够用的问题。)
但是在某些情况下,ipv6使用nat也非常有必要。
一是直接用ipv6的公网地址的电脑会会直接暴露在网络上,泄露秘密和网络拓扑。
二是如果接入商所提供的ipv6 IP段的变化,会直接导致使用的电脑的IP也相应变化,致使管理上的困难。
三是接入商只分配了一个ipv6地址给你,但你却有n台电脑需要用ipv6。
so , 使用ipv6 nat会成功的解决以上问题。
napt66就是ipv6 nat 的具体实现。
:) 编译的时候提示napt66_main.c文件错误,怎么回事? 提示有无效字符 tb-tun改进版,支持ipv6 nat。全部在用户态实现,不用加载到内核中,适合openvz虚拟机。
页:
[1]