如果您想知道哪些系统和设备连接到您的本地网络—无论是出于安全考虑还是仅仅出于好奇,Linux有一些非常好的命令可以提供答案。在这篇文章中,我们将探索一个小型网络,看看如何识别设备。
nmap.
我们要使用的第一个工具是nmap.,它代表Network Mapper,这是一种用于探索网络和执行一些严肃的安全审计的开源工具。它被设计为即使在大型网络上也能快速工作,并使用原始包提供信息来识别主机、服务,有时甚至是操作系统。
下面显示的简单扫描是在本地网络上检测系统和设备。目标地址的“/ 24”部分表示要包含192.168.0.x IP地址范围的所有主机。
$ nmap -sn 192.168.0.0/24起始nmap 7.80(https://nmap.org)在2021-03-19 11:32 _gateway的EDT NMAP扫描报告(192.168.0.1)主机UP(0.0088s延迟)。NMAP扫描报告192.168.0.5主机UP(0.0083s延迟)。NMAP扫描报告192.168.0.10主机(0.018s延迟)。NMAP扫描报告蜻蜓(192.168.0.11)主机UP(0.00030s延迟)。NMAP扫描报告192.168.0.14主机(0.00039s延迟)。NMAP扫描报告192.168.0.15主机UP(0.098s延迟)。NMAP扫描报告192.168.0.17主机UP(0.047s延迟)。NMAP扫描报告192.168.0.20主机UP(0.11s延迟)。NMAP扫描报告192.168.0.22主机UP(0.0046s延迟)。NMAP扫描报告192.168.0.23主机UP(0.096s延迟)。 Nmap scan report for firefly (192.168.0.28) Host is up (0.044s latency). Nmap done: 256 IP addresses (11 hosts up) scanned in 11.78 seconds
使用命令苏达,您还可以看到MAC地址以及一些供应商信息:
$ sudo nmap -sn 192.168.0.0/24启动nmap 7.80(https:/nmap.org)在2021-03-22 08:36 Router(192.168.0.1)主机上的EDT NMAP扫描报告(0.034s延迟)。MAC地址:F8:8E:85:35:7F:B9(ComTrend)NMAP扫描报告192.168.0.2主机UP(0.11s延迟)。MAC地址:20:EA:16:01:55:EB(未知)NMAP扫描报告192.168.0.5主机UP(0.10s延迟)。MAC地址:02:0F:B5:5B:D9:66(未知)NMAP扫描报告192.168.0.8主机UP(0.12s延迟)。MAC地址:86:89:DC:1B:9E:B4(未知)NMAP扫描报告192.168.0.10主机UP(0.12s延迟)。MAC地址:3C:28:6D:D5:9C:89(Google)NMAP扫描报告192.168.0.12主机UP(0.11s延迟)。MAC地址:44:65:0D:43:ED:44(亚马逊技术)NMAP扫描报告192.168.0.14主机UP(0.00025s延迟)。MAC地址:9C:3D:CF:E7:F3:71(Netgear)NMAP扫描报告192.168.0.17主机UP(0.11s延迟)。MAC地址:AC:63:如:CA:10:CF(亚马逊技术)NMAP扫描报告192.168.0.18主机UP(0.11s延迟)。MAC地址:04:ED:33:7C:44:C6(未知)NMAP扫描报告192.168.0.20主机(0.080s延迟)。 MAC Address: 02:0F:B5:0D:17:27 (Unknown) Nmap scan report for 192.168.0.22 Host is up (0.0053s latency). MAC Address: 00:25:B3:F4:74:68 (Hewlett Packard) Nmap scan report for firefly (192.168.0.28) Host is up (0.053s latency). MAC Address: 7C:67:A2:CF:9F:EF (Intel Corporate) Nmap scan report for dragonfly (192.168.0.11) Host is up. Nmap done: 256 IP addresses (13 hosts up) scanned in 11.58 seconds
请注意,主机名是在系统可用时提供的。
被扫描的网络是我的家庭网络。显示的列表似乎包括许多用于家庭网络的设备,但我都有一个小型的异网络(一个Windows 10系统,两个Linux系统和MacBook Pro)都已启动和运行。此外,房屋中至少有另外两个电脑,几片,两个打印机和扫描仪。在上面的扫描中,“-sn”参数字符串正在讲述nmap.发现主机,但不扫描端口。
要执行单个系统的端口扫描,您可以使用这样的命令:
$ sudo nmap -sS 192.168.0.28 Starting nmap 7.80 (https://nmap.org) at 2012103-19 17:00 EDT nmap scan report for firefly (192.168.0.28) Host is up (0.0088s latency). //启动nmap未显示:995 closed ports PORT STATE SERVICE 22/tcp open ssh 111/tcp open rpcbind 139/tcp open netbios-ssn 445/tcp open microsoft-ds 2049/tcp open nfs MAC Address: 7C:67:A2:CF:9F:EF (Intel corporation)
和第一个一样nmap.显示的命令,您可以使用192.168.0.0/24作为扫描目标运行整个192.168.0.x网络的端口扫描。
来自此的产出nmap.命令列出开放的端口并标识正在运行的服务。它还将该设备标识为基于英特尔的系统。这是一台运行Ubuntu的笔记本电脑,尽管从显示的输出中看不到操作系统。
另一方面,旨在识别OS的命令 -sudo nmap -O 192.168.0.28确认系统是Linux,但猜测是x86_64-redhat-linux-gnu,而不是Ubuntu。当在我的Windows 10系统上运行时,像这样的命令提供了一系列“激进的操作系统猜测”,包括十多个Windows版本。
下一个例子更不寻常,但如果你挑出正确的细节,就相当清楚了。
$ sudo nmap -sS 192.168.0.15 Starting nmap 7.80 (https://nmap.org) at 2021-03-19 17:05 EDT nmap scan report for 192.168.0.15 Host is up (0.065s latency)。MAC地址:38:30:F9:29:F8:A4 (LG电子(移动通信))Nmap完成:在0.95秒内扫描1个IP地址(1个主机)
该设备没有开放的端口,但我们在最后一行输出中得到了提示——(LG电子(移动通信))——这表明它是一款手机。这nmap.过程能够通过查找MAC地址的前半部分来提供这些细节,这是一个指示设备制造商的唯一标识符。在这种情况下,标识符为38:30:F9。(您可以通过访问来识别设备制造商maclookup网站,并插入任何你感兴趣的MAC地址的前半部分。)
arp.
这arp.系统上的缓存是查找本地系统信息的另一个地方。它保存IP地址、MAC地址和用于连接到每个系统的系统接口(在本例中,都是相同的接口)。
$ arp -a ?(192.168.0.18) at 04:ed:33:7c:44:c6 [ether] on enp0s25<==英特尔?(192.168.0.19)在00:25:00:4E:9E:9E:35 [以太] ON ENP0S25<== Apple MacBook?(192.168.0.22) at 00:25:b3:f4:74:68 [ether] on enp0s25<== HP打印机?(192.168.0.17) at ac:63:be:ca:10:cf [ether] on enp0s25<==亚马逊设备?(192.168.0.12) at 44:65:0d:43:ed:44 [ether] on enp0s25<==亚马逊设备?(192.168.0.20)在02:0F:B5:0D:17:27 [以太] ON ENP0S25< = =没有供应商?(192.168.0.2) at 20:ea:16:01:55:eb [ether] on enp0s25< = = Windows 10?(192.168.0.24) at e8:4e:06:8a:ad:b7 [ether] on enp0s25<== Wifi加密狗??MyPlane(192.168.0.15),达38:30:29:29:F8:A4 [Ether] eNP0S25< = =我的电话Firefly (192.168.0.28) at 7c:67:a2:cf:9f:ef [ether] on enp0s25<== Ubuntu.?(192.168.0.10) at 3c:28:6d:d5:9c:89 [ether] on enp0s25<== Google设备_gateway (192.168.0.1) at f8:8e:85:35:7f:b9 [ether] on enp0s25< = =路由器?(192.168.0.23)在74:D8:3E:15:B1:25 [以太] ONP0S25<==英特尔?(192.168.0.14) at 9c:3d:cf:e7:f3:71 [ether] on enp0s25< = =美国网件公司?(192.168.0.5) at 02:0f:b5:5b:d9:66 [ether] on enp0s25<== Range扩展器
右边的信息(以下< = =标记)表示我在设备上的注释。我的Alexa可能是亚马逊的一个设备,但我问她的时候,她不能告诉我她的IP或Mac地址,所以我还没确定。我的主路由器和范围扩展器都很清楚。
上面两位主持人的名字是我刚加的设置文件。我可能会添加别人,但只有ips是静态的。
总结
只需几个命令,您可以获得当地网络和连接到它的所有系统和设备的相当不错且令人惊讶的地图。