python报错nmap.nmap.PortScannerError: 'Scantype , not supported\r\n\r\n'
时间: 2024-03-16 11:40:13 浏览: 28
这个错误是由nmap模块中的PortScannerError异常引发的。它表示扫描类型不受支持。可能是你在使用nmap进行端口扫描时选择了一个不支持的扫描类型。
为了解决这个问题,你可以尝试以下几个步骤:
1. 确保你使用的是最新版本的nmap模块。你可以通过升级或重新安装nmap模块来确保使用的是最新版本。
2. 检查你的扫描类型参数是否正确。在nmap中,支持的扫描类型包括TCP SYN扫描、TCP连接扫描、UDP扫描等。请确保你选择的扫描类型是nmap支持的。
3. 如果你仍然遇到问题,可以尝试使用其他的端口扫描工具或库来替代nmap模块。
相关问题
如何同时捕获OSError和nmap.PortScannerError
您可以使用多个 `except` 子句来捕获多个异常类型。例如,如果您想同时捕获 `OSError` 和 `nmap.PortScannerError` 异常,您可以使用以下代码:
```python
import nmap
try:
scanner = nmap.PortScanner()
scanner.scan('127.0.0.1', '22-443')
for host in scanner.all_hosts():
print('Host : %s (%s)' % (host, scanner[host].hostname()))
print('State : %s' % scanner[host].state())
for proto in scanner[host].all_protocols():
print('Protocol : %s' % proto)
lport = scanner[host][proto].keys()
for port in lport:
print('port : %s\tstate : %s' % (port, scanner[host][proto][port]['state']))
except (OSError, nmap.PortScannerError) as e:
print('Error: %s' % e)
```
在上面的代码中,我们使用了一个 `except` 子句来捕获 `OSError` 和 `nmap.PortScannerError` 异常。如果扫描失败或者出现 `OSError` 异常,程序将输出错误信息并继续执行。您可以根据需要修改代码来适应您的扫描需求。
nmap -v scanme.nmap.org 扫描与 nmap -vv scanme.nmap.org 扫描的区别是什么
根据提供的引用[1],nmap是一款网络探测和安全审计工具。使用-v选项可以增加扫描的详细程度,使用-vv选项可以进一步增加详细程度。因此,nmap -v scanme.nmap.org扫描的详细程度比nmap -vv scanme.nmap.org扫描的详细程度要少。
下面是两个命令的示例:
1. nmap -v scanme.nmap.org扫描的输出示例:
```shell
Starting Nmap 7.80 ( https://nmap.org ) at 2021-08-17 09:30 PDT
Initiating Ping Scan at 09:30
Scanning scanme.nmap.org (45.33.32.156) [2 ports]
Completed Ping Scan at 09:30, 0.00s elapsed (1 total hosts)
Initiating Parallel DNS resolution of 1 host. at 09:30
Completed Parallel DNS resolution of 1 host. at 09:30, 0.02s elapsed
Initiating Connect Scan at 09:30
Scanning scanme.nmap.org (45.33.32.156) [1000 ports]
Discovered open port 80/tcp on 45.33.32.156
Discovered open port 22/tcp on 45.33.32.156
Completed Connect Scan at 09:30, 0.11s elapsed (1000 total ports)
Nmap scan report for scanme.nmap.org (45.33.32.156)
Host is up (0.11s latency).
Other addresses for scanme.nmap.org (not scanned): 2600:3c03::f03c:91ff:fe18:bb2f
Not shown: 998 filtered ports
PORT STATE SERVICE
22/tcp open ssh
80/tcp open http
Read data files from: /usr/bin/../share/nmap
Nmap done: 1 IP address (1 host up) scanned in 0.18 seconds
```
2. nmap -vv scanme.nmap.org扫描的输出示例:
```shell
Starting Nmap 7.80 ( https://nmap.org ) at 2021-08-17 09:31 PDT
Initiating Ping Scan at 09:31
Scanning scanme.nmap.org (45.33.32.156) [2 ports]
Packet capture filter (device eth0): icmp and ((ip[20:2] - ip[16:2]) - ((ip[0]&0xf)<<2)) != 0
Completed Ping Scan at 09:31, 0.00s elapsed (1 total hosts)
Initiating Parallel DNS resolution of 1 host. at 09:31
Completed Parallel DNS resolution of 1 host. at 09:31, 0.02s elapsed
Initiating Connect Scan at 09:31
Scanning scanme.nmap.org (45.33.32.156) [1000 ports]
Discovered open port 80/tcp on 45.33.32.156
Discovered open port 22/tcp on 45.33.32.156
Completed Connect Scan at 09:31, 0.11s elapsed (1000 total ports)
Nmap scan report for scanme.nmap.org (45.33.32.156)
Host is up, received syn-ack (0.11s latency).
Other addresses for scanme.nmap.org (not scanned): 2600:3c03::f03c:91ff:fe18:bb2f
Not shown: 998 filtered ports
Reason: 998 no-responses and 2 host-prohibited
PORT STATE SERVICE REASON
22/tcp open ssh syn-ack ttl 56
80/tcp open http syn-ack ttl 56
Read data files from: /usr/bin/../share/nmap
Nmap done: 1 IP address (1 host up) scanned in 0.18 seconds
```