Précédent   Forum du club des développeurs et IT Pro > Autres langages > Python & Zope > Réseau/Web
Réseau/Web Forum d'entraide sur Python et le réseau/Web
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse
 
Outils de la discussion
Publicité
'
Vieux 31/08/2012, 09h36   #1
Luke spywoker
Membre éclairé
 
Avatar de Luke spywoker
 
Homme
Etudiant informatique autodidacte
Inscription : juin 2010
Messages : 591
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France

Informations professionnelles :
Activité : Etudiant informatique autodidacte

Informations forums :
Inscription : juin 2010
Messages : 591
Points : 370
Points : 370
Par défaut Créer une socket pour requêtes arp

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:
Code :
socket.socket(family=2, type=1, proto=0, _sock=None)
et d'après les man de Linux auquel la doc de python renvoie pour la configuration des socket:
la famille a utiliser serai:
Code :
AF_PACKET           Interface paquet bas-niveau
donc:
Code :
socket.socket(family=socket.AF_PACKET,...)
pour le type j'hésite entre:
Citation:
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.
Le quelle choisir ?

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.
__________________
Pour faire tes armes:
Use du présent pour construire ton futur sinon use de ce que tu as appris auparavant.
Et sois toujours bien armé avant de te lancer.
Le hasard ne sourit qu'aux gens préparés...
Blog: http://3dcyberspace.unblog.fr/
Site: Sanctuaire cybernétique
Luke spywoker est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 31/08/2012, 10h08   #2
manticore
Membre éclairé
 
Marc
Ingénieur sécurité
Inscription : novembre 2009
Messages : 283
Détails du profil
Informations personnelles :
Nom : Marc
Localisation : Suisse

Informations professionnelles :
Activité : Ingénieur sécurité

Informations forums :
Inscription : novembre 2009
Messages : 283
Points : 320
Points : 320
Salut,

je sais pas si tu cherches l'apprentissage ou le résultats Si c'est le second pense à scapy c'est une librairie réseau très utilisé.

Sinon pense aussi à scapy, vu qu'ils implémentent tous les protocoles, tu peux aller voir les sources, et quel socket ils utilisent.
manticore est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/09/2012, 01h59   #3
Luke spywoker
Membre éclairé
 
Avatar de Luke spywoker
 
Homme
Etudiant informatique autodidacte
Inscription : juin 2010
Messages : 591
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France

Informations professionnelles :
Activité : Etudiant informatique autodidacte

Informations forums :
Inscription : juin 2010
Messages : 591
Points : 370
Points : 370
J'ai visé l'expérience et j'ai réussi grâce a une socket avec les paramètres par défaut a faire une requète ARP auprès du serveur dont j'ai l'adresse IP, seulement celui-ci me répond bien avec un paquet Ethernet/ARP, mais celui-ci répond avec un opcode ARP erroné (> 26) mais une adresse MAC est bien présente dans la trame Ethernet que j'ai extrait, mais si je fait plusieurs requêtes auprès de serveurs différents je reçoit toujours la même adresse MAC comme quand j'utilise la fonction getmacbyip() de scapy qui me renvoie toujours la même adresse peut importe l'IP mis en paramètre.
Si vous êtes un AS du réseau et si vous savez pourquoi le serveur répond mal a ma requête merci de bien vouloir poster.
PS: je pense avoir remplis correctement tous les champs des datagrammes Ethernet et ARP.
__________________
Pour faire tes armes:
Use du présent pour construire ton futur sinon use de ce que tu as appris auparavant.
Et sois toujours bien armé avant de te lancer.
Le hasard ne sourit qu'aux gens préparés...
Blog: http://3dcyberspace.unblog.fr/
Site: Sanctuaire cybernétique
Luke spywoker est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/09/2012, 13h24   #4
wiztricks
Expert Confirmé Sénior
 
Inscription : juin 2008
Messages : 3 719
Détails du profil
Informations forums :
Inscription : juin 2008
Messages : 3 719
Points : 4 559
Points : 4 559
Salut,

Citation:
Envoyé par Luke spywoker Voir le message
Si vous êtes un AS du réseau et si vous savez pourquoi le serveur répond mal a ma requête merci de bien vouloir poster.
PS: je pense avoir remplis correctement tous les champs des datagrammes Ethernet et ARP.
Pourquoi ne pas poser la question dans un forum réseau?
Préparez vous à récupérer les traces des packets échangés via un outil comme wireshark: les informations échangées sont bien plus importantes que votre code.
- W
__________________
Architectures Post-Modernes
wiztricks est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Cette discussion est résolue.
Outils de la discussion

Navigation rapide


Fuseau horaire GMT +2. Il est actuellement 21h28.


 
 
 
 
Partenaires

Hébergement Web