LoveUnix » 编程开发 & Rational » 如何在Linux下,用C语言实现网络封包截取分析的功能
让LU留住您的每

一天 让LU博客留住您的每一天
2006-4-5 21:10 sanyecao
如何在Linux下,用C语言实现网络封包截取分析的功能

我是一名Linux菜鸟,原来从未用过,更别说编程了, 但是,最近接到一个任务,就是在Linux下,用C语言实现防火墙的包过滤功能,编写一个网络封包截取分析工具,因为实在不知该如何下手,希望大家能多给点意见,先问几个问题:

在Linux下,C语言编程环境是什么?

要编写这个网络封包截取分析程序,应该先学习哪些方面知识,看哪些有关Linux和C编程方面的书?

该如何编写这个程序,高手能不能给点思路提示一下啊?

迷惑中,希望Linux的编程高手们多多指教,万分感谢啊。

也欢迎大家和我一起交流,QQ:196056117

2006-4-5 22:34 sinister
写一个 LKM 用 netfilter hook 达到你的目的。 不过,如果 C 和 TCP/IP 都不熟悉的话,还是会
遇到不少困难,尤其是在 debug LKM 的时候。

2006-4-24 22:24 platinum
[quote]原帖由 [i]sinister[/i] 于 2006-4-5 22:34 发表
写一个 LKM 用 netfilter hook 达到你的目的。 不过,如果 C 和 TCP/IP 都不熟悉的话,还是会
遇到不少困难,尤其是在 debug LKM 的时候。 [/quote]
不知道如果做端口镜像过来的数据,会不会进入 netfilter 框架
我没有可管理交换机做测试,不知道如果在 NF_IP_PRE_ROUTING 上做记录会不会匹配到数据
不知道用不用将网卡设为混杂模式先

2006-4-25 13:09 sinister
个人认为:

1、应该会,Netfilter hook 会截获到转发数据,针对 source address 与 dest address 处理以下
    几个 hook routine,NF_IP_PRE_ROUTING,NF_IP_POST_ROUTING, NF_IP_LOCAL_OUT。

2、不用。

[[i] 本帖最后由 sinister 于 2006-4-25 13:15 编辑 [/i]]

页: [1]


Powered by Discuz! Archiver 5.5.0  © 2001-2006 Comsenz Inc.