免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
12
最近访问板块 发新帖
楼主: mtx99
打印 上一主题 下一主题

请教netfliter 与tcpdump冲突的问题; [复制链接]

论坛徽章:
36
IT运维版块每日发帖之星
日期:2016-04-10 06:20:00IT运维版块每日发帖之星
日期:2016-04-16 06:20:0015-16赛季CBA联赛之广东
日期:2016-04-16 19:59:32IT运维版块每日发帖之星
日期:2016-04-18 06:20:00IT运维版块每日发帖之星
日期:2016-04-19 06:20:00每日论坛发贴之星
日期:2016-04-19 06:20:00IT运维版块每日发帖之星
日期:2016-04-25 06:20:00IT运维版块每日发帖之星
日期:2016-05-06 06:20:00IT运维版块每日发帖之星
日期:2016-05-08 06:20:00IT运维版块每日发帖之星
日期:2016-05-13 06:20:00IT运维版块每日发帖之星
日期:2016-05-28 06:20:00每日论坛发贴之星
日期:2016-05-28 06:20:00
11 [报告]
发表于 2011-09-20 15:03 |只看该作者
回复 10# VIP_fuck
各抒己见啊,怎么回事乱说呢,我也只是说可能嘛

论坛徽章:
12
2015年辞旧岁徽章
日期:2015-03-03 16:54:1515-16赛季CBA联赛之同曦
日期:2017-03-17 19:13:162016科比退役纪念章
日期:2016-11-07 08:28:12luobin
日期:2016-06-17 17:46:36wusuopu
日期:2016-06-17 17:43:4515-16赛季CBA联赛之福建
日期:2016-01-14 12:49:22程序设计版块每日发帖之星
日期:2015-12-13 06:20:00程序设计版块每日发帖之星
日期:2015-06-08 22:20:00程序设计版块每日发帖之星
日期:2015-06-08 22:20:002015年亚洲杯之科威特
日期:2015-03-24 14:21:272015年迎新春徽章
日期:2015-03-04 09:57:092016科比退役纪念章
日期:2018-04-10 16:20:18
12 [报告]
发表于 2011-09-20 15:11 |只看该作者
我猜还是内存用错了,换个赋值方式也许能行.
拙见拙见.

论坛徽章:
0
13 [报告]
发表于 2011-09-20 15:22 |只看该作者
程序单独运行没啥问题. 说明赋值问题不大

只要不运行tcpdump就不会死机.   这个是比较郁闷的地方.

论坛徽章:
36
IT运维版块每日发帖之星
日期:2016-04-10 06:20:00IT运维版块每日发帖之星
日期:2016-04-16 06:20:0015-16赛季CBA联赛之广东
日期:2016-04-16 19:59:32IT运维版块每日发帖之星
日期:2016-04-18 06:20:00IT运维版块每日发帖之星
日期:2016-04-19 06:20:00每日论坛发贴之星
日期:2016-04-19 06:20:00IT运维版块每日发帖之星
日期:2016-04-25 06:20:00IT运维版块每日发帖之星
日期:2016-05-06 06:20:00IT运维版块每日发帖之星
日期:2016-05-08 06:20:00IT运维版块每日发帖之星
日期:2016-05-13 06:20:00IT运维版块每日发帖之星
日期:2016-05-28 06:20:00每日论坛发贴之星
日期:2016-05-28 06:20:00
14 [报告]
发表于 2011-09-20 15:31 |只看该作者
回复 13# mtx99
有些地方是有关联的,并不会是你想象的那么简单。

不知你有没有测试,加载你的 hook,但不 copy skb 时,是否依然出问题

论坛徽章:
0
15 [报告]
发表于 2011-09-20 15:36 |只看该作者
呵呵,加载hook 然后读取端口 ip之类的 然后返回, 没事的.

论坛徽章:
36
IT运维版块每日发帖之星
日期:2016-04-10 06:20:00IT运维版块每日发帖之星
日期:2016-04-16 06:20:0015-16赛季CBA联赛之广东
日期:2016-04-16 19:59:32IT运维版块每日发帖之星
日期:2016-04-18 06:20:00IT运维版块每日发帖之星
日期:2016-04-19 06:20:00每日论坛发贴之星
日期:2016-04-19 06:20:00IT运维版块每日发帖之星
日期:2016-04-25 06:20:00IT运维版块每日发帖之星
日期:2016-05-06 06:20:00IT运维版块每日发帖之星
日期:2016-05-08 06:20:00IT运维版块每日发帖之星
日期:2016-05-13 06:20:00IT运维版块每日发帖之星
日期:2016-05-28 06:20:00每日论坛发贴之星
日期:2016-05-28 06:20:00
16 [报告]
发表于 2011-09-20 15:39 |只看该作者
回复 15# mtx99

那这样可不可以理解为和你 copy skb 有关系呢?

论坛徽章:
0
17 [报告]
发表于 2011-09-20 15:42 |只看该作者
回复 16# Godbach


    比如这个函数:中的memcpy  就是将上一个hook函数中 穿过来的 tuple指针 拷贝到一个局部变量中.

static int handle_tcp_udp_node(struct sk_buff *pskb,
                        char* tcp,
                        TcpTuple* tuple)
{
    TcpUdpInfo tinfo;

    memset(&tinfo, 0, sizeof(TcpUdpInfo));
   
    memcpy(&tinfo.tuple, tuple, sizeof(TcpTuple));
   
    如果用memcpy  运行中调用tcpdump就死机

如果换成一下逐个变量赋值 这个点上就不会出问题;
   
    tinfo.tuple.srcIP  =tuple->srcIP  ;
    tinfo.tuple.desIP  =tuple->desIP  ;
    tinfo.tuple.srcPort=tuple->srcPort;
    tinfo.tuple.desPort=tuple->desPort;

不知道为什么这个程序运行中 再调用  tcpdump 会导致死机

论坛徽章:
0
18 [报告]
发表于 2011-09-20 15:43 |只看该作者
memcpy(&tinfo.tuple, tuple, sizeof(TcpTuple));
这个不应该有问题.

论坛徽章:
0
19 [报告]
发表于 2011-10-02 18:44 |只看该作者
memcpy(&tinfo.tuple, tuple, sizeof(TcpTuple));
这个不应该有问题.
mtx99 发表于 2011-09-20 15:43



    是不是sizeof(TcpTuple) > sizeof(tinfo.tuple), memcpy 内存访问越界啊,比较一下这两个结构的大小,改成memcpy(&tinfo.tuple, tuple, sizeof(tinfo.tuple))试试。

论坛徽章:
0
20 [报告]
发表于 2012-10-30 16:02 |只看该作者
我也遇到类似的问题. 我把  tcpdump 移植到 mips 平台上. 我执行 tcpdump 时没问题. 但是退出 tcpdump 时, 平台就死机了...

请问下, 会是什么问题呢? 谢谢!
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP