前言
为了自动检测本机的端口开关情况,但是是单线程的,还有待改进。
源码
import socket
def main():
sk = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
sk.settimeout(1000)
ip = input('请输入目标主机(默认:127.0.0.1):')
if ip == '':
ip = '127.0.0.1'
s = input('请输入目标主机开始端口(默认:0):')
if s == '':
startport = 0
else:
startport = int(s)
s = input('请输入目标主机结束端口(默认:65536):')
if s == '':
endport = 65536
else:
endport = int(s)
print('正在扫描%s的端口' % ip)
for port in range(startport, endport + 1):
try:
sk.connect((ip, port))
print('%s \'s %d is OK!' % (ip, port))
except Exception:
print('%s \'s %d is not OK!' % (ip, port))
sk.close()
if __name__ == '__main__':
main()