2010-04-27 22 views
3

Je veux enregistrer les sites Web visités dans un système. J'ai donc décidé d'enregistrer les paquets envoyés par le système. J'utilise l'API Jpcap. Je suis capable d'enregistrer beaucoup de paquets. Maintenant, ce que je veux faire, c'est que je veux filtrer uniquement les paquets DNS. Je pense que ce sera en mesure de connecter les sites Web.capture de paquets DNS en utilisant Java

Je veux un moyen de filtrer les paquets DNS. Comment puis-je le faire?

Répondre

0

je l'ai trouvé facile le traitement de tous les paquets dans le port 53 et donc j'utiliser ce filtre

port dst udp 53

jack tanx ur indice

0

Here il dit

Vous pouvez vérifier la page d'accueil suivant pour plus de détails sur filtre expression . La conception filtres de capture pour Ethereal/Wireshark

Ainsi, je crois

captor.setFilter("dns", true); 

devrait fonctionner

+0

son l'exception qui jette lorsque j'ai essayé votre solution Exception dans le fil "principal" java.io.IOException: une erreur s'est produite lors de la compilation ou du réglage du filtre: erreur de syntaxe à jpcap.JpcapCaptor.setFilter (méthode native) at test1.JpcapTip.main (JpcapTip.java:25) Java Résultat: 1 – rgksugan

0

Une approche plus laid est de scanner sur le port 53 pour UDP. Toutefois, la réponse précédente semble plus propre à l'aspect implémentation.

+0

est le numéro de port le port source ou le port de destination – rgksugan

+2

Eh bien, comme nous envoyons ce paquet au port 53 bien connu du serveur. Cela signifie, numéro de port de destination. PS: Vous pouvez vérifier TCP et UDP tous les deux. – Jack