scapy.layers.dhcp¶
DHCP (Dynamic Host Configuration Protocol) and BOOTP
-
class
scapy.layers.dhcp.
BOOTP
(*args, **kargs)[source]¶ Bases:
scapy.base_classes.Gen
[scapy.packet.Packet
]-
aliastypes
¶
-
fields_desc
¶ Display RFC-like schema
0 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | OP | HTYPE | HLEN | HOPS | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | XID | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | SECS | FLAGS | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | CIADDR | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | YIADDR | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | SIADDR | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | GIADDR | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | CHADDR | + + | | + + | | + + | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | SNAME | + + | | + + | | + + | | + + | | + + | | + + | | + + | | + + | | + + | | + + | | + + | | + + | | + + | | + + | | + + | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | FILE | + + | | + + | | + + | | + + | | + + | | + + | | + + | | + + | | + + | | + + | | + + | | + + | | + + | | + + | | + + | | + + | | + + | | + + | | + + | | + + | | + + | | + + | | + + | | + + | | + + | | + + | | + + | | + + | | + + | | + + | | + + | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | OPTIONS | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Fig. BOOTP
BOOTP fields¶ op
1
htype
1
hlen
6
hops
0
xid
0
secs
0
flags
<Flag 0 ()>
ciaddr
'0.0.0.0'
yiaddr
'0.0.0.0'
siaddr
'0.0.0.0'
giaddr
'0.0.0.0'
chaddr
b''
sname
b''
file
b''
options
b''
-
-
class
scapy.layers.dhcp.
BOOTP_am
(**kargs)[source]¶ Bases:
scapy.ansmachine.AnsweringMachine
-
filter
= 'udp and port 68 and port 67'¶
-
function_name
= 'bootpd'¶
-
parse_options
(pool=Net('192.168.1.128/25'), network='192.168.1.0/24', gw='192.168.1.1', domain='localnet', renewal_time=60, lease_time=1800)[source]¶
-
static
send_function
(x, iface=None, iface_hint=None, socket=None, **kargs)[source]¶ Send packets at layer 2
- Parameters
x – the packets
inter – time (in s) between two packets (default 0)
loop – send packet indefinetly (default 0)
count – number of packets to send (default None=1)
verbose – verbose mode (default None=conf.verbose)
realtime – check that a packet was sent before sending the next one
return_packets – return the sent packets
socket – the socket to use (default is conf.L3socket(kargs))
iface – the interface to send the packets on
monitor – (not on linux) send in monitor mode
- Returns
None
-
-
class
scapy.layers.dhcp.
DHCP
(*args, **kargs)[source]¶ Bases:
scapy.base_classes.Gen
[scapy.packet.Packet
]-
aliastypes
¶
-
-
class
scapy.layers.dhcp.
DHCPOptionsField
(name, default, fmt='H', remain=0)[source]¶ Bases:
scapy.fields._StrField
[bytes
]-
islist
= 1¶
-
-
class
scapy.layers.dhcp.
DHCP_am
(**kargs)[source]¶ Bases:
scapy.layers.dhcp.BOOTP_am
-
function_name
= 'dhcpd'¶
-
-
class
scapy.layers.dhcp.
RandDHCPOptions
(size=None, rndstr=None)[source]¶ Bases:
scapy.volatile.RandField