arp-scan 是一种网络扫描工具,使用 ARP 协议来发现并对本地网络中的 IPv4 主机进行指纹识别。它依据 GPLv3 许可在 Linux、BSD、macOS 和 Solaris 上可用。
这是 arp-scan 版本 1.10.1-git 的 README.md。
arp-scan 使用 GNU automake 和 autoconf 工具。从最新的 github 源码安装的过程如下:
git clone https://github.com/royhills/arp-scan.git 以获取最新源代码。cd arp-scan 进入源代码目录。autoreconf --install 生成配置文件(如果你没有 autoreconf,可以按下面的说明下载 tarball 压缩包代替)。./configure 为你的系统创建 makefile(参见下面的配置选项)。make 构建项目。make check 以验证一切是否按预期工作。make install 进行安装(此部分需要 root 权限或使用 sudo/doas)。你需要以下开发工具和库:
configure 的最新 tarball 代替:arp-scan-1.10.0.tar.gz)。请注意,它可能不如最新的 github 开发版本新。libpcap 运行时和 libpcap-dev 或 libpcap-devel 开发包,这种情况下你需要安装开发版本才能构建。2.6.24 起支持 capabilities 功能。要运行 Perl 脚本 arp-fingerprint 和 get-oui,你还需要 perl 解释器以及 perl 模块 LWP::UserAgent 和 Text::CSV。
你可以向 configure 传递选项来控制构建过程。运行 ./configure --help 查看选项列表。arp-scan 有一个特定于包的配置选项:
--with-libcap[=auto/yes/no] 构建时启用 libcap POSIX.1e 功能支持 [默认=auto]
使用 auto 时,如果安装了 libcap 库和头文件,configure 将启用功能支持。指定 --with-libcap 会启用支持,--without-libpcap 会禁用支持。
已知 arp-scan 可以在以下系统上构建和运行:
arp-scan 应该可以在任何 libpcap 支持的操作系统上构建。如果你的操作系统支持 libpcap,但 configure 报告错误 configure: error: Host operating system your-os-name is not supported,请打开一个 issue 请求移植到你的操作系统。
许多发行版都为 arp-scan 提供二进制包。这些包可能不如 github 上的最新源码新,也可能不如最新的发布版本新,但它们更方便,并且会由包管理器持续更新。因此,如果你不需要最新功能,使用二进制包通常是不错的选择。
如果你安装了二进制包并想了解 github 上是否有有用的新功能,请使用 arp-scan --version 检查你当前的版本,然后查看 github 上的 NEWS 和 ChangeLog 文件以了解变更详情。
安装 arp-scan 二进制包的具体方法取决于你的发行版。
如果你使用的是 BSD 操作系统,除了二进制包之外,你还可以选择从源代码 ports 集合安装。
Ports 自动化源代码的构建和安装,并像二进制包一样管理更新。它们还提供了从源码安装的灵活性。源码 port 可能不如最新的 github 版本新,但有时可能比相应的二进制包更新。
安装 arp-scan 源码 port 的具体方法取决于你的发行版。
关于用法信息,请使用:
arp-scan --help
有关详细信息,请参阅手册页:arp-scan(1)、arp-fingerprint(1)、get-oui(1) 和 mac-vendor(5)。
请参阅 arp-scan 维基:https://github.com/royhills/arp-scan/wiki
如果你有兴趣为 arp-scan 做贡献,请参阅 CONTRIBUTING.md。如果你认为自己发现了安全漏洞,请参阅 SECURITY.md。
libcap POSIX.1e 功能支持来构建。在运行 configure 之前,你可能需要安装 libcap 开发头文件以及 libpcap 开发头文件。Makefile.am 包含一个 install-exec-hook,它会尽可能以 CAP_NET_RAW capabilities 安装 arp-scan,如果失败,则会以 suid root 方式安装。