CSK.Blog--个人原创Weblog

« the lost part假期开始 »

Codename: ETH-SENSOR[Ver 0.1]

其实原本打算推迟发布的时间,不过既然有言在先,就先放出目前的版本。

我先把一些事情交待了(我有一个习惯,不会对那些已经在网站或blog上明确给出答案的问题给与回复。这次也是一样):

1.我目前还是对这个项目很不满意,因为它的完成度还是很低,从等会我列出的功能列表上就能看出。所以目前这个版本可用性不是很强,我已经打算在寒假放出一个我自己认为合格的版本。

2.这是我第一次接触GTK编程,甚至也是我第一次接触linux下的程序开发(之前只是编译过单文件的module)。所以一些不符合开源界规范的事情就请各位多多包涵。

3.整个工程从创建到提交只有5天时间(01/12/2008 - 01/16/2008),期间还有2天时间用于出国申请和考试复习(其间有2门考试),所以代码质量有一定影响,同时在后期(这是我网络课的大作业)临近作业检查时候也作了一些妥协。所以在寒假中会对那些缩水的部分加以改善

4.对于程序中尚未完成的部分或者会存在问题的部分,已经用"TODO"和"FIXME"标出了

5.本程序使用GTK+库和glade库,同时必然也使用了libpcap

6.不提供可执行版本,请自行编译(这个没啥好说的)。今后在完善后可能会考虑出rpm或者deb包

7.暂时不考虑为windows移植

8.采用的许可证是GPL

9.我开发的环境是Ubuntu 7.10, Anjuta IDE 2.3.0(unstable)

----------------------------------------------------

目前具有的功能:

1.完全图形化界面

2.基本的截包功能

3.包过滤(Layer II/III的协议过滤、端口过滤、ip地址过滤)

4.包数据察看

5.包的Decoder(采用树形结构表示,目前实现的是ethernet MAC, ARP/RARP, ICMP, IGMP, IP, UDP, TCP

6.包的保存(tcpdump兼容格式)

7.监听网卡选择

 

距离我满意还缺少的功能

1.包数据的重组

2.应用层协议的decoder

3.更完善的Filter

4.可配置的包decoder引擎

 

程序运行效果:


点击察看原始尺寸

 

再附上些开发的环境,其实用glade还是很方便的:


点击察看原始尺寸


点击察看原始尺寸

 

源代码下载:

http://www.csksoft.net/data/legacyftp/Products/code_and_lib/code_eth-sensor_src_0.01.rar

 

编译和安装

1. 使用Anjuta IDE编译

2. 采用常用的编译安装流程:

./configure

make

make install

 

 

最后再补充下,这个程序和那些商业软件或者目前常用的tcpdump还是不具有可比性的,我也不打算在功能上有所超越。不过可能今后打算做一个可配置、扩充的包解析引擎。我希望实现的效果是:改善目前linux下GUI程序缺乏的情况,毕竟就我个人而言,不是所有时候都喜欢开命令行操作的,很多时候点点按钮还是很省力的事情。

 

其实开发这个项目效率很低,就完成的功能来说,换成windows,我可能2天内就能做完,但是linux下就不同了,很多时间都浪费在研究GTK+的使用上,GTK+是个很优秀的GUI库,或许有足够好的IDE作为支撑,windows下那些都是小儿科。

 

这个项目如果将来做的好,我的计划是发布在SourceForge.net, 不过将来肯定是没时间维护的了

  • quote 1.Vic
  • NB!
    我windows编程都没入门呢
    不知什么时候我能达到你的水平
  • 1/21/2008 5:25:35 PM 回复该留言
  • quote 3.linhf
  • 牛人啊,大哥很强,这个是我急要,要叫声大哥了。
  • 4/23/2010 7:57:12 AM 回复该留言
  • quote 5.linhf
  • 真的不更新了吗,我等着救命哦,求大神更新这个软件吧!
  • 5/19/2010 11:23:55 PM 回复该留言

发表评论:

注意:为了有效防止SPAM,任何含有http://字样的消息会被阻止发布同时,本站仅供技术交流,请不要讨论任何政治敏感话题或者低级趣味问题。

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

日历

最新评论及回复

最近发表

Copyright Shikai Chen 2000-2012. Powered By Z-Blog(CSK Modified)