2012-01-16 13 views
12

Sono interessato a catturare il traffico di rete da un computer specifico. Mi interessa solo catturare il traffico dal computer su cui è installata la mia applicazione (come Fiddler). Come Fiddler, voglio in particolare catturare le informazioni mostrate nella porzione "Web Sessions" (ID #, Codice di stato Http, Protocollo, Host, Url, Dimensione corpo, Tipo di contenuto e Processo.C# - Catturare il traffico di rete

Mentre sono . molto competente in C# non ho idea di come catturare in realtà il traffico di rete come questo qualcuno può per favore mi punto in una sorta di direzione

Grazie mille

+5

http://www.codeproject.com/KB/IP/CSNetworkSniffer.aspx –

+1

Stai cercando qualcosa da integrare nella tua applicazione, o un'applicazione stand-alone che viene eseguita insieme alla tua app sul client che catturerà il traffico ? –

+0

Ho pensato che il processo di registrazione di una porta potrebbe essere semplice come dire "nuova porta (numero di porta) .StartLogging (nuovo Logger())". Ma dopo aver cercato su Google per quasi 2 giorni, ho scoperto che questo regno della codifica è ancora selvaggio: D. –

risposta

6

NOTA:..! io non sono Assicurati al 100% cosa cerchi in un'applicazione standalone o qualcosa da integrare nella tua applicazione, ma la mia risposta presupporrà che tu stia cercando qualcosa da integrare nella tua app. Lo cancellerò.

Se stai cercando qualcosa da integrare nella tua applicazione che puoi essenzialmente abilitare o disabilitare, dovresti dare un'occhiata a FiddlerCore, che è la funzionalità di base utilizzata da Fiddler ma che può essere integrata in .NET autonomo. app.

Il wiki di FiddlerCore è here e descrive l'utilizzo piuttosto bene. L'app di esempio è anche una buona descrizione su come utilizzare FiddlerCore.

Spero che questo aiuti. In bocca al lupo!

1

winpcap o uno dei suoi wrapper .net è la scelta migliore. È molto ben documentato. Se lo fai in mono, dovrai usare libpcap su macchine unix. Le API sono identiche.

Problemi correlati