首页 > 操作系统 > FreeBSD > 正文
FreeBSD handbook中文版 2 开始安装FreeBSD(1)
[日期:2005-3-28 0:00:00] [字体: ]
环境:FreeBSD 4.5-Release 
在FreeBSD下可以通过ipfw+dummynet来进行带宽控制,具体实现如下: 
1、 修改kernel configuration file, 加入对IPFW和DUMMYNET的支持 

options IPFIREWALL 
options DUMMYNET 

重新编译,安装新的kernel 

注:如果原内核中支持IPFILTER, 请注释 options IPFILTER。 

2、 新内核缺省是deny所有的连接,因此在/etc/rc.conf文件里加入以下行: 

# --------------------------------------------------------------------------- 
firewall_enable="YES" # Set to YES to enable firewall functionality 
firewall_script="/etc/rc.firewall" # Which script to run to set up the firewall 
firewall_type="open" # Firewall type (see /etc/rc.firewall) 
# --------------------------------------------------------------------------- 

注:因为是测试FreeBSD的带宽管理, 不想在ipfw上浪费时间,因此我们将firewall设置
为open状态, 允许所有包的in, out 

3、 重新启动系统,让新内核起作用。在ipfw里加入自己的rules来进行带宽管理: 

# ipfw pipe 1 config bw 128Kbytes/s 
# ipfw add 1000 pipe 1 ip from 172.22.4.90 to 172.22.0.0/24 out 

注:172.22.4.90是FreeBSD网卡的ip address, 172.22.0.0/16是它所在的网段 

第一条rule定义了一个128Kbytes/s的pipe 
第二条rule 是将从172.22.4.90-〉172.22.0.0/16 的packet送到pipe 1处理 

测试结果: 
加入两条rule前从FreeBSD上下载文件速率是900K Bytes/s(10M局域网) 
加入两条rule后从FreeBSD上下载文件速率是127K Bytes/s 

以上只是一个很简单的测试,但从结果看FreeBSD下通过ipfw+dummynet可以很好的进行带宽
的控制。大家可以参考dummynet手册来定制更复杂的rule来满足自己的需求! 

参考文档:DUMMYNET(4) 
上一篇:FreeBSD handbook中文版 2 开始安装FreeBSD(2) 下一篇:FreeBSD handbook中文版 1 整体介绍
打印 】 【 关闭 】 【 阅读: 次 】
    相关文章
·FreeBSD5.3+Apache+ssl认证 (2005年11月6日 0)
·FreeBSD 5.3 与 Apache2.0建立列目录 (2005年11月6日 0)
·初学者入门:FreeBSD系统的安装与优化 (2005年10月21日 493)
·小规模DDoS(拒绝服务)用Freebsd+IPFW搞定 (2005年9月28日 992)
·Linux+FreeBSD mini-HOWTO (2005年4月15日 1468)
·小规模DDoS用Freebsd+IPFW搞定 (2005年4月13日 3110)