Implementer son sniffer coder avec la LIbpcap

Résolu
Bonjour,

Svp comment faire pour implementer mon sniffer coder avec la LIbpcap sous Debian,un ami m a dit qu il fallait l implenter ds le nayau,je ne vs cache pas que je ss un peu perdue.
Mercii d avance
Cordialement

5 réponses

  1. Modérateur
    Ok, alors tu as juste à installer le paquet libpcap-dev. En root

    aptitude update
    aptitude safe-upgrade
    aptitude install libpcap-dev


    Ceci va installer en cascade libpcap0.8-dev, qui contient notamment :

    libpcap0.8-dev: /usr/bin/pcap-config
    libpcap0.8-dev: /usr/include/pcap-bpf.h
    libpcap0.8-dev: /usr/include/pcap-namedb.h
    libpcap0.8-dev: /usr/include/pcap.h
    libpcap0.8-dev: /usr/include/pcap/bluetooth.h
    libpcap0.8-dev: /usr/include/pcap/bpf.h
    libpcap0.8-dev: /usr/include/pcap/ipnet.h
    libpcap0.8-dev: /usr/include/pcap/namedb.h
    libpcap0.8-dev: /usr/include/pcap/pcap.h
    libpcap0.8-dev: /usr/include/pcap/sll.h
    libpcap0.8-dev: /usr/include/pcap/usb.h
    libpcap0.8-dev: /usr/include/pcap/vlan.h
    libpcap0.8-dev: /usr/lib/x86_64-linux-gnu/libpcap.a
    libpcap0.8-dev: /usr/lib/x86_64-linux-gnu/libpcap.so
    libpcap0.8-dev: /usr/share/doc/libpcap0.8-dev/copyright


    Ainsi il suffit d'inclure les headers pcap dont tu as besoin dans ton programme écrit en C avec un #include.

    Exemple :

    #include <pcap-bpf.h>
    #include <pcap/bluetooth.h>
    
    int main() {
      return 0;
    }
    


    Ensuite à la compilation, il ne faudra pas oublier de linker avec libpcap.so :

    gcc -W -Wall -o monprogramme main.c -lpcap


    Note que l'option de linkage n'intervient que si tu n'es pas en train de compiler un ".o". Si tu compile un ".o" (avec l'option -c), il ne faut pas mettre "-lpcap".

    Bonne chance
    2
    1. Modérateur
      Bah non si tu utilises la libpcap tu es dans l'espace utilisateur, donc tu n'as rien à faire au niveau du noyau. Maintenant la question qu'on peut légitimement se poser, c'est qu'est ce que tu cherches à faire. En outre des outils comme wireshark (anciennement ethereal), tcpdump etc... permettent de sniffer le trafic sur l'une de tes cartes réseau.

      Bonne chance
      0
      1. Deja mercii pour ta reponse :)
        Bon je cherche a faire la capture des paquets dhcp entre un serveur DHCP et un client Dhcp,oui je connais TCPdump & Wireshark mais en ce qui me concerne je ss obligé de coder ce sniffer par moi meme et de l implementer pour pouvoir capturer ces pqts(dhcp request,offer,ack.....etc)

        Merciii d avance
        Cordialement
        0
        1. MMerciii merciiii ;)
          0
          1. Modérateur
            De rien et bonne continuation !
            0