В настоящее время я пишу сканер портов, куда вы можете импортировать список ips, и программа проверит их все на наличие открытых портов.
Проблема в том, что сканер портов находит 5 действительных портов на 5 разных ips, а затем находит только недопустимые открытые порты. Список, который я пробовал, - это мои собственные серверы, и все порты, которые я тестирую, открыты. Я даже вижу их, когда я использую этот сайт для тестирования: https://www.yougetsignal.com/tools/open-ports/
Программа многопоточная.
Я пробовал много разных вещей, используя connect_ex()
вместо connect()
, но ничего не получалось.
def scanner(host):
global checked
checked +=1
socket.setdefaulttimeout(1)
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
try:
s.connect((host,25))
s.close()
write_console("success", "Host: " + host + " offener Port: 25")
write(host + ":25", output_file)
except Exception as e:
write_console("error", "Host: " + host + " Port: 25")
try:
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s.connect((host,587))
s.close()
write_console("success", "Host: " + host + " offener Port: 587")
write(host + ":587", output_file)
except:
write_console("error", "Host: " + host + " Port: 587")