赞助连接

赞助连接

阅 读 文 章

FreeBSD+IPFILTER实现整网(N个Vlan)透明代理上网

[来源:网上转载 (http://www.chinaunix.net) | 作者:网友(剑心通明) | 时间:2007-05-27 | 浏览:人次 ]


##接收到一个已经关闭的端口发来的所有包,直接drop,如果设置为1则是只针对TCP包
net.inet.udp.blackhole=1
##接收到一个已经关闭的端口发来的所有UDP包直接drop
########end#################

net.inet.ipf.fr_tcpidletimeout=7200
net.inet.ipf.fr_tcpclosewait=60
net.inet.ipf.fr_tcplastack=120
net.inet.ipf.fr_tcptimeout=120
net.inet.ipf.fr_tcpclosed=60
net.inet.ipf.fr_udptimeout=90
net.inet.ipf.fr_icmptimeout=35
net.inet.ipf.fr_tcphalfclosed=300
net.inet.ipf.fr_defnatage=600

net.inet.tcp.inflight.enable=1
## 为网络数据连接时提供缓冲
net.inet.ip.fastforwarding=0
##如果打开的话每个目标地址一次转发成功以后它的数据都将被记录进路由表和arp数据表,节约路由的计算时间,但会需要大量的内核内存空间来保存路由表。

#kern.polling.enable=1
##打开POLLING功能
##SMP不能和polling一起用
#########################The end##################################################

8:设置rc.sysctl, rc.conf 和 sysctl.conf 权限: 

chmod 600 /etc/rc.sysctl 
chmod 600 /etc/rc.conf 
chmod 600 /etc/sysctl.conf 


9:优化启动选项
##################编辑/boot/loader.conf优化启动########

autoboot_delay="2"
## 设置启动等待时间为2秒。

kern.ipc.nmbclusters="32768"
##设置系统的mbuf大小,系统的缓冲区

kern.ipc.maxsockets="16384"
## 增大线程间套接数量

net.inet.tcp.tcbhashsize="10240"
## 增大TCP控制块数量

beastie_disable="YES"
## 关闭小恶魔图像启动菜单
#############################################


10:增强ipfilter功能

修改/sys/contrib/ipfilter/netinet/ip_nat.h,把里面的LARGE_NAT前面的注释去掉,改为#define LARGE_NAT

修改/sys/contrib/ipfilter/netinet/ip_state.h

IPSTATE_SIZE 64997
IPSTATE_MAX 45497 

IP_STATE_MAX=IPSTATE_SIZE*0.7左右 
第一个可以调到10万左右 
注意都要是质数
11:
##############打系统补丁以后重新编译内核#############

cd /usr/src 
fetch http://people.freebsd.org/~delphij/patch-SMP 
patch < patch-SMP 
重新编译内核并重新启动。
#这是针对5.3 SMP的delphij大哥做的补丁,

cd /sys/contrib/ipfilter/netinet/
patch < patch-ip_nat.c
#这个是针对ip_nat的一个补丁,也可以自己手动注释,改了ip_nat的参数以后编译内核会提示两个变量没有定义。

cd /usr/src
make buildkernel KERNCONF=proxy
make installkernel KERNCONF=proxy
reboot
这种编译方法将保留原来的kernel为kernel.old,
这样如果你做错了什么,就有机会通过boot:出现时输入kernel.old来恢复。

######如果用config/make编译内核的会在/usr/src产生很多中间文件#########
cd /usr/src/sys/i386/conf 
/usr/sbin/config proxy
cd ../compile/proxy
make depend
make
make install
reboot
#########################################################################


12:自动备份日志
目前方法不太成熟,我曾经试过把nat.log清空,但是也许是因为系统正在频繁的写入该文件,所以我只能是先暂停记录,备份完记录以后再重新开始记录,好在我是一个小时备份一个日志文件,拷贝这一小时的记录不用很长时间的,所以基本上不会少记录东西的,看到本文的兄弟们如果有更好的切实可行的方法,望告诉我一声,多谢!
论坛热门帖子: [lch203] 写得蛮好的linux学习笔记(10-21)
[黑马制造] 学习java的30个目标(10-19)
[笑傲股林] 做测试半年了,有点迷茫,应该再学些什么提高自己的测试水平和测试能力呢?(10-19)
[udp8589] 大家用google的来吱一声? 用百度的~~也来报道下?(10-18)
[沂偌掳兆] 本人总结的一些认为C++比较经典的书籍,希望对大家有用(10-18)
TAG标签: 代理 上网 透明 实现 /usr/local/beifen.sh 回复 ## a1.b1.c1.d1

最新评论 共有0位网友发表了评论

发表评论

评论内容:不能超过250字,需审核,请自觉遵守互联网相关政策法规。
用户名:(注册)
密码:
验证码:
匿名发表

网站地图友情连接交流论坛网站投稿广告服务联系我们留言本站长统计
Some rights reserved: www.chmhome.com, 鄂ICP备07010232号 E-mail:chinakafei@live.com,QQ:552766
中国咖啡技术网(Chmhome):国外编程技术书籍,中文编程手册,经典编程文章,交流技术,技术软件下载,计算机论文,毕业论文.