我有一个防火墙,它将端口 2222 转发到在端口 2222 上运行 SSH 服务器的 Linux 计算机。问题是我不知道防火墙的 IP 是什么。所以我想扫描子网以告诉我哪个 IP 有这个转发端口。
我尝试了这个脚本:
#!/bin/bash
for ((i=2; i<256; i++));
do
sudo nmap -sS -p2222 10.1.$i.0/24
done
其输出内容如下:
Host is up (0.00039s latency).
PORT STATE SERVICE
2222/tcp open EtherNetIP-1
对于 256x256 主机,我看到的就是这种情况。我认为这个答案可能是以下两个答案之一:
- 什么应该输出是什么?也许我错过了,必须
grep
找到它。 - 我应该使用哪种不同的
nmap
扫描?
答案1
如果仍然需要答案,我希望这会有所帮助。 Nmap 支持多主机扫描,有关参考,请参阅目标规范。您可以像这样修改命令:
sudo nmap -sS -p2222 10.1.2-255.0/24
这将扫描从 2 到 255 的子网,就像您的循环一样。