我在python中使用端口扫描程序,可以检查公共和本地IP的开放端口。 公共IP上的Portscann工作正常,但是当我尝试在localhost(127.0.0.1或0.0.0.0)上扫描时,它会在每个端口上说这是关闭的......
继承守则:
try:
for port in range(int(sport), int(eport) + 1):
sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
result = sock.connect_ex((remoteServer, port))
if result == 0:
print("[+] Port " + str(port) + " = [Open]")
else:
print("[-] Port " + str(port) + " = [Closed]")
sock.close()
except:
print("\nScan failed!")
time.sleep(2)
print("Check your IP adress.\n")
time.sleep(3)
print("The programm will be closed...")
time.sleep(4)
sys.exit(0)
答案 0 :(得分:0)
所以我认为第一种情况(绑定公共IP),它没有绑定127.0.0.1(回送地址),导致你无法扫描它们。换句话说,公共IP和环回地址代表2个不同的网络设备。