C# 클래스 NetworkPackets.Dhcp.DhcpPacket

Encapsulates a Dhcp Packet in an immutable object providing both a byte array and a parsed version of the dhcp information
The outline of a Dhcp Packet: 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 (1) | htype (1) | hlen (1) | hops (1) | +---------------+---------------+---------------+---------------+ | xid (4) | +-------------------------------+-------------------------------+ | secs (2) | flags (2) | +-------------------------------+-------------------------------+ | ciaddr (4) | +---------------------------------------------------------------+ | yiaddr (4) | +---------------------------------------------------------------+ | siaddr (4) | +---------------------------------------------------------------+ | giaddr (4) | +---------------------------------------------------------------+ | | | chaddr (16) | | | | | +---------------------------------------------------------------+ | | | sname (64) | +---------------------------------------------------------------+ | | | file (128) | +---------------------------------------------------------------+ | | | options (variable) | +---------------------------------------------------------------+ Field Description OP 1 for request, 2 for response htype hardware address type - leave at 1 hlen hardware address length - 6 for ethernet mac address hops optional - leave at 0, no relay agents xid transaction id secs seconds since beginning renewal flags ciaddr clients currrent ip (client in bound, renew, or rebinding state) yiaddr ip address server is giving to client siaddr server address giaddr leave at zero, no relay agents chaddr client hardware address sname optional server hostname file optional magic cookie yuuuum! - byte[4] = {99, 130, 83, 99} options starts at 240!
상속: DataPacket
파일 보기 프로젝트 열기: pstjuste/brunet 1 사용 예제들

공개 프로퍼티들

프로퍼티 타입 설명
Options MemBlock>.Dictionary
chaddr MemBlock
ciaddr MemBlock
magic_key MemBlock
op byte
siaddr MemBlock
xid MemBlock
yiaddr MemBlock

공개 메소드들

메소드 설명
DhcpPacket ( MemBlock Packet ) : Brunet

Parse a MemBlock packet into a Dhcp Packet

DhcpPacket ( byte op, MemBlock xid, MemBlock ciaddr, MemBlock yiaddr, MemBlock siaddr, MemBlock chaddr, MemBlock>.Dictionary Options ) : Brunet

메소드 상세

DhcpPacket() 공개 메소드

Parse a MemBlock packet into a Dhcp Packet
public DhcpPacket ( MemBlock Packet ) : Brunet
Packet MemBlock The dhcp packet to parse
리턴 Brunet

DhcpPacket() 공개 메소드

public DhcpPacket ( byte op, MemBlock xid, MemBlock ciaddr, MemBlock yiaddr, MemBlock siaddr, MemBlock chaddr, MemBlock>.Dictionary Options ) : Brunet
op byte
xid MemBlock
ciaddr MemBlock
yiaddr MemBlock
siaddr MemBlock
chaddr MemBlock
Options MemBlock>.Dictionary
리턴 Brunet

프로퍼티 상세

Options 공개적으로 프로퍼티

A hashtable indexed by OptionTypes and numbers of options
public Dictionary Options
리턴 MemBlock>.Dictionary

chaddr 공개적으로 프로퍼티

clients hardware address
public MemBlock chaddr
리턴 MemBlock

ciaddr 공개적으로 프로퍼티

clients current ip address
public MemBlock ciaddr
리턴 MemBlock

magic_key 공개적으로 정적으로 프로퍼티

Embedded right before the options.
public static MemBlock magic_key
리턴 MemBlock

op 공개적으로 프로퍼티

1 for boot request, 2 for boot response
public byte op
리턴 byte

siaddr 공개적으로 프로퍼티

server address
public MemBlock siaddr
리턴 MemBlock

xid 공개적으로 프로퍼티

unique packet id
public MemBlock xid
리턴 MemBlock

yiaddr 공개적으로 프로퍼티

ip address server is giving to the client
public MemBlock yiaddr
리턴 MemBlock