如何扫描本地网络以查找连接的设备?(苹果系统)

mac*_*cek 137 networking mac printer network-shares macos

基本上,我寻找的东西像这样,但可以在Mac上。

我正在尝试将一个新工作站连接到我们的无线多功能打印机,但我花了很长时间让设备吐出一个 IP 供我连接。

有没有办法以某种方式扫描网络?

如果有所不同,则新工作站使用的是 Mac OS X 10.6。

Has*_*hop 217

  1. Ping 广播地址
    (你可以用 找到它ifconfig | grep broadcast

  2. 然后做一个 arp -a

  • 最佳答案。你也可以用一行来完成:ifconfig | grep广播| arp -a (24认同)
  • 有人可以解释为什么/这是如何工作的吗?您 ping 广播,这会导致所有其他连接的客户端提交网络活动,然后对 arp 可见? (14认同)
  • oneliner: `ping $(ifconfig | grep Broadcast | awk '{print $NF}') -t 1 > /dev/null && arp -a` (要在 Linux 机器上执行此操作,您需要添加 `- b` 到 ping) (3认同)
  • 很棒的提示.. 我过滤掉了结果,只显示不完整(并且存在)的 ip 与 .. `arp ​​-a | 格雷普:` (2认同)
  • @deweydb 当您在 LAN 上时,连接到 IP 涉及将 IP 解析为 mac 地址。ARP 保存所有已解析 IP 地址的缓存。执行广播 ping 会间接触发网络上所有 IP 的解析。现在……我们如何将 IP 列表解析为 DNS(或其他)名称? (2认同)
  • 我使用:`arp ​​-a | grep -v '^?' ` 在 Macosx 下。 (2认同)
  • 做什么`?(192.168.1.15) at <incomplete> on eth0` 是什么意思?我的局域网上的那个地址没有任何东西(而且据我所知从来没有)任何东西 (2认同)

小智 8

其中 xxx 是您的 IP 地址中的前三个数字。

for ip in $(seq 1 254); do ping -c 1 x.x.x.$ip -o ConnectTimeout=5; [ $? -eq 0 ] && echo "x.x.x.$ip UP" || : ; done
Run Code Online (Sandbox Code Playgroud)

  • 在此处的 Mac 上,由于使用 ``-t`` 选项设置超时,因此必须稍微调整您的答案(例如 ``-t 5`` 表示 5 秒超时) (3认同)

Che*_*ion 5

您的打印机提供了一个文件共享,用于将文件放入其中,或者您只是想在您的网络上找到打印机?

您的新多功能打印机是否支持 Bonjour/ZeroConf?(大多数基于网络的新打印机都可以)如果是这样,您可以使用Bonjour Browser 之类的程序查看网络上的可用内容。

在您的路由器上,它是否出现在 DHCP 客户端表上(您可能需要查阅您的手册以了解如何查看此表) - 因为这也会为您提供 IP,但也会让您确定您的打印机已实际连接到您的网络。

从 Mac 本身,您可以使用命令行中的Nmap等程序或使用基于 GUI 的应用程序(例如Zenmap - NmapAngryIPScanner 的GUI)来扫描您的网络,然后查看哪些端口可用。


小智 5

NMAP[nmap] 是您扫描各种网络设备的最佳朋友。如果您需要 GUI,请使用Zenmap[zenmap]。

假设您的本地网络是192.168.0.0/24(其中24表示网络掩码255.255.255.0),这将为您提供在线主机及其 IP 和 MAC 地址:

nmap -sP 192.168.0.0/24

您可以从项目网站下载该软件包或使用 MacPorts [macports] 从源代码中自行构建。享受!:-)

[nmap] https://nmap.org/

[zenmap] https://nmap.org/zenmap/

[macports] https://www.macports.org/