免费注册 查看新帖 |

Chinaunix

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

给出一个 netdump 程序, 抓包用的. 如果改进了,也希望贴出 [复制链接]

论坛徽章:
0
1 [报告]
发表于 2005-01-10 13:29 |显示全部楼层

给出一个 netdump 程序, 抓包用的. 如果改进了,也希望贴出

建议把 - 黄山松 改过的程序share 出来,另外同意 - 黄山松 的说法,socket 初始化之后,没有到链路层,所以不收那个包。
实际上大家都在学习,我是昨天才学网络编程。
另外 - assiss 的话和 - 黄山松没有冲突,我觉得是 - 黄山松想多了。

论坛徽章:
0
2 [报告]
发表于 2005-01-10 13:41 |显示全部楼层

给出一个 netdump 程序, 抓包用的. 如果改进了,也希望贴出

对不起,实际上已经有了:
if((sock = socket(AF_INET,SOCK_RAW,IPPROTO_TCP)) == -1) die("socket", 1);
if((sock = socket(AF_PACKET, SOCK_RAW, htons(ETH_P_ALL))) == -1) die("socket", 1);

我对比了这两行代码,- 黄山松 写的规范性要强, 这也是大家学习的亮点吗?

论坛徽章:
0
3 [报告]
发表于 2005-01-10 14:42 |显示全部楼层

给出一个 netdump 程序, 抓包用的. 如果改进了,也希望贴出

我看到的是已经改好的了,
指针已经移动了 ptemp += sizeof(struct iphdr);
所以我在比 ip ->; tot_len 和 ntohs(pudp->;len)

另外,对不起,我不知道这里为什么要用 strcpy

论坛徽章:
0
4 [报告]
发表于 2005-01-10 15:43 |显示全部楼层

给出一个 netdump 程序, 抓包用的. 如果改进了,也希望贴出

不好意思,我是昨天才学习这个网络程序,但是我们都好像是新手,我愿意回答这个问题,
因为 for(; 是个无限循环,应该是只要你的网卡是active的状态,就不断读上面的信息,fetch出来。
我感觉死机不至于,你可以定向到一个文件,然后CTRL+C

-- 感觉这里真专业,大家都是real practices.

论坛徽章:
0
5 [报告]
发表于 2005-01-11 11:09 |显示全部楼层

给出一个 netdump 程序, 抓包用的. 如果改进了,也希望贴出

这个程序写的蛮好的(当然我是写不出来的),知识点挺多的,总体感觉是收到的数据包,又送回去了。
学习啊... ...

对不起,我没有看到 - 黄山松的回帖
返回的Mac地址是从一个文件里读出来的,这个文件有随机性?
不知道说的对不对
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP