張俊玲
19021210858
轉(zhuǎn)載自:https://blog.csdn.net/Rongui_wuyanzu/article/details/102682944
【嵌牛導(dǎo)讀】python掃描端口腳本函數(shù)
【嵌牛鼻子】python掃描端口腳本?socket函數(shù)
【嵌牛提問】如何掃描并返回?
【嵌牛正文】
調(diào)用socket函數(shù):
import socket
創(chuàng)建socket對象:
server = socket.socket(family,type)
//family代表地址家族逐纬,可為AF_INET(Internet通信)或AF_UNIX(同一臺機(jī)器上進(jìn)程間通信)悠鞍。
//type代表套接字類型,可為SOCK_STREAM(流套接字)和SOCK_DGRAM(數(shù)據(jù)報套接字)童叠。
設(shè)置默認(rèn)超時等限,不然鏈接不上程序?qū)恢敝剡B,會造成不必要的資源浪費:
setdefaulttimeout(5) //5為設(shè)置超時時間,5秒鏈接不上將會退出代态。
返回目標(biāo)IPV4地址:
gethostbyname(target)
import socket
setdefaulttimeout(5)
target = input("請輸入您的掃描目標(biāo)IP地址:")
targetIP = gethostbyname(target)
print ("開始掃描目標(biāo)-",targetIP)
for port in range(1,1024):
server = socket.socket(socket.AF_INET,socket.SOCK_STREAM)
result = server.connect((targetIP,port))
if (result == 0):
print ("Port %d is open"%port)
else:
print ("Port %d is close"%port)
server.close()
print ("本次掃描已結(jié)束")