写了个IP及端口扫描的程序 vbnet
写了个IP及端口扫描的程序 vbnet
引用类system.net.dns
[图片]
局域网ip扫描,主要是根据本机的ip进行拆分,然后用5个线程跑ip地址,当ping通就写代表主机存在
[图片]
端口扫描是根据端口的多少来判断的,最大20个线程跑端口
[图片]
[图片]
代码如下:
Option Explicit On '决定编译器是否要求所有的变量被显式的声明
Option Strict On '则编译器允许放宽的隐式类型转换
Imports System.Net.Dns
Imports System.Threading
'计算
Private...
写了个IP及端口扫描的程序 vbnet
引用类system.net.dns
局域网ip扫描,主要是根据本机的ip进行拆分,然后用5个线程跑ip地址,当ping通就写代表主机存在
端口扫描是根据端口的多少来判断的,最大20个线程跑端口
代码如下:
Option Explicit On '决定编译器是否要求所有的变量被显式的声明
Option Strict On '则编译器允许放宽的隐式类型转换
Imports System.Net.Dns
Imports System.Threading
'计算
Private Sub countPort1()
number2 = Int(65536 / 20)
'ShowMessage("w")
Dim num1 As Integer = 0
' number1(num1) = 1
For i = 1 To 65536 Step number2
'ShowMessage("w1")
number1(num1) = i
'ShowMessage("w2")
'number1(num1 + 1) = number2
num1 = num1 + 1
Next
number1(num1 - 1) = number2
End Sub
'65536
Private Sub scanPort_1()
For i = number1(0) To number1(1)
Label1.Text = "正在扫描端口:" & i
If CheckPort(Trim(TextBox1.Text), CInt(i)) = True Then
ListBox2.Items.Add(i)
End If
Next
number3(1) = 1
If check_port_number() = True Then
Button3.Enabled = True
Label1.Text = "端口扫描完成!"
End If
End Sub
Private Sub scanPort_2()
For i = number1(1) + 1 To number1(2)
Label1.Text = "正在扫描端口:" & i
If CheckPort(Trim(TextBox1.Text),CInt(i)) = True Then
ListBox2.Items.Add(i)
End If
Next
number3(2) = 1
If check_port_number() = True Then
Button3.Enabled = True
Label1.Text = "端口扫描完成!"
End If
End Sub
Private Sub scanPort_3()
For i = number1(2) + 1 To number1(3)
Label1.Text = "正在扫描端口:" & i
If CheckPort(Trim(TextBox1.Text), CInt(i)) = True Then
ListBox2.Items.Add(i)
End If
Next
number3(3) = 1
If check_port_number() = True Then
Button3.Enabled = True
Label1.Text = "端口扫描完成!"
End If
End Sub
Private Sub scanPort_4()
For i = number1(3) + 1 To number1(4)
Label1.Text = "正在扫描端口:" & i
If CheckPort(Trim(TextBox1.Text), CInt(i)) = True Then
ListBox2.Items.Add(i)
End If
Next
number3(4) = 1
If check_port_number() = True Then
Button3.Enabled = True
Label1.Text = "端口扫描完成!"
End If
End Sub
Private Sub scanPort_5()
For i = number1(3) + 1 To number1(5)
Label1.Text = "正在扫描端口:" & i
If CheckPort(Trim(TextBox1.Text), CInt(i)) = True Then
ListBox2.Items.Add(i)
End If
Next
number3(5) = 1
If check_port_number() = True Then
Button3.Enabled = True
Label1.Text = "端口扫描完成!"
End If
End Sub
Private Sub scanPort_6()
For i = number1(5) + 1 To number1(6)
Label1.Text = "正在扫描端口:" & i
If CheckPort(Trim(TextBox1.Text), CInt(i)) = True Then
ListBox2.Items.Add(i)
End If
Next
number3(6) = 1
If check_port_number() = True Then
Button3.Enabled = True
Label1.Text = "端口扫描完成!"
End If
End Sub
Private Sub scanPort_7()
For i = number1(6) + 1 To number1(7)
Label1.Text = "正在扫描端口:" & i
If CheckPort(Trim(TextBox1.Text), CInt(i)) = True Then
ListBox2.Items.Add(i)
End If
Next
number3(7) = 1
If check_port_number() = True Then
Button3.Enabled = True
Label1.Text = "端口扫描完成!"
End If
End Sub
Private Sub scanPort_8()
For i = number1(7) + 1 To number1(8)
Label1.Text = "正在扫描端口:" & i
If CheckPort(Trim(TextBox1.Text), CInt(i)) = True Then
ListBox2.Items.Add(i)
End If
Next
number3(8) = 1
If check_port_number() = True Then
Button3.Enabled = True
Label1.Text = "端口扫描完成!"
End If
End Sub
Private Sub scanPort_9()
For i = number1(8) + 1 To number1(9)
Label1.Text = "正在扫描端口:" & i
If CheckPort(Trim(TextBox1.Text), CInt(i)) = True Then
ListBox2.Items.Add(i)
End If
Next
number3(9) = 1
If check_port_number() = True Then
Button3.Enabled = True
Label1.Text = "端口扫描完成!"
End If
End Sub
Private Sub scanPort_10()
For i = number1(9) + 1 To number1(10)
Label1.Text = "正在扫描端口:" & i
If CheckPort(Trim(TextBox1.Text), CInt(i)) = True Then
ListBox2.Items.Add(i)
End If
Next
number3(10) = 1
If check_port_number() = True Then
Button3.Enabled = True
Label1.Text = "端口扫描完成!"
End If
End Sub
Private Sub scanPort_11()
For i = number1(10) + 1 To number1(11)
Label1.Text = "正在扫描端口:" & i
If CheckPort(Trim(TextBox1.Text), CInt(i)) = True Then
ListBox2.Items.Add(i)
End If
Next
number3(11) = 1
If check_port_number() = True Then
Button3.Enabled = True
Label1.Text = "端口扫描完成!"
End If
End Sub
Private Sub scanPort_12()
For i = number1(11) + 1 To number1(12)
Label1.Text = "正在扫描端口:" & i
If CheckPort(Trim(TextBox1.Text), CInt(i)) = True Then
ListBox2.Items.Add(i)
End If
Next
number3(12) = 1
If check_port_number() = True Then
Button3.Enabled = True
Label1.Text = "端口扫描完成!"
End If
End Sub
Private Sub scanPort_13()
For i = number1(12) + 1 To number1(13)
Label1.Text = "正在扫描端口:"& i
If CheckPort(Trim(TextBox1.Text), CInt(i)) = True Then
ListBox2.Items.Add(i)
End If
Next
number3(13) = 1
If check_port_number() = True Then
Button3.Enabled = True
Label1.Text = "端口扫描完成!"
End If
End Sub
Private Sub scanPort_14()
For i = number1(13) + 1 To number1(14)
Label1.Text = "正在扫描端口:" & i
If CheckPort(Trim(TextBox1.Text), CInt(i)) = True Then
ListBox2.Items.Add(i)
End If
Next
number3(14) = 1
If check_port_number() = True Then
Button3.Enabled = True
Label1.Text = "端口扫描完成!"
End If
End Sub
Private Sub scanPort_15()
For i = number1(14) + 1 To number1(15)
Label1.Text = "正在扫描端口:" & i
If CheckPort(Trim(TextBox1.Text), CInt(i)) = True Then
ListBox2.Items.Add(i)
End If
Next
number3(15) = 1
If check_port_number() = True Then
Button3.Enabled = True
Label1.Text = "端口扫描完成!"
End If
End Sub
Private Sub scanPort_16()
For i = number1(15) + 1 To number1(16)
Label1.Text = "正在扫描端口:" & i
If CheckPort(Trim(TextBox1.Text), CInt(i)) = True Then
ListBox2.Items.Add(i)
End If
Next
number3(16) = 1
If check_port_number() = True Then
Button3.Enabled = True
Label1.Text = "端口扫描完成!"
End If
End Sub
Private Sub scanPort_17()
For i = number1(16) + 1 To number1(17)
Label1.Text = "正在扫描端口:" & i
If CheckPort(Trim(TextBox1.Text), CInt(i)) = True Then
ListBox2.Items.Add(i)
End If
Next
number3(17) = 1
If check_port_number() = True Then
Button3.Enabled = True
Label1.Text = "端口扫描完成!"
End If
End Sub
Private Sub scanPort_18()
For i = number1(17) + 1 To number1(18)
Label1.Text = "正在扫描端口:" & i
If CheckPort(Trim(TextBox1.Text), CInt(i)) = True Then
ListBox2.Items.Add(i)
End If
Next
number3(18) = 1
If check_port_number() = True Then
Button3.Enabled = True
Label1.Text = "端口扫描完成!"
End If
End Sub
Private Sub scanPort_19()
For i = number1(18) + 1 To number1(19)
Label1.Text = "正在扫描端口:" & i
If CheckPort(Trim(TextBox1.Text), CInt(i)) = True Then
ListBox2.Items.Add(i)
End If
Next
number3(19) = 1
If check_port_number() = True Then
Button3.Enabled = True
Label1.Text = "端口扫描完成!"
End If
End Sub
Private Sub scanPort_20()
For i = number1(19) + 1 To number1(20)
Label1.Text = "正在扫描端口:" & i
If CheckPort(Trim(TextBox1.Text), CInt(i)) = True Then
ListBox2.Items.Add(i)
End If
Next
number3(20) = 1
If check_port_number() = True Then
Button3.Enabled = True
Label1.Text = "端口扫描完成!"
End If
End Sub
Private Function checkPortNumber() As Boolean
If nn1 = 1 And nn2 = 1 And nn3 = 1 And nn4 = 1 And nn5 = 1 Then
checkPortNumber = True
Else
checkPortNumber = False
End If
End Function
Private Sub scanPort()
For i = be1 To ed1
Label1.Text = "正在扫描端口:" & i
If CheckPort(Trim(TextBox1.Text), CInt(i)) = True Then
ListBox2.Items.Add(i)
End If
Next
nn1 = 1
If checkPortNumber() = True Then
Button3.Enabled = True
Label1.Text = "端口扫描完成!"
End If
End Sub
Private Sub scanPort2()
For i = be2 To ed2
Label1.Text = "正在扫描端口:" & i
If CheckPort(Trim(TextBox1.Text), CInt(i)) = True Then
ListBox2.Items.Add(i)
End If
Next
nn2 = 1
If checkPortNumber() = True Then
Button3.Enabled = True
Label1.Text = "端口扫描完成!"
End If
End Sub
Private Sub scanPort3()
For i = be3 To ed3
Label1.Text = "正在扫描端口:" & i
If CheckPort(Trim(TextBox1.Text), CInt(i)) = True Then
ListBox2.Items.Add(i)
End If
Next
nn3 = 1
If checkPortNumber() = True Then
Button3.Enabled = True
Label1.Text = "端口扫描完成!"
End If
End Sub
Private Sub scanPort4()
For i = be4 To ed4
Label1.Text = "正在扫描端口:" & i
If CheckPort(Trim(TextBox1.Text), CInt(i)) = True Then
ListBox2.Items.Add(i)
End If
Next
nn4 = 1
If checkPortNumber() = True Then
Button3.Enabled = True
Label1.Text = "端口扫描完成!"
End If
End Sub
Private Sub scanPort5()
For i = be5 To ed5
Label1.Text = "正在扫描端口:" & i
If CheckPort(Trim(TextBox1.Text), CInt(i)) = True Then
ListBox2.Items.Add(i)
End If
Next
nn5 = 1
If checkPortNumber() = True Then
Button3.Enabled = True
Label1.Text = "端口扫描完成!"
End If
End Sub
Private Function check_port_number() As Boolean
For i = 1 To 20
If number3(i) = 0 Then
check_port_number = False
Exit Function
End If
Next
check_port_number = True
End Function
Private Sub check_port_thread()
'For i = 1 To 20
' number3(i) = 1
'Next
If number3(1) = 0 Then tt_1.Abort()
If number3(2) = 0 Then tt_2.Abort()
If number3(3) = 0 Then tt_3.Abort()
If number3(4) = 0 Then tt_4.Abort()
If number3(5) = 0 Then tt_5.Abort()
If number3(6) = 0 Then tt_6.Abort()
If number3(7) = 0 Then tt_7.Abort()
If number3(8) = 0 Then tt_8.Abort()
If number3(9) = 0 Then tt_9.Abort()
If number3(10) = 0 Then tt_10.Abort()
If number3(11) = 0 Then tt_11.Abort()
If number3(12) = 0 Then tt_12.Abort()
If number3(13) = 0 Then tt_13.Abort()
If number3(14) = 0 Then tt_14.Abort()
If number3(15) = 0 Then tt_15.Abort()
If number3(16) = 0 Then tt_16.Abort()
If number3(17) = 0 Then tt_17.Abort()
If number3(18) = 0 Then tt_18.Abort()
If number3(19) = 0 Then tt_19.Abort()
If number3(20) = 0 Then tt_20.Abort()
End Sub
Private Sub Button5_Click(ByVal sender As System.Object, ByVal e AsSystem.EventArgs) Handles Button5.Click
Try
If Button3.Enabled = True Then
ShowMessage("没有端口扫描,请检查!")
Exit Sub
End If
If CheckBox1.Checked = False Then
If nn1 = 0 Then tt1.Abort()
If nn2 = 0 Then tt2.Abort()
If nn3 = 0 Then tt3.Abort()
If nn4 = 0 Then tt4.Abort()
If nn5 = 0 Then tt5.Abort()
Button3.Enabled = True
Label1.Text = "端口扫描终止!"
nn1 = 1
nn2 = 1
nn3 = 1
nn4 = 1
nn5 = 1
Else
Call check_port_thread()
Button3.Enabled = True
Label1.Text = "端口扫描终止!"
End If
Catch ex As Exception
End Try
End Sub
End Class
微信:15312167779(系统交流学习)
邮箱:149824844@qq.com
更多我的学习技术文章:
https://boysky123.lofter.com
https://user.qzone.qq.com/149824844