Linux网络命令:arp、arping

文摘   2024-12-10 09:25   广东  

Linux系统中有许多用于网络管理的命令,以下是一些常用的网络命令:

  1. ifconfig
    :配置或显示系统网络接口参数(已被ip命令取代)。
  2. ip
    :显示和操作路由、网络设备、接口等。
  3. ping
    :发送ICMP ECHO_REQUEST包到网络主机。
  4. traceroute
    :显示数据包到达目标主机所经过的路由。
  5. netstat
    :显示网络连接、路由表、接口统计等信息。
  6. ssh
    :用于远程登录。
  7. scp
    :用于远程文件复制。
  8. wget
    :用于从网络下载文件。
  9. telnet
    :用于远程登录,但安全性较低。
  10. arp
    :显示和修改ARP表。
  11. arping
    :发送ARP请求来确定网络接口的状态。
  12. route
    :显示和修改路由表(已被ip route取代)。
  13. nslookup
    :查询DNS以查找域名与IP地址的映射。
  14. dig
    :用于查询DNS信息。
  15. host
    :用于查询DNS以查找域名与IP地址的映射。
  16. nmap
    :网络扫描工具,用于发现网络上的设备。
  17. ss
    :显示套接字统计信息(netstat的替代品)。


接下来,我们详细展开arparpping这两个命令。


arp 命令

使用场景:

  • 查看ARP表,了解IP地址和MAC地址的映射关系。
  • 手动添加或删除ARP表项。

使用方法:

  • 查看ARP表:


    arp -a
  • 添加静态ARP映射:


    arp -s <IP地址> <MAC地址>
  • 删除ARP表项:


    arp -d <IP地址>

示例:

  1. 查看ARP表,确认某个IP地址对应的MAC地址:


    arp -a
  2. 如果发现ARP表中某个IP地址的MAC地址不正确,可以手动添加正确的映射:


    arp -s  192.168.1.100  00:11:22:33:44:55


arpping 命令

使用场景:

  • 检查网络上的设备是否可达。
  • 确定网络接口的状态。

使用方法:

  • 检查特定IP地址的设备是否可达:


    arping <IP地址>
  • 当同一个ip返回是同一个mac地址时,没有冲突;如果同时返回多个mac地址时,表示地址冲突。

  • 检查特定网络接口上的所有IP地址:


    arping -I <接口名称>


示例:

以下是arping 命令的一些基本用法,包括如何指定目标IP地址:


  1. 测试特定IP地址的连通性


    arping 192.168.1.100


    这个命令会向IP地址为192.168.1.100的设备发送ARP请求,并显示响应结果。

  2. 指定网络接口


    arping -I eth0 192.168.1.100

    这个命令指定了使用eth0 网络接口向IP地址为192.168.1.100的设备发送ARP请求。其他示例:

    --

  3. 发送指定数量的ARP请求


    arping -c 3 192.168.1.100


    这个命令会发送3个ARP请求到IP地址为192.168.1.100的设备。

  4. 设置超时时间


    arping -w 2192.168.1.100


    这个命令设置了等待响应的超时时间为2秒。

  5. 重复地址检测模式


    arping -D 192.168.1.100


    这个命令会检测网络上是否有其他设备使用了IP地址192.168.1.100。

  6. 更新邻居的ARP缓存


    arping -U 192.168.1.100


    这个命令会发送ARP请求以更新邻居设备的ARP缓存。



排查网络问题的示例

  1. 网络不通问题排查:

  • 首先使用ping命令检查目标主机是否可达:


    ping 192.168.1.100
  • 如果ping不通,使用arp命令查看ARP表,确认IP地址和MAC地址的映射是否正确:


    arp -a|grep 192.168.1.100
  • 如果ARP表中没有映射或映射不正确,可以尝试使用arping命令检查网络接口的状态:
    arping -I eth0
  • 网络延迟问题排查:

    • 使用traceroute命令追踪数据包路径,查看延迟发生在哪个网络节点:
      traceroute www.example.com
  • 网络连接问题排查:

    • 使用netstatss命令查看当前网络连接状态:


      netstat -an


      ss -an
    • 如果发现异常连接,可以使用kill命令终止进程:


      kill-9 <进程ID>

    这些命令和示例可以帮助你排查和解决一些基本的网络问题。


    在实际操作中,可能需要根据具体情况调整命令和参数。


    ------------------------------
    前文参考
    MTU入门:了解网络通信的基石
    本文中有 关于 ping 命令的详细使用介绍,欢迎阅读
    你可能需要熟练掌握的Linux命令:ss
    lsof 命令和 netstat 命令的区别
    Linux网络命令篇:traceroute命令详解
    ----
    其他推荐
    利用ARP和ICMP协议解释ping命令 - DPDK原理的文章 - 知乎

    https://zhuanlan.zhihu.com/p/550007507

    网络工具arpping和ping的使用详解


    https://ruocheng.blog.csdn.net/article/details/132896812?fromshare=blogdetail&sharetype=blogdetail&sharerId=132896812&sharerefer=PC&sharesource=&sharefrom=from_link

    ----------------------
    -- END--

    小叶来滴茶
    杰哥写字的地方:个人工作、生活的总结思考、顿悟的记录。
     最新文章