作为网络管理员,您可能已经非常熟悉ARP协议。

ARP通常由第二层设备使用,以便轻松发现并相互通信。

当您使用小型办公室网络时,您可能会尝试ping主机以验证它们是否可用。

如果使用的是ICMP协议,则可能会知道您实际上是在执行ARP请求,以便探测网络上的设备。

如果您正在寻找创建ARP ping的更直接的方法,则可能对arping命令感兴趣

在本教程中,我们将专注于arping命令:如何安装它以及如何有效使用它。

先决条件

为了在系统上安装arping命令,您显然需要在服务器上具有sudo特权。

为了检查您是否为sudo,您只需执行以下命令

$ groups

user sudo

如果不是这种情况,您可以阅读我们的指南,以获取Debian或CentOS主机的 sudo特权。

Linux上安装Arping

为了在您的服务器上安装arping命令,请执行“ apt-get install ”命令并指定“ arping”软件包。

$ sudo apt-get install arping

现在已经安装了命令,您可以执行“ arping”命令以检查当前使用的版本。

$ arping -v

ARPing 2.19, by Thomas Habets <thomas@habets.se>

大!

现在,arping命令已安装在您的服务器上。

默认情况下,arping命令将每秒发送一次ARP(或ICMP)请求,但是显然可以对其进行配置。

使用Arping查找主机

首先,与通过以太网通信的任何设备一样,您的设备具有用于通过网络进行通信的内部ARP表。

为了查看您当前的ARP条目,您可以简单地对所有设备执行带有“ -a”选项的“ arp”命令。

$ arp -a

使用ARP命令时,将显示一个主机名列表,后跟IP和MAC地址。

在这种情况下,我的ARP表中只有一个条目:通过192.168.178.1 IP地址可访问的路由器。

但是,我可能会对在本地网络上找到其他主机感兴趣:要实现这一点,您将使用arping命令。

使用IP地址对主机执行ping操作

为了通过网络ping主机,您可以简单地使用“ arping”命令并​​指定要pingIP地址。

此外,您可以使用“计数”的“ -c”选项指定要发送的ping数。

$ arping -c 2 <ip_address>

注意:如果您不确定在Linux上查找IP地址的方式,我们将提供有关此主题的完整指南。

例如,使用本地网络上的“ 192.168.178.27” IP地址,您将执行以下命令

如您所见,如果您收到响应ping,则会为您提供相应设备的MAC地址。

请注意,使用arping命令不会自动更新您的ARP表:您必须使用诸如ping之类的命令来更新它。

$ arp -a

太棒了,您成功使用了arping命令,以便通过网络发出ARP请求!

使用ArpingARP超时

如果arping命令无法解析所定义目标的IP地址,您将获得ARP超时。

例如,在未知主机上执行ARP请求将为您提供以下输出

$ arping -c 5 <ip_address>

如您所见,在某些情况下,如果您未指定任何网络接口,则会收到警告。

这是很正常的,因为arping命令期望指定网络接口

如果要使用路由器,或者选择将Linux服务器安装为路由器,则可以安装两个网络接口卡以路由到两个不同的网络。

如果是这种情况,arping需要知道它需要使用的网络接口才能发送ARP ping。

如您所见,arping命令将尝试“ 猜测 ”未提供的网络接口。

指定网络接口

如果服务器上有多个网络接口,则仲裁将无法“猜测”要使用的网络接口卡。

结果,您可能会收到一条错误消息,指出arping无法猜出正确的消息。

为了指定要使用的网络接口,您将必须使用“ -I”选项,后跟网络接口的名称。

如果需要有关枚举网络接口的帮助,可以使用本指南在Linux上查找IP地址。

$ arping -I <interface_name> <ip_address>

如果我们的接口名为“ enp0s3”,则该命令将为以下命令:

$ arping -I enp0s3 192.168.178.22

太棒了,您对您的远程服务器执行了ping操作,并指定了要使用的网络接口!

从源MAC发送ARP ping

在某些情况下,您可能希望指定发送数据包的源MAC地址。

为了实现这一点,您需要对“源”执行带有“ -s”选项的“ arping”命令,后跟要ping的MAC地址。

$ arping -c 2 -s 00:60:70:12:34:56 <ip地址>

在这种情况下,您有两种可能:

  • 您是MAC地址的所有者,您只需使用“ -s”选项即可。
  • 您不是MAC地址的所有者,并且您正在尝试欺骗MAC地址。在这种情况下,您需要使用混杂模式。简短提醒一下,混杂模式设置为传输NIC接收到的所有帧,而不是原来打算接收的帧。

为了使用“ arping ”命令启用混杂模式,您需要使用“ -p”选项。

使用我们之前使用的选项,这将导致我们执行以下命令。

$ arping -c 2 -s 00:60:70:12:34:56 -p <ip_address>

结论

在本教程中,您学习了如何轻松使用Arping命令来ping本地网络上的IP地址。

