Linux系统之ARP命令的基本使用

简介: 【7月更文挑战第2天】Linux系统之ARP命令的基本使用

在这里插入图片描述

一、ARP介绍

ARP(Address Resolution Protocol,地址解析协议)是一个在网络设备之间转换IP地址和MAC地址的网络层协议。在Linux系统中,arp命令主要用于查看和修改本地系统上的ARP缓存。ARP缓存存储了最近获取的IP地址到MAC地址的映射关系,有助于加快数据包的传输速度,因为它减少了需要进行ARP请求的次数。

二、ARP命令帮助

2.1 ARP的help帮助信息

使用--help选项,可以查看到arp命令的帮助信息。

[root@jeven ~]# arp --help
Usage:
  arp [-vn]  [<HW>] [-i <if>] [-a] [<hostname>]             <-Display ARP cache
  arp [-v]          [-i <if>] -d  <host> [pub]               <-Delete ARP entry
  arp [-vnD] [<HW>] [-i <if>] -f  [<filename>]            <-Add entry from file
  arp [-v]   [<HW>] [-i <if>] -s  <host> <hwaddr> [temp]            <-Add entry
  arp [-v]   [<HW>] [-i <if>] -Ds <host> <if> [netmask <nm>] pub          <-''-

        -a                       display (all) hosts in alternative (BSD) style
        -e                       display (all) hosts in default (Linux) style
        -s, --set                set a new ARP entry
        -d, --delete             delete a specified entry
        -v, --verbose            be verbose
        -n, --numeric            don't resolve names
        -i, --device             specify network interface (e.g. eth0)
        -D, --use-device         read <hwaddr> from given device
        -A, -p, --protocol       specify protocol family
        -f, --file               read new entries from file or from /etc/ethers

  <HW>=Use '-H <hw>' to specify hardware address type. Default: ether
  List of possible hardware types (which support ARP):
    ash (Ash) ether (Ethernet) ax25 (AMPR AX.25)
    netrom (AMPR NET/ROM) rose (AMPR ROSE) arcnet (ARCnet)
    dlci (Frame Relay DLCI) fddi (Fiber Distributed Data Interface) hippi (HIPPI)
    irda (IrLAP) x25 (generic X.25) infiniband (InfiniBand)
    eui64 (Generic EUI-64)

2.2 ARP命令的帮助解释

命令选项 描述
arp [-vn] [<HW>] [-i <if>] [-a] [<hostname>] 显示ARP缓存
- -a: 显示所有主机(BSD风格)
- -e: 显示所有主机(Linux默认风格)
- -v: 详细模式
- -n: 不解析名称
- <HW>: 指定硬件地址类型,默认为ether
- -i <if>: 指定网络接口
arp [-v] [-i <if>] -d <host> [pub] 删除ARP条目
- -d: 删除指定条目
- pub: 公有条目
- -v: 详细模式
- -i <if>: 指定网络接口
arp [-vnD] [<HW>] [-i <if>] -f [<filename>] 从文件添加条目
- -f: 从文件读取新条目,或从/etc/ethers
arp [-v] [<HW>] [-i <if>] -s <host> <hwaddr> [temp] 添加条目
- -s: 设置新ARP条目
- temp: 临时条目
- <hwaddr>: 硬件地址
- -v: 详细模式
- -i <if>: 指定网络接口
arp [-v] [<HW>] [-i <if>] -Ds <host> <if> [netmask <nm>] pub 特殊设置条目
- -Ds: 特定操作
- pub: 公有条目
- netmask <nm>: 子网掩码
- -v: 详细模式
- <if>: 指定接口
其他选项
-A, -p, --protocol 指定协议家族
-D, --use-device 从给定设备读取<hwaddr>

硬件类型支持ARP列表:

  • ash (Ash)
  • ether (Ethernet)
  • ax25 (AMPR AX.25)
  • netrom (AMPR NET/ROM)
  • rose (AMPR ROSE)
  • arcnet (ARCnet)
  • dlci (Frame Relay DLCI)
  • fddi (Fiber Distributed Data Interface)
  • hippi (HIPPI)
  • irda (IrLAP)
  • x25 (generic X.25)
  • infiniband (InfiniBand)
  • eui64 (Generic EUI-64)

三、ARP命令的基本使用

3.1 查看ARP缓存

使用以下命令,显示所有ARP缓存条目。

arp -a

在这里插入图片描述

3.2 显示详细信息

显示ARP缓存中的所有条目,包括IP地址、MAC地址以及对应的接口名称等信息。

arp -v

在这里插入图片描述

3.3 添加静态arp映射

使用arp -s IP_ADDRESS MAC_ADDRESS命令。添加静态ARP映射。有时候为了网络管理的需要,你可能想手动添加一个静态的ARP条目,这样系统就不会尝试去动态解析这个IP地址对应的MAC地址了。

 arp -s 192.168.3.251  00:0c:29:54:85:18

在这里插入图片描述

3.4 删除指定主机的ARP条目

删除指定主机的ARP条目

arp -d <hostname>
arp -d 192.168.3.166

3.5 从文件读取并添加条目

arp -f filename是一个命令行指令,用于从一个文件中读取并加载ARP(Address Resolution Protocol)表项。ARP表项是一个用于将IP地址映射到物理硬件地址(MAC地址)的网络协议。在执行这个命令时,filename参数是包含了ARP表项的文件的路径。

`arp -f filename`
  • filename示例文件
    ```bash
    192.168.1.1 00:11:22:33:44:55
    192.168.1.2 66:77:88:99:AA:BB


## 3.6 清除ARP缓存
>使用`sudo arp -d <IP地址>`命令,清除某条APR缓存信息。

```bash
arp -a -d 172.17.0.3

四、注意事项

  • 在执行上述命令时,特别是添加或删除ARP条目时,通常需要管理员权限(即使用sudo)。
  • 手动添加静态ARP条目应谨慎操作,错误的配置可能会导致网络连接问题。
  • 不同的Linux发行版可能有细微的命令差异,但基本用法大体相同。

五、总结

使用arp命令可以快速查看本地系统上的ARP缓存,以便了解IP地址和MAC地址之间的映射关系,从而方便网络故障排除和优化网络连接。通过修改arp缓存,可以手动添加、删除或修改IP地址和MAC地址的映射关系,从而实现对本地网络设备的管理和控制。

相关文章
|
4月前
|
Linux 应用服务中间件 Shell
二、Linux文本处理与文件操作核心命令
熟悉了Linux的基本“行走”后,就该拿起真正的“工具”干活了。用grep这个“放大镜”在文件里搜索内容,用find这个“探测器”在系统中寻找文件,再用tar把东西打包带走。最关键的是要学会使用管道符|,它像一条流水线,能把这些命令串联起来,让简单工具组合出强大的功能,比如 ps -ef | grep 'nginx' 就能快速找出nginx进程。
492 1
二、Linux文本处理与文件操作核心命令
|
4月前
|
Ubuntu Linux Anolis
Linux系统禁用swap
本文介绍了在新版本Linux系统(如Ubuntu 20.04+、CentOS Stream、openEuler等)中禁用swap的两种方法。传统通过注释/etc/fstab中swap行的方式已失效,现需使用systemd管理swap.target服务或在/etc/fstab中添加noauto参数实现禁用。方法1通过屏蔽swap.target适用于新版系统,方法2通过修改fstab挂载选项更通用,兼容所有系统。
325 3
Linux系统禁用swap
|
4月前
|
Linux
Linux系统修改网卡名为eth0、eth1
在Linux系统中,可通过修改GRUB配置和创建Udev规则或使用systemd链接文件,将网卡名改为`eth0`、`eth1`等传统命名方式,适用于多种发行版并支持多网卡配置。
577 3
|
4月前
|
Linux
linux命令—stat
`stat` 是 Linux 系统中用于查看文件或文件系统详细状态信息的命令。相比 `ls -l`,它提供更全面的信息,包括文件大小、权限、所有者、时间戳(最后访问、修改、状态变更时间)、inode 号、设备信息等。其常用选项包括 `-f` 查看文件系统状态、`-t` 以简洁格式输出、`-L` 跟踪符号链接,以及 `-c` 或 `--format` 自定义输出格式。通过这些选项,用户可以灵活获取所需信息,适用于系统调试、权限检查、磁盘管理等场景。
336 137
|
4月前
|
安全 Ubuntu Unix
一、初识 Linux 与基本命令
玩转Linux命令行,就像探索一座新城市。首先要熟悉它的“地图”,也就是/根目录下/etc(放配置)、/home(住家)这些核心区域。然后掌握几个“生存口令”:用ls看周围,cd去别处,mkdir建新房,cp/mv搬东西,再用cat或tail看文件内容。最后,别忘了随时按Tab键,它能帮你自动补全命令和路径,是提高效率的第一神器。
780 57
|
3月前
|
存储 安全 Linux
Linux卡在emergency mode怎么办?xfs_repair 命令轻松解决
Linux虚拟机遇紧急模式?别慌!多因磁盘挂载失败。本文教你通过日志定位问题,用`xfs_repair`等工具修复文件系统,三步快速恢复。掌握查日志、修磁盘、验重启,轻松应对紧急模式,保障系统稳定运行。
596 2
|
4月前
|
缓存 监控 Linux
Linux内存问题排查命令详解
Linux服务器卡顿?可能是内存问题。掌握free、vmstat、sar三大命令,快速排查内存使用情况。free查看实时内存,vmstat诊断系统整体性能瓶颈,sar实现长期监控,三者结合,高效定位并解决内存问题。
365 0
Linux内存问题排查命令详解
|
4月前
|
Unix Linux 程序员
Linux文本搜索工具grep命令使用指南
以上就是对Linux环境下强大工具 `grep` 的基础到进阶功能介绍。它不仅能够执行简单文字查询任务还能够处理复杂文字处理任务,并且支持强大而灵活地正则表达规范来增加查询精度与效率。无论您是程序员、数据分析师还是系统管理员,在日常工作中熟练运用该命令都将极大提升您处理和分析数据效率。
340 16
Linux部署04-ls命令的参数和选项,主体,参数,选项,ls / 查看根目录下的文件夹,-a的意思是列出全部选项 ls -a home全部文件,.代表着隐藏的文件夹,-l 选项,以列表竖向的形式展
Linux部署04-ls命令的参数和选项,主体,参数,选项,ls / 查看根目录下的文件夹,-a的意思是列出全部选项 ls -a home全部文件,.代表着隐藏的文件夹,-l 选项,以列表竖向的形式展
Linux部署 cd-pwd命令,cd 不写参数 就直接回到用户的HOME目录,pwd 查看当前的工作目录,pwd是常看当前目录的路径,无参数
Linux部署 cd-pwd命令,cd 不写参数 就直接回到用户的HOME目录,pwd 查看当前的工作目录,pwd是常看当前目录的路径,无参数