安裝scapy遇到的問題


1. Mac平台

在mac上安裝scapy可以說是困難重重,一來因為scapy實在有些小眾和老舊,再加上安裝說明文檔都是python2.5 也沒有詳細說明一些安裝問題。

折騰了大概三個小時之后終於解決了這個老大難。

注:我的環境為anaconda2.3 - python2.7.10

 

一,首先scapy依賴了以下幾個庫:

1.PyX  :   

2.pcapy

3.gnuplot-py

4.dnet 

其中gnuplot-py 以及pyx一定要使用官方網站上面的指定版本。

如果你翻牆不方便,請使用我的備份庫github: https://github.com/todototry/scapyInstallDependents   

 

二,dnet是個大坑,

1. 需要注意的是dnet不能使用官方版本,需要使用libdnet1.12, 並configure ; make install 逐步安裝,一定要記得進入該dnet的python子文件夾安裝其對應的python庫。

2. 安裝好之后請注意檢查python的對應site-package中是否有dnet.so 這個文件。

3.如果出現cannot import dnet 可能的原因是:沒有安裝dnet的依賴庫: pip install graphillion 

4. 如果遵照上述方法安裝后,任然出現AttributeError: 'module' object has no attribute 'intf', 請使用pip uninstall pydnet , 可能是官網的pydnet 與 libdnet1.12中的python接口沖突引起的。

 

三,如果sniff出現 pcapy權限不足

請卸載pcapy, 用pypcap替代,完美解決pcap權限問題。參見以下

 Scapy “Warning pcapy API does not permit to get capure file descriptor”?

 

2. Windows平台

由於我安裝了anaconda,python2.7, 按照官方提供的package,需要python2.5,因此需要網絡搜索到python2.7的安裝包,並要注意,一定要在安裝pcap和dnet時 使用administrator身份運行,因為這涉及到系統層級的網絡操作,並配置好gnuplot,pcap的env。

 

參考:

1. 官網:http://www.secdev.org/projects/scapy/doc/installation.html

2. dnet安裝與dnet.so 依賴問題,http://stackoverflow.com/questions/26229057/scapy-installation-fails-on-osx-with-dnet-import-error

3. http://juhalaaksonen.com/blog/2013/12/11/installing-scapy-for-mac-os-x/

4. https://github.com/dugsong/libdnet/issues/9

5. AttributeError: 'module' object has no attribute 'intf' 解決方案: https://github.com/Homebrew/homebrew-python/issues/212

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM