Python nmap 未显示主机

Python nmap not showing hosts

这是代码:

import nmap
# initialize the port scanner
nmScan = nmap.PortScanner()

# scan localhost for ports in range 21-443
nmScan.scan('89.43.3.92', '20-450')

# run a loop to print all the found result about the ports
print(nmScan.all_hosts())
for host in nmScan.all_hosts():
     print('Host : %s (%s)' % (host, nmScan[host].hostname()))
     print('State : %s' % nmScan[host].state())
     for proto in nmScan[host].all_protocols():
         print('----------')
         print('Protocol : %s' % proto)
 
         lport = nmScan[host][proto].keys()
        #  lport.sort()
         for port in lport:
             print ('port : %s\service : %s' % (port, nmScan[host][proto][port]['name']))

当我使用127.0.0.1时,代码运行正常,nmScan.all_hosts()不为空,但当我查看其他ip地址时,它总是为空。

P.S:在上面的代码中,我试图查看每个端口是什么服务运行。

如果您使用的是 VPN,请将其关闭。这解决了我的问题。