欧美一区2区三区4区公司二百,国产精品婷婷午夜在线观看,自拍偷拍亚洲精品,国产美女诱惑一区二区

歡迎來到云服務器

系統配置

python措施挪用tcpdump舉辦闡明抓包過濾

之前在linux用python劇本寫一個抓包闡明小東西,實在不想用什么libpcap、pypcap所以,簡樸來了個tcpdump加grep搞定。根基思路是別離起tcpdump和grep兩個歷程,歷程直接通過pipe互換數據,簡樸

#! /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

運行結果:

 

python措施挪用tcpdump舉辦闡明抓包過濾

 

個中值得留意tcpdump中'-B', '4096'這個參數,官方文檔貌似沒有明晰提及,可是它是你辦理丟包的要害處所之一,雖然尚有-s這個參數也得好好操作!其他的各人可以自由發揮!

騰訊云代理

Copyright © 2003-2021 MFISP.COM. 國外vps服務器租用 夢飛云服務器租用 版權所有 ? 粵ICP備11019662號

主站蜘蛛池模板: 建昌县| 石首市| 九龙城区| 长岭县| 祥云县| 弥勒县| 昌江| 岱山县| 庆安县| 永济市| 理塘县| 博兴县| 景东| 会同县| 苗栗市| 定南县| 毕节市| 南和县| 修水县| 铜梁县| 永昌县| 朝阳区| 浙江省| 莱西市| 武鸣县| 鹤峰县| 云安县| 九江县| 连城县| 淮阳县| 舞钢市| 柘荣县| 河间市| 壤塘县| 安仁县| 淮阳县| 乌拉特中旗| 沙坪坝区| 齐齐哈尔市| 鲜城| 祥云县|