你可以在Linux的生态系统中找到很多网络监控工具,它们可以为你生成出网络中所有设备的摘要,包括它们的IP地址等信息。
然而,实际上有时候你只需要一个简单的命令行工具,运行一个简单的命令就能提供同样的信息。
本篇教程会向你展示如何找出所有连接到给定网络的主机的IP地址。这里我们会使用Nmap工具来找出所有连接到相同网络的设备的IP地址。
Nmap (Network Mapper的简称)是一款开源、强大并且多功能的探查网络的命令行工具,用来执行安全扫描、网络审计、查找远程主机的开放端口等等。
如果你的系统中还没有安装Nmap,在你的发行版中运行合适的命令来安装:
$ sudo yum install nmap [在基于 RedHat 的系统中]
$ sudo dnf install nmap [在基于Fedora 22+ 的版本中]
$ sudo apt-get install nmap [在基于 Debian/Ubuntu 的系统中]
安装完成后,使用的语法是:
$ nmap [scan type...] options {target specification}
其中,{target specification}这个参数可以用主机名、IP地址、网络等来替代。
所以要列出所有连接到指定网络的主机IP地址,首先要使用ifconfig命令或者ip命令来识别网络以及它的子网掩码:
$ ifconfig
或者
$ ip addr show
在Linux中查找网络细节
接下来,如下运行Nmap命令:
$ nmap -sn 10.42.0.0/24
查找网络中所有活跃的主机
上面的命令中:
-sn -是扫描的类型,这里是ping方式扫描。默认上,Nmap使用端口扫描,但是这种扫描会禁用端口扫描。
10.42.0.0/24 -是目标网络,用你实际的网络来替换。
要了解全面的信息,查看Nmap的手册:
$ man nmap
或者不带任何参数直接运行Nmap查看使用信息摘要:
$ nmap
此外,对于有兴趣学习Linux安全扫描技术的人,可以阅读Nmap in Kali Linux这篇实践指导。
好了,就是这样了,您可以在下面的回复区说明你所遇到的问题或者评论。
您也可以跟我们分享其他列出指定网络已连接设备的IP地址的方法。
本文来源:不详 作者:佚名