New 御剑高速 TCP 全端口扫描工具
在. NET 中,SocketAsyncEventArgs 很适合用来编写高效网络通讯程序,这个类的主要功能是可以避免重复分配大量的异步套接字 I/O 内进行同步的对象。
IOCP 网络编程模型也叫完成端口,完成端口会充分利用 Windows 内核来进行 I/O 的调度,理论上和大量的实践中证明是用于 WIN 中 C/S 通信模式中性能最好的网络通信模型,没有之一(希望别打脸)4 * V, o9 }/ a5 h& R
主要实现代码:
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):
下载地址:https://www.lanzous.com/i2atgre