作者cole945 (躂躂..)
看板Visual_Basic
标题Re: [VB6 ] 如何用VB6撰写类似sniffer的程式?
时间Sun Jul 8 18:48:53 2007
※ 引述《feying (子祈)》之铭言:
: 有看过winsock的教学,可是我不是要针对特定的server监听
: 应该也不需要client/server连线的动作,所以好像也不是用winsock元件
还是用 winsock ..
用 winsock 的写 sniffer 有两个重点,
第一是开一个 raw ip socket
socket type设SOCK_RAW, protocol type设IPPROTO_RAW
这样可以收到 IP 层以上的原始资料(包含header而不是纯user data)
再来是要设定ioctlsocket开启SIO_RCVALL
这样才会连不是属於自己的资料(ip/mac不合)都一起收上来
如果想收到 layer-2 的资料(像ARP、ethernet header)
那winsock就没办法做了(windows本身的限制)
这要透过 WinPcap (
http://www.winpcap.org/) 安装特殊的driver
来接收这些资料, 甚至可以自己送出raw packet..
但他本身没提供可以给VB直接使用的元件,
不过应该还是可以用Declare来使用他提供的DLL..
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 220.139.136.137