C# Listens to HTTP Requests without using WinPcap?
Can i listen to outgoing HTTP Requests with my application without using 开发者_JAVA百科WinPCap?
The way Fiddler and Charles do this is by inserting themselves as the system proxy. That way, when a browser (or .net for that matter) make an HTTP request, it goes via the proxy and can therefore be traced. So to do this you need to write a proxy and figure out how to set it as the proxy used by the network app you wish to trace. If it's sensibly written, it should use the system defined proxy, which in this case will be your sniffer app.
I don't know for sure if it works for outbound packets, but you can set up a socket as SOCK_RAW and it will receive all inbound packets.
精彩评论