我正在尝试使用 nmap 扫描大量域名。我使用了以下命令:
Nmap -PN -p443 -sS -T5 -oX out.xml -iL in.csv
我收到以下警告:
Warning: xx.xx.xx.xx giving up on port because retransmission cap hit (2).
为什么会出现这种情况?如何解决问题?
选项
-T5
指示 nmap 使用“疯狂”的计时设置。以下是当前源代码的相关部分,说明了这意味着什么设置:
} else if (*optarg == '5' || (strcasecmp(optarg, "Insane") == 0)) {
o.timing_level = 5;
o.setMinRttTimeout(50);
o.setMaxRttTimeout(300);
o.setInitialRttTimeout(250);
o.host_timeout = 900000;
o.setMaxTCPScanDelay(5);
o.setMaxSCTPScanDelay(5);
o.setMaxRetransmissions(2);
}
如您所见,最大重传次数为 2。当重传次数存在非默认上限时(使用
-T5
、-T4
设置,或使用 --max-retries
手动设置),您看到的警告将会打印出来。 ),然后上限就被击中了。
要避免此问题,请尝试缩小计时设置。
-T4
仍然非常快,并且应该适用于附近的网络。 -T3
是默认值。如果您确定延迟和带宽不是问题,但可能由于硬件故障而丢包,则可以手动将 --max-retries
设置为更高的值,并保留其余的 -T5
设置。
我遇到了同样的问题,更改了
T
参数并且 --max-retries
没有改变任何东西。
我的问题是 VirtualBox 中的网络适配器配置为
NAT
,而不是bridge
。
这可能是因为虚拟卡已被所有数据包饱和而发生。 这个配置解决了我的情况的问题。
我认为这个问题发生是因为网络连接,所以我尝试这个命令
nmap -sT -T4 192.168.1.0/24