我在局域网中,有3个Ubuntu,2个Kubuntu,2个Windows XP和2个Windows7。可使用哪些命令或工具查看连接到LAN的PC,其中显示PC的名称和IP。类似于“愤怒的IP”之类的工具,可以显示LAN中的所有PC。
请注意,我不知道连接到LAN的计算机的IP或名称。因此,该工具或命令应寻找它们。
我在局域网中,有3个Ubuntu,2个Kubuntu,2个Windows XP和2个Windows7。可使用哪些命令或工具查看连接到LAN的PC,其中显示PC的名称和IP。类似于“愤怒的IP”之类的工具,可以显示LAN中的所有PC。
请注意,我不知道连接到LAN的计算机的IP或名称。因此,该工具或命令应寻找它们。
Answers:
摘自从Linux / Windows Workstation查找LAN上的所有主机
for ip in $(seq 1 254); do ping -c 1 192.168.1.$ip>/dev/null;
[ $? -eq 0 ] && echo "192.168.1.$ip UP" || : ;
done
但是对于一个很棒的工具,Nmap。非常适合地图网络。
Arp扫描对我也很有效...
如果使用Wi-Fi:
sudo arp-scan -l --interface=wlan0
-或如果使用以太网:
sudo arp-scan -l --interface=eth0
(这最后一个实际上与Rajesh Rajendran发布的内容相同; -l代表--localnet)
如果您没有arp-scan(Ubuntu默认不附带),只需拉起一个终端并输入:
sudo apt-get install arp-scan
我总是使用nmap。要扫描网络中的所有设备,请使用:
nmap -sP 192.168.0.1/24
此处更多信息:http : //www.cyberciti.biz/networking/nmap-command-examples-tutorials/
这是一个了解的好工具。您可能要nmap
使用以下方法进行安装:
sudo apt-get install nmap
如果您使用的是Debian或
sudo yaourt -S nmap
如果您使用的是Arch。
yum install nmap
dnf install nmap
将安装nmap
作为一种可能的GUI选项,我见过的最好的是http://angryip.org/download/#linux中的 Angry IP
只需下载最新的DEB软件包并安装。然后从Dash运行ipscan。这是屏幕截图:
Address HWtype HWaddress Flags Mask Iface
iPhone-von-me.fritz.box ether 12:55:05:30:3c:df C wlp3s0
android-abcdefghijklmno ether 11:66:3f:71:04:d6 C wlp3s0
fritz.box ether 00:11:3f:46:37:c2 C wlp3s0
Blupiblu.fritz.box ether 71:88:cc:bb:dc:a6 C wlp3s0
ip neigh
和hosts
。无需nmap / sudo。
在此基础上,您可以构建一个Python脚本:
#!/usr/bin/env python
"""List all hosts with their IP adress of the current network."""
import os
out = os.popen('ip neigh').read().splitlines()
for i, line in enumerate(out, start=1):
ip = line.split(' ')[0]
h = os.popen('host {}'.format(ip)).read()
hostname = h.split(' ')[-1]
print("{:>3}: {} ({})".format(i, hostname.strip(), ip))
通过下载
wget https://gist.githubusercontent.com/MartinThoma/699ae445b8a08b5afd16f7d6f5e5d0f8/raw/577fc32b57a7f9e66fdc9be60e7e498bbec7951a/neighbors.py