2010-01-31 11 views
11

Sto cercando un codice di esempio per il riassemblaggio dei pacchetti IP in C con libpcap *. La deframmentazione dei pacchetti IP è implementata ufficialmente nella libreria libpcap? Ho trovato questa proposta: http://www.mail-archive.com/[email protected]/msg02991.html[this][1].Riassemblaggio pacchetto libpcap IP

Esistono implementazioni di deframmentazione dei pacchetti IP.

[1]: http://www.mail-archive.com/[email protected]/msg02991.html [+]

* Il motivo per cercare il codice di esempio è solo per divertimento e l'apprendimento e io non voglio spendere troppo tempo per la scrittura di codice per il riassemblaggio dei pacchetti IP.

+0

generati. cercando la stessa cosa carina. OP, @systemsfault, qualsiasi progresso è possibile condividere ?;) –

+0

@mhambra, vedere il codice di libnids sembra utilizzare libpcap. In realtà ho lasciato il progetto e non lo guardo più, quindi non ho altri suggerimenti oltre al suggerimento del tsg. – systemsfault

risposta

9

No, sono abbastanza sicuro che la patch non sia stata trasformata in libpcap. Ma puoi eseguire la deframmentazione ip (e seguire anche i flussi TCP) con libnids.

+0

tsg, libnids usa socket unix grezzi ma ho bisogno di un'implementazione con libpcap. Perché sto cercando di imparare libpcap e provare a creare un'applicazione sperimentale con esso. lwip ha anche funzioni di rimontaggio/deframmentazione dei pacchetti. – systemsfault

+0

Dopo un breve sguardo nel codice di libnids, sembra che usi libpcap. Vedi ad esempio nids_pcap_handler(). – tsg

+1

dopo un breve sguardo, posso dire di sì usa pcap; ma non per il riassemblaggio. Per riassemblare sembra usare socket grezzi, vedere il codice sorgente di ip_fragment.c. – systemsfault

0

Libpcap è una libreria per acquisire pacchetti raw layer-layer; è destinato ad essere utilizzato da programmi e librerie che eseguono la propria elaborazione di tali pacchetti, incluso il riassemblaggio dei frammenti IP, ecc. Pertanto, non esegue e non procederà mai al riassemblaggio IP; appartiene a una biblioteca separata.

1

Se stai cercando uno strumento per il riassemblaggio IP, puoi effettuare il checkout IPDefragUtil. È anche possibile controllare il codice sorgente di riassemblaggio IP here e here

Problemi correlati