Could anyone suggest a good packet sniffer class for c++? [closed]

对着背影说爱祢 提交于 2019-12-09 07:04:43

问题


Could anyone suggest a good packet sniffer class for c++? Looking for a easy insertable class I can use in my c++ program, nothing complicated.


回答1:


You will never be able to intercept network traffic just by inserting a class into your project. Packet capture functionality requires kernel mode support, hence you will at the very least need to have your application require or install libpcap/WinPcap, as Will Dean pointed out.

Most modern Unix-like distributions include libpcap out of the box, in which case you could take a look at this very simple example: http://www.tcpdump.org/pcap.htm

If you're using Windows, you're more or less on your own, although WinPcap programming is extremely similar to libpcap programming (unsurprisingly, since it's a libpcap port to Win32.) The SDK can be found here: http://www.winpcap.org/devel.htm

At any rate, no matter the operating system, you will need root / Administrator access to actually perform a capture. Just using the library to replay or analyze precaptured data doesn't require any special privilege, of course.




回答2:


You'll need to say something about your platform, as this is a platform rather than a language thing.

But assuming you're on something common, look into pcap or winpcap.




回答3:


Microsoft Network Monitor has a packet capture and analysis API, see the netmon blog for some basic info.



来源:https://stackoverflow.com/questions/345305/could-anyone-suggest-a-good-packet-sniffer-class-for-c

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!