<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    迷途書童

    敏感、勤學(xué)、多思
    隨筆 - 77, 文章 - 4, 評論 - 86, 引用 - 0
    數(shù)據(jù)加載中……

    Ethereal抓包實(shí)時分析可行性研究

    Ethereal是一個功能強(qiáng)大的抓包工具,它提供的GUI工具能將經(jīng)過網(wǎng)卡的信令捕獲并實(shí)時顯示,但是在實(shí)際應(yīng)用中,我們還可能要對捕獲的日志進(jìn)行分析,以獲得自己關(guān)心的信令的統(tǒng)計(jì)結(jié)果,但是這樣就面臨著以下幾個問題:
    1. 當(dāng)Ethereal自身提供的簡單統(tǒng)計(jì)功能不能滿足需求時,我們該怎么辦?
    2. Ethereal的GUI工具生成的日志是它專有的libpcap格式,不適合人類閱讀,我們該怎么分析它?
    本文針對上述問題提供了一整套的解決方案。

    一. 用Ethereal實(shí)時捕獲信令。

    Ethereal提供了從命令行定制啟動的方案。我們可以利用這個特點(diǎn)將capture file輸出到指定的目錄,這個capture file將被Ethereal實(shí)時更新。
    下面是我寫的一個windows bat文件,用該文件能做到最簡單地啟動Ethereal截包,不用用戶學(xué)習(xí)怎樣配置Ethereal。

    …………………………………………………………………………………………………………
    rem @echo off
    set ETHEREAL_HOME="D:\Program Files\Ethereal\ethereal.exe"
    set NETWORK_CARD="\Device\NPF_{D239E06D-D86E-4CFC-A360-0D74CDD21CAE}"
    set ETHEREAL_OPT=-i %NETWORK_CARD%
    set ETHEREAL_OPT=%ETHEREAL_OPT% -klSQ
    set FILTER_STR="port 6000 or port 6001 or port 6002 or port 6003 or port 6004 or port 6005 or port 6006 or port 6007 or port 6008"
    rem set ETHEREAL_OPT=%ETHEREAL_OPT% -f %FILTER_STR%
    set ETHEREAL_OPT=%ETHEREAL_OPT% -o capture.real_time_update:TRUE -o capture.auto_scroll:TRUE -o capture.show_info:FALSE -o print.format:text -o print.destination:file -o print.file:ethereal.out
    rem -a filesize:1000 files:5 -b filesize:1000 files:5
    call %ETHEREAL_HOME% %ETHEREAL_OPT% -w c:\ethereal.out
    …………………………………………………………………………………………………………
    將上面這段script存為bat文件后,設(shè)置好ETHEREAL_HOME和網(wǎng)卡即可啟動Ethereal截包。

    二. 實(shí)時分析Ethereal的中間人實(shí)現(xiàn)。

    “計(jì)算機(jī)科學(xué)中的所有問題都能通過中間人的方式解決。”這是精通EJB中強(qiáng)調(diào)了很多次的名言。
    在上節(jié)所示的腳本中我們將Ethereal的存放日志的文件放在了“c:\ethereal.out”目錄下,這個文件能被Ethereal實(shí)時更新,但是它的內(nèi)容卻是不可讀的,我們可用Ethereal提供的Tethereal工具將此文件轉(zhuǎn)換為適合人類閱讀的文本。但是這個工具僅能將標(biāo)準(zhǔn)的capture file解析成可讀文本并在標(biāo)準(zhǔn)輸出設(shè)備顯示(一般為顯示器),沒有找到將其另存為文本的方法,我們也不需要此方法。可以用java.lang.Runtime.exec()方法執(zhí)行“tethereal -r infile.cap -V”,獲得這個進(jìn)程的對象后我們可以得到這個進(jìn)程對象的輸出流對象,接下來我們可以從這個輸出流中讀出結(jié)果進(jìn)行分析。

    三. 得到實(shí)時的統(tǒng)計(jì)結(jié)果
    可以對從輸出流中得到的可讀結(jié)果進(jìn)行分析,獲得自己想要的統(tǒng)計(jì)結(jié)果。我們可以用一個線程以一定的時間間隔刷新此輸出流,已達(dá)到用戶認(rèn)為的實(shí)時分析的效果。

    參考:
    http://www.ethereal.com
    java doc
    ?
    ?

    后來想到的更好的方案:

    這種方式有一個顯著的缺點(diǎn),如果用戶截包時間的變長,ethereal保存log的文件越來越大,將導(dǎo)致每次刷新輸出流越來越耗資源,最后將導(dǎo)致工具無法使用。

    新的解決方案就是用ethereal的命令行版本,tethereal就可以完美避免類似問題。

    用java的runtime.exec()調(diào)用此腳本:

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

    set TETHEREAL_HOME="D:\Program Files\Ethereal\tethereal.exe"
    rem call cmd /k %TETHEREAL_HOME% -r c:\ethereal.out -R tcp -T text -V
    call cmd /k %TETHEREAL_HOME% -r c:\ethereal.out -T text -V

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

    ethereal每截到一個數(shù)據(jù)包,便會將次包送給輸出流。這樣就能真正做到實(shí)時分析了。

    posted on 2006-05-06 15:55 迷途書童 閱讀(7284) 評論(5)  編輯  收藏 所屬分類: java應(yīng)用

    評論

    # re: Ethereal抓包實(shí)時分析可行性研究[未登錄]  回復(fù)  更多評論   

    shenme dong xi a,kan bu ming bai ya
    2007-06-26 20:20 | yang

    # re: Ethereal抓包實(shí)時分析可行性研究  回復(fù)  更多評論   

    很經(jīng)典的使用范例,支持,繼續(xù)啊,最好,再講講Java的部分,說的再詳細(xì)點(diǎn)就好了
    2008-05-29 14:52 | useway

    # re: Ethereal抓包實(shí)時分析可行性研究  回復(fù)  更多評論   

    一樓的,這個文章寫的那么清楚,你都看不懂,看來是有點(diǎn)笨。
    給摟主一個建議,可以用-a參數(shù),將文件大小限定。
    2008-05-29 14:58 | useway

    # re: Ethereal抓包實(shí)時分析可行性研究[未登錄]  回復(fù)  更多評論   

    這個確實(shí)很有用,我也是到了java部分,不知道怎么做.請問樓主可以詳細(xì)解釋嗎?或者也給個代碼。
    2008-10-27 16:03 | ben

    # re: Ethereal抓包實(shí)時分析可行性研究[未登錄]  回復(fù)  更多評論   

    經(jīng)過運(yùn)行,并不能實(shí)現(xiàn)實(shí)時效果。調(diào)用第二個腳本,只能獲得調(diào)用腳本時獲得的包信息,運(yùn)行一段時間后,新來的包還是不能被解釋,而用重新調(diào)用此腳本才能獲得內(nèi)容
    2008-11-24 10:40 | ben
    主站蜘蛛池模板: 99久久国产精品免费一区二区| 亚洲无吗在线视频| 一级做a爱片特黄在线观看免费看| 男女免费观看在线爽爽爽视频| 亚洲精品视频久久| 亚洲人成免费电影| 亚洲日韩国产精品乱-久| 国产麻豆视频免费观看| 国产精品高清视亚洲一区二区 | 亚洲精品午夜国产VA久久成人 | 亚洲视频网站在线观看| 亚洲最大免费视频网| 亚洲毛片基地4455ww| 天天摸天天操免费播放小视频| 亚洲AV日韩综合一区| 国产亚洲精品线观看动态图| 久章草在线精品视频免费观看| 亚洲成a人片在线观看中文动漫| 天天影院成人免费观看| 亚洲精品免费网站| 亚洲精品国产精品乱码不卞| 在线观看免费无码视频| 亚洲短视频在线观看| 午夜精品在线免费观看| sss在线观看免费高清| 亚洲天天在线日亚洲洲精| 毛片在线看免费版| 成在线人直播免费视频| 久久夜色精品国产噜噜亚洲AV| 成人毛片免费观看视频大全| 一级毛片免费在线播放| 亚洲无成人网77777| 吃奶摸下高潮60分钟免费视频| 91视频精品全国免费观看| 亚洲制服丝袜精品久久| 免费人成年激情视频在线观看 | 亚洲成a人片在线观看日本| 日韩国产免费一区二区三区| 曰批免费视频播放在线看片二| 亚洲产国偷V产偷V自拍色戒| 人妻视频一区二区三区免费|