标题: 急,关于BPF截获数据包的问题
calf9007
新生入学
Rank: 1
注册用户



UID 180737
精华 0
积分 0(积分有什么用?)
帖子 1
阅读权限 10
注册 2007-2-5
状态 离线
发表于 2007-4-24 21:15  资料  个人空间  短消息  加为好友 
急,关于BPF截获数据包的问题

在fedora上调试nat-pt,其中使用BPF机制截获数据包,BPF截获的数据包同时也会交给系统的协议栈,举个例子,paJ{'l!F+P5D
下面是ethereal抓包,对于一个ICMPv6 Echo request ,其中Echo reply是期望得到的,aaaa:bbbb:cccc:dddd:eeee:ffff:c0a8:d4是V4主机在V6域中对应的地址,算是不存在的虚拟地址,nat-pt截获这个数据包后经过处理会返回Echo reply,但同时nat-pt所在机器的协议栈收到了Echo reply,因为aaaa:bbbb:cccc:dddd:eeee:ffff:c0a8:d4 不是V6域中的可路由地址,所以同时返回一个ICMPv6   Unreachable (Route unreachable),而这个Unreachable (Route unreachable)是不期望的报文。
F0am        o)_aaaa:bbbb:cccc:dddd:eeee:ffff:c0a8:d4 2001:250:f007:15::600 ICMPv6   Echo request(bd(J7ws^~
//解释:V4主机ping V6主机,经过nat-pt处理后发往V6主机,2001:250:f007:15::600(V6主机地址)"W B mo&A!f
m

2001:250:f007:15::600 aaaa:bbbb:cccc:dddd:eeee:ffff:c0a8:d4 ICMPv6   Echo reply
4O(L
q;mK
//解释:V6主机给nat-pt发送可达数据包,告诉V4主机可以ping通V6(2001:250:f007:15::600)。8ByT? u f2\al        W
2001:250:f007:15::800 2001:250:f007:15::600 ICMPv6   Unreachable (Route unreachable)
WN7LW;Yw0Q hU//解释:同时nat-pt所在的机器(2001:250:f007:15::800)系统协议栈获得ICMPv6   Echo reply报文,返回给V6主机一个Unreachable (Route unreachable)
+az)pJ`,dS现在的问题是:我在red hat上运行同样的程序,不会出现此问题,但在fedora上运行,有此问题。请高手指点,万分感谢!(FA4TNc|9FEk0q%~
是不是截获数据包又不交给系统的协议栈处理就能解决此问题,如何不让协议栈处理已经截获的数据包?
/N#mg)M#ER为什么同样的程序在red hat 9上运行就没有此问题呢,是不是BPF机制在fedora与red hat上截获数据包的时机不同?$u(t ^s/z"]        |\2{:kA
谢谢!
D[1o.lk1Y?b5hA

也可以E-mail ,QQ 给予指点,$^#P&K\Zmh
E-mail :calf9007@163.com
w7DB C3uwww.linuxeden.comQQ:43885970
%TX2rq        Mwww.linuxeden.com
k P$y S0`YN-e现在的问题是:我在red hat上运行同样的程序,不会出现此问题,但在在fedora上运行,有此问题。请高手指点,万分感谢!L)En[s3?X'c|
是不是截获数据包又不交给系统的协议栈处理就能解决此问题,那为什么同样的程序在red hat 9上运行就没有此问题呢,www.linuxeden.com)C_8l(De*j\qq
谢谢!
4~D0_ B Qwww.linuxeden.com也可以E-mail ,QQ 给予指点,
SHKyDt

E-mail :[EMAIL="calf9007@163.com"]calf9007@163.com[/EMAIL]
PBvs-Lv3@RLinux伊甸园论坛QQ:43885970

顶部
flag
版主
Rank: 7Rank: 7Rank: 7
版主



UID 19801
精华 1
积分 28(积分有什么用?)
帖子 5581
阅读权限 100
注册 2002-7-19
状态 离线
发表于 2007-4-30 11:02  资料  个人空间  短消息  加为好友 
不太明白你说的问题指什么,按理BPF并不会截获什么,只是驱动会在上传数据包给协议栈的时候会复制一份给BPF。
;uR I        h1{%p这里有一个文档应该也说明了一些吧,看看有没有帮助http://www.wanfangdata.com.cn/qi ... dnxx9906/990606.htm





上帝说,有问题,找GOOGLE 写程序是很神圣的事情!同样只是装系统,卖菜的大娘会的事情不见得就跟卖菜一样了。
顶部
 



当前时区 GMT+8, 现在时间是 2008-5-17 03:04

    Powered by Discuz! 5.5.0  © 2001-2007 Comsenz Inc.
Processed in 0.061840 second(s), 5 queries

清除 Cookies - 联系我们 - Linux伊甸园 - Archiver - WAP