IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Développement Discussion :

Hook carte réseau ? + Qques questions


Sujet :

Développement

  1. #1
    Membre éprouvé Avatar de cs_ntd
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Décembre 2006
    Messages
    598
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Etats-Unis

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Décembre 2006
    Messages : 598
    Points : 1 214
    Points
    1 214
    Par défaut Hook carte réseau ? + Qques questions
    Bonsoir à tous

    Ce que je cherche à faire est peut-être un peu "fumeux", néanmoins j'aimerais quand même savoir comment me débrouiller, avant de décider si c'est faisable ou non, mais je ne trouve aucune information précise...

    Je cherce comme l'indique mon titre à réaliser un hook de la carte réseau de mon ordinateur.

    Mais pas à la manière d'un sniffer de paquet IP : je visais des couches plus basses du modèle OSI : n°1&2 (ou en clair : je voudrais sois récupérer des trames ethernet "brutes", sois récupérer un séquence de bit qui correspondrait à ce que reçoit physiquement ma carte.

    Mais je ne sais pas du tout comment m'y prendre bien sur , je ne sais pas du tout si c'est faisable non plus... Est-ce que ça dépend des cartes réseaux ? Ya t'il une manière de faire commune, ou bien faudra t-il manipuler des drivers ? Que faut-il regarder, sur quoi porte le hook, quel serait le meilleur langage pour cela...

    Ce qui m'amène à mes questions "théoriques" :
    • Comment les trames sont elles transmises aux autres couches ? qu'est ce qui fait office de séparateur ?
    • Comment une carte réseau arrive-t-elle a fragementer la séquence de bit qu'elle à reçu en trames ethernet bien délimitée ? comment sait-elle que de tel bit à tel bit, ça forme un trame ?


    Ensuite, je voudrait faire un peu le contraire d'un hook, càd une "injection". Donc même question que tout à l'heure : sur quoi injecter ? quoi regarder ?
    Donc en gros je souhaite faire un injecteur de trames voir même de bit (et si ce n'étais pas possible, cela reviendrait pour moi à forger une trame 'mal formée', c'est à dire un trame qui respecterais bien la taille maximum par exemple, mais qui n'aurait pas nécessairement des champs, ou dont les champs ne correspondrait à rien).

    Des idées ?

    En tous cas, merci d'avance pour vos réponses

    The magic of Opera, La magie de l'Opera
    The mysteries of Space Opera, Les mystères de l'Opera Spatial
    Mr. Know-it-all, M. Je-Sais-Tout
    Prelude in C sharp minor, the most beautiful piano song and the best C sharp prelude ever, Prélude en do dièse mineur, le plus beau morceau de piano et le meilleur prélude au C#
    The Mesmerizing Saphir Division for Nerds, L'Hypnotisante Division Saphire pour les Nerds (HDSN)

  2. #2
    Membre averti Avatar de Jenna
    Inscrit en
    Décembre 2009
    Messages
    272
    Détails du profil
    Informations personnelles :
    Âge : 39

    Informations forums :
    Inscription : Décembre 2009
    Messages : 272
    Points : 339
    Points
    339
    Par défaut
    Citation Envoyé par cs_ntd Voir le message
    Mais pas à la manière d'un sniffer de paquet IP : je visais des couches plus basses du modèle OSI : n°1&2 (ou en clair : je voudrais sois récupérer des trames ethernet "brutes", sois récupérer un séquence de bit qui correspondrait à ce que reçoit physiquement ma carte.
    En ce qui concerne le niveau 1, tu auras peut être du mal (à moins de s'interfacer directement avec le hard de ta carte). Pour le niveau 2, la libpcap permet de récupérer ces trames.

    Il est assez facile d'utiliser la libpcap, il y a plein d'exemples sur le net et une mailing list assez active. De plus, c'est portable Windows ou Linux (sous windows, c'est winpcap qu'il faut chercher).

    Citation Envoyé par cs_ntd Voir le message
    Est-ce que ça dépend des cartes graphiques ?
    Je pense que tu as voulu parler de la carte réseau, sinon, cela n'a rien à voir

    Citation Envoyé par cs_ntd Voir le message
    • Comment les trames sont elles transmises aux autres couches ? qu'est ce qui fait office de séparateur ?
    • Comment une carte réseau arrive-t-elle a fragementer la séquence de bit qu'elle à reçu en trames ethernet bien délimitée ? comment sait-elle que de tel bit à tel bit, ça forme un trame ?
    Parce que le niveau physique respecte un certain protocole. Globalement, il y a un délimiteur de début et de fin de trame, dans la trame ethernet on trouve une adresse MAC source et destination, la longueur de la trame, les données et un CRC pour le contrôle. Les trames sont séparées par des silences sur le medium.

    La carte ethernet connait très bien ce protocole et le respecte. Elle n'a donc aucun problème pour se synchroniser et séparer les différentes trames.

    Citation Envoyé par cs_ntd Voir le message
    Ensuite, je voudrait faire un peu le contraire d'un hook, càd une "injection". Donc même question que tout à l'heure : sur quoi injecter ? quoi regarder ?
    La libpcap (et winpcap aussi) sait faire de l'injection de trames. Le mot injection est mal choisi, je parlerai plutôt de génération de trames.
    La valeur n'attend pas le nombre des années

  3. #3
    Membre éprouvé Avatar de cs_ntd
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Décembre 2006
    Messages
    598
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Etats-Unis

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Décembre 2006
    Messages : 598
    Points : 1 214
    Points
    1 214
    Par défaut
    Waaw nickel

    Il semblerait que ce soit exactement ce que je veux

    Je connaissai déjà "sans connaitre", puisque les termes "packets" et le fait que sur leur site ils indiquent que c'est une librairie pour travailler sur la couche 3 m'on fait penser que l'on ne pouvait que transmettre des packets sans pouvoir toucher au PCI ethernet... Du coup j'ai relu plus attentivement et regarder les exemples et ça me semble pas mal.

    Faut juste maintenant que j'arrive à faire ce que je veux et c'est une autre histoire, mais avec ça je devrait y arriver

    Merci beaucoup de m'avoir fait re-regarder :p et merci aussi pour les réponses à mes questions ^^

    The magic of Opera, La magie de l'Opera
    The mysteries of Space Opera, Les mystères de l'Opera Spatial
    Mr. Know-it-all, M. Je-Sais-Tout
    Prelude in C sharp minor, the most beautiful piano song and the best C sharp prelude ever, Prélude en do dièse mineur, le plus beau morceau de piano et le meilleur prélude au C#
    The Mesmerizing Saphir Division for Nerds, L'Hypnotisante Division Saphire pour les Nerds (HDSN)

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Question Mandriva et Carte réseau wifi
    Par paterson dans le forum Mandriva / Mageia
    Réponses: 7
    Dernier message: 10/12/2006, 22h10
  2. Propriétés des cartes réseau
    Par Yodagobah dans le forum MFC
    Réponses: 2
    Dernier message: 05/01/2005, 13h55
  3. Réponses: 5
    Dernier message: 22/12/2004, 16h50
  4. Comment gérer ma carte réseau en ASM
    Par will1974 dans le forum Assembleur
    Réponses: 6
    Dernier message: 23/09/2003, 17h08
  5. [Turbo Pascal] [MS-DOS] Lire la Mac-address de la carte réseau
    Par toctoc dans le forum Turbo Pascal
    Réponses: 14
    Dernier message: 21/02/2003, 22h08

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo