本程序仅用于安全测试


在.NET中,SocketAsyncEventArgs很适合用来编写高效网络通讯程序,这个类的主要功能是可以避免重复分配大量的异步套接字 I/O 内进行同步的对象。

IOCP网络编程模型也叫完成端口,完成端口会充分利用Windows内核来进行I/O的调度,理论上和大量的实践中证明是用于WIN中C/S通信模式中性能最好的网络通信模型,没有之一(希望别打脸)4 \* V, o9 }/ a5 h& R

主要实现代码:


?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
Dim CSocket As New Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp)
 
Dim AsyncEventArgs As New SocketAsyncEventArgs()
 
AsyncEventArgs.UserToken = CSocket
 
AsyncEventArgs.RemoteEndPoint = New IPEndPoint(IPAddress.Parse(ip), x)
 
AddHandler AsyncEventArgs.Completed, AddressOf OnCompleted
 
CSocket.ConnectAsync(AsyncEventArgs)
 
 
 
Private Sub OnCompleted(Sender As Object, e As SocketAsyncEventArgs)
 
        If e.SocketError = SocketError.Success Then
 
 
 
        End If
 
End Sub

这是一个基于.NET 2.0编写的高速TCP全端口扫描程序,扫描速度取于你的上行带宽,连接缓冲区。主要是采用了.NET中的异步模型加事件通知(俗称IOCP),可能涉及到重复造轮子的嫌疑,但是确实要比很多端口扫描程序的速度要快上很多,因为没有采用多线程,相对来说线程占用不多,所以内存控制的还算比较不错!


扫描效果演示图(New):



下载地址

此处内容已隐藏,评论后可见,垃圾评论自动封IP永远禁止访问本博客!