扫描整个IP范围/子网以打开端口80?

use*_*815 5 port centos

我需要一种快速有效的方法来扫描端口80打开的ip范围.

因此,例如,如果我想扫描OVH IP范围"46.105.0.0/16",我需要它扫描该范围内的每个IP并输出每个IP的列表,端口80打开.

46.105.0.51
46.105.0.72
46.105.0.91
46.105.0.7
46.105.0.15
Run Code Online (Sandbox Code Playgroud)

我需要扫描多个子网,我需要它输出到文件.

编辑:我也在我的专用机箱上运行CentOS,带有1Gbit上行链路.

adm*_*rew 7

nmap来救援!:

nmap -Pn -p80 --open 46.105.0.0/16
Run Code Online (Sandbox Code Playgroud)

...将为您提供响应的主机列表tcp/80以及相应的nmap输出;

  • -Pn:跳过 ping 测试,因为您只关心开放端口
  • --open:仅返回您的端口开放的 IP

只需一点点awking(并且grep,因为我很懒,不太擅长awk-awk大师可以帮我解决这个问题吗?),您可以获得 IP 列表:

nmap -Pn -p80 --open 46.105.0.0/16 | grep 46.105 | awk '{print  $5}NF == 6{print $6}'
Run Code Online (Sandbox Code Playgroud)

nmap还具有用于输出到特定格式的文件的选项,或者您可以只>输出到文件:

nmap -Pn -p80 --open 46.105.0.0/16 | grep 46.105 | awk '{print  $5}NF == 6{print $6}' > output.txt
Run Code Online (Sandbox Code Playgroud)

  • 尝试`nmap -P0 -p80 --open 46.105.0.0/16 | 46.105 | grep 46.105 | grep 46.105 awk '{print $5}NF == 6{print $6}' > 输出.txt` (2认同)