views:

455

answers:

1

I have an apple computer running Leopard with python 2.6. I downloaded the latest version of scapy and ran "python setup.py install". All went according to plan. Now, when I try to run it in interactive mode by just typing "scapy", it throws a bunch of errors. What gives!

Just in case, here is the FULL error message..

INFO: Can't import python gnuplot wrapper . Won't be able to plot.
INFO: Can't import PyX. Won't be able to use psdump() or pdfdump().
ERROR: Unable to import pcap module: No module named pcap/No module named pcapy
ERROR: Unable to import dnet module: No module named dnet
Traceback (most recent call last):
  File "/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/runpy.py", line 122, in _run_module_as_main
    "__main__", fname, loader, pkg_name)
  File "/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/runpy.py", line 34, in _run_code
    exec code in run_globals
  File "/Users/owner1/Downloads/scapy-2.1.0/scapy/__init__.py", line 10, in <module>
    interact()
  File "scapy/main.py", line 245, in interact
    scapy_builtins = __import__("all",globals(),locals(),".").__dict__
  File "scapy/all.py", line 25, in <module>
    from route6 import *
  File "scapy/route6.py", line 264, in <module>
    conf.route6 = Route6()
  File "scapy/route6.py", line 26, in __init__
    self.resync()
  File "scapy/route6.py", line 39, in resync
    self.routes = read_routes6()
  File "scapy/arch/unix.py", line 147, in read_routes6
    lifaddr = in6_getifaddr()
  File "scapy/arch/unix.py", line 123, in in6_getifaddr
    i = dnet.intf()
NameError: global name 'dnet' is not defined
A: 

Follow these instructions from scapy website. There are dependencies that you must resolve before doing the install. It worked like a charm for me on a Windows machine.

http://www.secdev.org/projects/scapy/doc/installation.html#mac-os-x

JPCosta