Salut les web pythons,
je continue mes expériences sur la programmation réseau de bas niveau et je me heurte a un problème: je n'arrive pas a créer une socket exprès pour le protocole ARP qui n'est pas basé sur le protocole IP d'oû tout le problème:
et d'après les man de Linux auquel la doc de python renvoie pour la configuration des socket:
Code : Sélectionner tout - Visualiser dans une fenêtre à part socket.socket(family=2, type=1, proto=0, _sock=None)
la famille a utiliser serai:
donc:
Code : Sélectionner tout - Visualiser dans une fenêtre à part AF_PACKET Interface paquet bas-niveau
pour le type j'hésite entre:
Code : Sélectionner tout - Visualiser dans une fenêtre à part socket.socket(family=socket.AF_PACKET,...)
Le quelle choisir ?SOCK_SEQPACKET Dialogue garantissant l'intégrité, pour le transport de
datagrammes de longueur fixe. Le lecteur doit lire le
paquet de données complet à chaque appel système
récupérant l'entrée.
SOCK_RAW Accès direct aux données réseau.
SOCK_RDM Transmission fiable de datagrammes, sans garantie de
l'ordre de délivrance.
Et ce dont je n'ai aucune idée est le protocole car il n'existe pas de constante IPPROTO_ARP et encore moins d'idée concernant setsockopt().
Si vous avez une idée comment implémenter une tel socket ou en savez long sur celle-ci et avez l'esprit didactique merci de bien vouloir poster.
Toujours est-il que je vais continuer mes expériences et je vous dirai si j'arrive a implémenter une tel socket.
Partager