使用arping,您可以使用匹配的MAC地址填充本地ARP缓存。

您还了解到,您可以使用混杂模式来“欺骗”您的MAC地址。

Linux上的arping命令介绍相关推荐

  1. php 运行外部程序_PHP在linux上执行外部命令的方法

    目录: 一.PHP中调用外部命令介绍 二.关于安全问题 三.关于超时问题 四.关于PHP运行linux环境中命令出现的问题 一.PHP中调用外部命令介绍 在PHP中调用外部命令,可以用,1>调用 ...

  2. linux命令中xargs,在Linux上使用xargs命令的详细教程

    大家好,我是良许. 在使用 Linux 时,你是否遇到过需要将一些命令串在一起,但是其中一个命令不接受管道输入的情况呢?在这种情况下,我们就可以使用 xargs 命令. xargs 可以将一个命令的输 ...

  3. linux压缩命令bzip2,Linux上常用压缩命令gzip,bzip2,zip/unzip

    Linux上常用压缩命令gzip,bzip2,zip/unzip 1. gzip gzip生成的压缩文件为*.gz 格式: gzip [-cdtv#] file 主要参数: -c :将压缩的数据输出到 ...

  4. Linux上的free命令详解

    Linux上的free命令详解 转自: http://www.cnblogs.com/coldplayerest/archive/2010/02/20/1669949.html 解释一下Linux上f ...

  5. Apache RocketMQ在linux上的常用命令

    Apache RocketMQ在linux上的常用命令 进入maven安装后的rocketmq的bin目录  1.启动Name Server  2.启动Broker 3.关闭Name Server 4 ...

  6. 安卓开发 登录用户信息缓存_在Linux上使用finger命令查询登录用户信息

    请关注本头条号,每天坚持更新原创干货技术文章. 如需学习视频,请在微信搜索公众号"智传网优"直接开始自助视频学习 1. 前言 本文主要讲解finger命令的作用和日常使用案例. f ...

  7. linux+tar怎样解压,如何在Linux上使用tar命令解压和压缩文件

    linux上的tar命令通常用来创建名为.tar.gz或.tgz的归档文件,也被称为"压缩包".该命令有大量的选择,但你只需要记住几个字母来快速创建tar归档. tar命令可以提取 ...

  8. Linux 上配置网络设备命令举例

    Linux 上配置网络设备命令举例 PS:本来内容来自http://www.ibm.com/developerworks/cn/linux/1310_xiawc_networkdevice/ 以 Re ...

  9. linux上 用unzip命令解压带密码保护的 zip 文件报错 unsupported compression method 99

    1.问题: Linux上用 unzip 命令解压带密码保护的 zip 文件报错 unsupported compression method 99 2.解决办法: mac自带的解压工具,无法解密加密的 ...

  10. Linux上通过dd命令低格硬盘

    Linux上通过dd命令低格硬盘 背景 格式化脚本以及查询进度的方法 背景 手里有几台租借的服务器需要归还,为了保护数据不被泄露,需要对服务器数据盘(除系统盘外其他所有硬盘)进行低级格式化. 格式化脚 ...

最新文章

  1. 【大作业】城市地铁线路最短路规划及路径输出(满分)
  2. 人才招聘丨 清华大学精准医学研究院招聘启事
  3. 多个Spring Boot项目部署在一个Tomcat容器无法启动
  4. android 8.0 调系统拍照_Android通知栏微技巧,8.0系统中通知栏的适配
  5. mysql replace first_Java replaceFirst()方法
  6. Python正则表达式指南上半部
  7. mysql权限日志_mysql权限管理、日志管理及常用工具
  8. led灯bin值_这款指甲刀自带3倍镜和LED灯,颠覆剪指甲体验,100元也值
  9. SpringMVC 拦截器实现
  10. Linux 命令(58)—— readelf 命令
  11. hive sql列转行
  12. 《Using OpenRefine》翻译~14
  13. STC单片机实现printf
  14. python的30个编程技巧
  15. H3C和锐捷如何查看光衰
  16. 专家修炼-学习的方法
  17. c语言资料大全收集,C语言库函数大全(收集资料).pdf
  18. 89c52单片机控制两个步进电机正反转加减速(程序+仿真)
  19. Ajax 什么是Ajax? Ajax的基本语法
  20. Au Robotics软件类笔试题

热门文章

  1. 2021年高教杯数学建模国赛B题思路详解
  2. 《App后台开发运维和架构实践》推荐序
  3. App后台开发(学习笔记)
  4. Openstack Linux镜像模板创建
  5. kpw4换壁纸_发挥全部潜能,Kindle越狱指南
  6. 矩形微带天线贴片尺寸计算
  7. 《前端框架开发技术》HTML+CSS+JavaScript 制作个人简历模板
  8. 设备无法连接到你的计算机,此硬件设备未连接到计算机(代码45) | MOS86
  9. ae教程 (四)运动控制 (三)
  10. 个人博客系统需求文档