Scroll to navigation

pydhcplib.DhcpPacket(3) PYDHCPLIB pydhcplib.DhcpPacket(3)

NOM

pydhcplib.DhcpPacket - Classe évoluée contenant un paquet dhcp.

SYNOPSIS

from pydhcplib.DhcpPacket import DhcpPacket
 
packet = DhcpPacket()
 

DESCRIPTION

La classe pydhcplib.DhcpPacket est une évolution de la classe DhcpBasicPacket. Elle y ajoute un certain nombre de méthode permettant une manipulation plus aisée du paquet.

METHODES

str() - Retourne une version textuelle du paquet lisible par un humain.
 
 
IsDhcpDiscoverPacket() - Renvoie True si le paquet est une annonce "DISCOVER".
 
 
IsDhcpOfferPacket() - Renvoie True si le paquet est une annonce "OFFER".
 
 
IsDhcpRequestPacket() - Renvoie True si le paquet est une annonce "REQUEST".
 
 
IsDhcpDeclinePacket() - Renvoie True si le paquet est une annonce "DECLINE".
 
 
IsDhcpAckPacket() - Renvoie True si le paquet est une annonce "ACK".
 
 
IsDhcpNackPacket() - Renvoie True si le paquet est une annonce "NACK".
 
 
IsDhcpReleasePacket() - Renvoie True si le paquet est une annonce "RELEASE".
 
 
IsDhcpInformPacket() - Renvoie True si le paquet est une annonce "INFORM".
 
 
GetMultipleOptions(list) - Prend en argument une liste de nom d'options. Renvoie un dictionnaire dont les clefs sont les noms des options. Si une des options n'existait pas, la valeur correspondant à la clef est False, mais la clef est quand-même là.
 
 
SetMultipleOptions(dict) - Prend en argument un dictionnaire dont les clefs sont les noms des options et les valeurs sont les valeurs des options correspondantes. Ne retourne rien (?FIXME).
 
 
CreateDhcpOfferPacketFrom(DhcpBasicPacket) - Transforme ce paquet en packet de type "OFFER" en réponse au paquet de type "DISCOVER" fourni en argument.Ne retourne rien (?FIXME).
 
 
CreateDhcpAckPacketFrom(DhcpBasicPacket) - Transforme ce paquet en packet de type "ACK" en réponse au paquet de type "INFORM" ou "REQUEST" fourni en argument.Ne retourne rien (?FIXME).
 
 
CreateDhcpNackPacketFrom(DhcpBasicPacket) - Transforme ce paquet en packet de type "NACK" en réponse au paquet de type "INFORM" ou "REQUEST" fourni en argument.Ne retourne rien (?FIXME).
 
 
GetClientIdentifier() - Retourne l'option "client identifier" définie l'entête du paquet.
 
 
GetGiaddr() - Retourne l'option "giaddr" définie l'entête du paquet.
 
 
GetHardwareAddress() - Retourne l'option "chaddr" définie dans l'entête du paquet avec une taille limitée par le champs "hlen" défini dans cette même entête.
 
 
 
 
 
 

EXEMPLES

Programme d'exemple :
 
from pydhcplib.dhcp_packet import DhcpPacket
 
from pydhcplib.type_strlist import strlist
 
from pydhcplib.type_ipv4 import ipv4
 
 
packet = DhcpPacket()
 
packet.SetOption("domain_name",strlist("anemon.org").list())
 
packet.SetOption("router",ipv4("192.168.0.1").list()+[6,4,2,1])
 
packet.SetOption("time_server",[100,100,100,7,6,4,2,1])
 
packet.SetOption("yiaddr",[192,168,0,18])
 
 
packet.PrintHeaders()
 
packet.PrintOptions()

VOIR AUSSI

pydhcp(8), pydhcplib.hwmac(3), pydhcplib.ipv4(3), pydhcplib.strlist(3), pydhcplib.DhcpPacket(3), pydhcplib.DhcpBasicPacket(3), pydhcplib.DhcpNetwork(3), pydhcplib.DhcpClient(3), pydhcplib.DhcpRawClient(3), pydhcplib.DhcpDerver(3)
 

BUGS

Probablement plein... pydhcplib est en cours de développement. Voir http://pydhcplib.tuxfamily.org/ pour plus d'informations.

AUTHOR

Mathieu Ignacio (mignacio[AT]april.org)