I tried to use DHCP_am, and got some NameErrors? which I did not expect.
This was in scapy/layers/dhcp.py as of:
changeset: 937:cdea8d8a25ea
user: Phil <phil@secdev.org>
date: Wed Oct 01 19:07:27 2008 +0200
summary: Added tag v2.0.0.10 for changeset 86518fb3c5ad
[root@coyote30 scapy]# ./test_dhcp_server.py
got request from 00:0f:53:04:01:08
Traceback (most recent call last):
File "./test_dhcp_server.py", line 15, in <module>
MyDHCP_am()(iface='eth2')
File "/home/dr/src/scapy/scapy/ansmachine.py", line 120, in call
self.sniff()
File "/home/dr/src/scapy/scapy/ansmachine.py", line 125, in sniff
sniff(**self.optsniff)
File "/home/dr/src/scapy/scapy/sendrecv.py", line 559, in sniff
r = prn(p)
File "/home/dr/src/scapy/scapy/ansmachine.py", line 103, in reply
reply = self.make_reply(pkt)
File "/home/dr/src/scapy/scapy/layers/dhcp.py", line 347, in make_reply
resp = BOOTP_am.make_reply(self, req)
File "/home/dr/src/scapy/scapy/layers/dhcp.py", line 340, in make_reply
rep=Ether(dst=mac)/IP(dst=ip)/UDP(sport=req.dport,dport=req.sport)/repb
NameError?: global name 'Ether' is not defined
[root@coyote30 scapy]# ./test_dhcp_server.py
got request from 00:0f:53:04:01:08
Traceback (most recent call last):
File "./test_dhcp_server.py", line 15, in <module>
MyDHCP_am()(iface='eth2')
File "/home/dr/src/scapy/scapy/ansmachine.py", line 120, in call
self.sniff()
File "/home/dr/src/scapy/scapy/ansmachine.py", line 125, in sniff
sniff(**self.optsniff)
File "/home/dr/src/scapy/scapy/sendrecv.py", line 559, in sniff
r = prn(p)
File "/home/dr/src/scapy/scapy/ansmachine.py", line 103, in reply
reply = self.make_reply(pkt)
File "/home/dr/src/scapy/scapy/layers/dhcp.py", line 348, in make_reply
resp = BOOTP_am.make_reply(self, req)
File "/home/dr/src/scapy/scapy/layers/dhcp.py", line 341, in make_reply
rep=Ether(dst=mac)/IP(dst=ip)/UDP(sport=req.dport,dport=req.sport)/repb
NameError?: global name 'IP' is not defined