最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

python調(diào)用tcpdump抓包過(guò)濾的方法

 更新時(shí)間:2018年07月18日 09:04:24   作者:wangqiuyun  
這篇文章主要為大家詳細(xì)介紹了python調(diào)用tcpdump抓包過(guò)濾的方法,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下

本文實(shí)例為大家分享了python調(diào)用tcpdump抓包過(guò)濾的具體代碼,供大家參考,具體內(nèi)容如下

之前在linux用python腳本寫(xiě)一個(gè)抓包分析小工具,實(shí)在不想用什么libpcap、pypcap所以,簡(jiǎn)單來(lái)了個(gè)tcpdump加grep搞定。基本思路是分別起tcpdump和grep兩個(gè)進(jìn)程,進(jìn)程直接通過(guò)pipe交換數(shù)據(jù),簡(jiǎn)單代碼如下:

#! /usr/bin/python
 
def tcpdump():
 import subprocess, fcntl, os
 # sudo tcpdump -i eth0 -n -s 0 -w - | grep -a -o -E "Host: .*|GET /.*"
 cmd1 = ['tcpdump', '-i', 'eth0', '-n','-B', '4096','-s', '0', '-w', '-']
 cmd2 = ['grep', '--line-buffered', '-a', '-o', '-E', 'Host: .*|GET /.*']
 p1 = subprocess.Popen(cmd1, stdout=subprocess.PIPE)
 p2 = subprocess.Popen(cmd2, stdout=subprocess.PIPE, stdin=p1.stdout)
 
 flags = fcntl.fcntl(p2.stdout.fileno(), fcntl.F_GETFL)
 fcntl.fcntl(p2.stdout.fileno(), fcntl.F_SETFL, (flags | os.O_NDELAY | os.O_NONBLOCK))
 return p2
 
 
def poll_tcpdump(proc):
 #print 'poll_tcpdump....'
 import select
 txt = None
 while True:
 # wait 1/10 second 
 readReady, _, _ = select.select([proc.stdout.fileno()], [], [], 0.1)
 if not len(readReady):
  break
 try:
  for line in iter(proc.stdout.readline, ""):
  if txt is None:
   txt = ''
  txt += line
 except IOError:
  print 'data empty...'
  pass
 break
 return txt
 
 
proc = tcpdump()
while True:
 text = poll_tcpdump(proc)
 if text:
 print '>>>> ' + text

運(yùn)行效果:


其中值得注意tcpdump中'-B', '4096'這個(gè)參數(shù),官方文檔貌似沒(méi)有明確提及,但是它是你解決丟包的關(guān)鍵地方之一,當(dāng)然還有-s這個(gè)參數(shù)也得好好利用!其他的大家可以自由發(fā)揮!

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • Python使用random.shuffle()隨機(jī)打亂字典排序

    Python使用random.shuffle()隨機(jī)打亂字典排序

    本文主要介紹了Python使用random.shuffle()隨機(jī)打亂字典排序,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2022-08-08
  • python繪制風(fēng)場(chǎng)方向和大小quiver問(wèn)題

    python繪制風(fēng)場(chǎng)方向和大小quiver問(wèn)題

    這篇文章主要介紹了python繪制風(fēng)場(chǎng)方向和大小quiver問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-08-08
  • Windows下PyCharm配置Anaconda環(huán)境(超詳細(xì)教程)

    Windows下PyCharm配置Anaconda環(huán)境(超詳細(xì)教程)

    這篇文章主要介紹了Windows下PyCharm配置Anaconda環(huán)境,本文給大家分享一篇超詳細(xì)教程,通過(guò)圖文并茂的形式給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-07-07
  • python3.12.7降級(jí)到3.10.0的方法步驟

    python3.12.7降級(jí)到3.10.0的方法步驟

    本文主要介紹了python3.12.7降級(jí)到3.10.0的方法步驟,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2024-12-12
  • 使用Python操作MySQL的一些基本方法

    使用Python操作MySQL的一些基本方法

    這篇文章主要介紹了使用Python操作MySQL的一些基本方法,Python+MySQL也是服務(wù)器端快速開(kāi)發(fā)的一種絕佳搭配方案,需要的朋友可以參考下
    2015-08-08
  • python讀取txt文件并逐行輸出字符串

    python讀取txt文件并逐行輸出字符串

    Python提供了簡(jiǎn)單且方便的方法來(lái)讀取txt文件,使用open()函數(shù)和readlines()方法逐行輸出文件中的字符串內(nèi)容,我們可以輕松地讀取文件內(nèi)容,并通過(guò)循環(huán)遍歷的方式逐行處理,讀取txt文件的方法在各種應(yīng)用場(chǎng)景中非常常見(jiàn),可以用于數(shù)據(jù)分析、文本處理、日志分析等
    2023-10-10
  • pygame實(shí)現(xiàn)時(shí)鐘效果

    pygame實(shí)現(xiàn)時(shí)鐘效果

    這篇文章主要為大家詳細(xì)介紹了pygame實(shí)現(xiàn)時(shí)鐘效果,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2021-06-06
  • Python簡(jiǎn)單實(shí)現(xiàn)兩個(gè)任意字符串乘積的方法示例

    Python簡(jiǎn)單實(shí)現(xiàn)兩個(gè)任意字符串乘積的方法示例

    這篇文章主要介紹了Python簡(jiǎn)單實(shí)現(xiàn)兩個(gè)任意字符串乘積的方法,結(jié)合實(shí)例形式分析了Python針對(duì)字符串、列表的切片、轉(zhuǎn)換、遍歷等相關(guān)操作技巧,需要的朋友可以參考下
    2018-04-04
  • Python字符串的encode與decode研究心得亂碼問(wèn)題解決方法

    Python字符串的encode與decode研究心得亂碼問(wèn)題解決方法

    為什么Python使用過(guò)程中會(huì)出現(xiàn)各式各樣的亂碼問(wèn)題,明明是中文字符卻顯示成“\xe4\xb8\xad\xe6\x96\x87”的形式?
    2009-03-03
  • Python 不同對(duì)象比較大小示例探討

    Python 不同對(duì)象比較大小示例探討

    不同對(duì)象比較是按照 type names 比較,當(dāng)相同類型對(duì)象不支持適當(dāng)比較的時(shí)候,采用 address 比較,需要的朋友可以參考下
    2014-08-08

最新評(píng)論

长阳| 类乌齐县| 承德县| 徐闻县| 靖江市| 南昌市| 龙海市| 交口县| 隆德县| 家居| 石河子市| 嘉善县| 汉阴县| 屯留县| 南华县| 曲水县| 绥江县| 从江县| 九寨沟县| 和林格尔县| 高雄市| 行唐县| 达州市| 呼玛县| 益阳市| 焦作市| 如皋市| 清镇市| 喀喇沁旗| 通海县| 磴口县| 洞口县| 普兰店市| 井研县| 杭州市| 肇庆市| 共和县| 浠水县| 五原县| 安图县| 石台县|