分享
 
 
 

FreeBSD ipfilter的严重问题

王朝system·作者佚名  2006-11-23
窄屏简体版  字體: |||超大  

我为一客户做的防火墙(FreeBSD(p23)+ipfilter 3.4.33pre2)每天都要死好几次,而且每次都是在没任何反应和输出信息的情况下死掉,弄得我好没面子。我一直没查出问题在哪。

这几天在Ipfilter的网站上看到邮件列表里一个人碰到和我相同的情况,原文如下:

Using FreeBSD 4.9-STABLE + ipfilter 3.4.33pre2

If I have ipf rules like:

block return-icmp (port-unr) in log quick on xl0 proto udp from any to any port = 111

attempts to connect to that port cause the sytem to freeze instantly, no crash dumps, no errors etc.

The same happens using

block return-icmp-as-dest ........ I haven't seen anything like this in recent archives.

What can I do to further debug this ?

大家可以做个简单的测试:

假设防火墙为A,工作站为B。

在你的ipf.conf规则文件的最前面加上这样一条规则:

block return-icmp-as-dest in quick on fxp0 proto udp from any to any port = 53

其中fxp0是你要测试的接口,根据你自己的情况修改。

然后在另外一台电脑B上把DNS设为要测试的这台防火墙A的IP地址,在B上运行nslookup,随便查询几个域名,多查几次,你就会看到防火墙A在没任何信息输出的情况下立即冻结,死机。真可怕,百事百灵。即使你的ipf.conf没这个规则在特殊情况下也会出现这种现象,我试了3.4.33pre1-pre3都有这个毛病,据说3.4.32也是,3.4.31好象没这个毛病。有人公布了一个patch,我试了一下,有效。我附在后面,这个patch已得到ipfilter作者的认同,可以放心使用。

Index: ip_fil.c

===================================================================

RCS file: /home/cvs/firewall/firewall/usrlocal/ipfilter34/ipfilter3433/ip_fil.c,v

retrieving revision 1.3

diff -u -r1.3 ip_fil.c

--- ip_fil.c 17 Dec 2003 12:33:56 -0000 1.3

+++ ip_fil.c 22 Dec 2003 11:23:28 -0000

@@ -1285,7 +1285,7 @@

frn.fin_ifp = fin->fin_ifp;

frn.fin_v = fin->fin_v;

frn.fin_out = fin->fin_out;

- frn.fin_mp = fin->fin_mp;

+ frn.fin_mp = mp;

ip = mtod(m, ip_t *);

hlen = sizeof(*ip);

@@ -1465,7 +1465,13 @@

#endif

if (avail) {

+ slen = oip->ip_len;

+ oip->ip_len = htons(oip->ip_len);

+ soff = oip->ip_off;

+ oip->ip_off = htons(oip->ip_off);

bcopy((char *)oip, (char *)&icmp->icmp_ip, MIN(ohlen, avail));

+ oip->ip_len = slen;

+ oip->ip_off = soff;

avail -= MIN(ohlen, avail);

}

@@ -1486,10 +1492,6 @@

} else

#endif

{

- slen = oip->ip_len;

- oip->ip_len = htons(oip->ip_len);

- soff = oip->ip_off;

- oip->ip_off = htons(ip->ip_off);

ip->ip_src.s_addr = dst4.s_addr;

ip->ip_dst.s_addr = oip->ip_src.s_addr;

@@ -1509,13 +1511,7 @@

fin->fin_hlen = hlen;

err = send_ip(oip, fin, &m);

fin->fin_hlen = shlen;

-#ifdef USE_INET6

- if (fin->fin_v == 4)

-#endif

- {

- oip->ip_len = slen;

- oip->ip_off = soff;

- }

+

return err;

}

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
 
>>返回首頁<<
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有