参考文章:

计算机上设置静态arp的方式不止一种,以下只介绍比较常用的两种方式:

  • 方式一:arp -s绑定,但是只能实现临时静态arp绑定,系统重启后失效 (绑定静态arp后,使用命令arp -a查看,对应绑定的静态arp会有PERM标识,表示静态arp,即permanent,永久的)
    注意:arp -s绑定的mac地址在windows系统上使用-分隔,而在linux系统上使用:分隔
  • 方式二:netsh绑定,可实现永久arp绑定,系统重启后也不会失效,且能指定网络接口

1. arp -s 方式 (windows 和 linux 系统均可使用)

  • 查看系统的arp

    1
    $ arp -a
  • 绑定静态arp

    1
    2
    3
    $ arp -s ip mac	# 第一个参数为点十分进制 ip 地址,第二个参数为需要绑定的 mac 地址
    $ arp -s 192.168.1.81 11-22-33-44-55-66 # Windows绑定示例
    $ arp -s 192.168.1.81 11:22:33:44:55:66 # Linux绑定示例
  • 删除静态绑定

    1
    2
    $ arp -d ip
    $ arp -d 192.168.1.81 # 示例

2. netsh 方式(仅适用于 windows 系统)

  • 查看计算机网卡对应的索引 (Idx)

    1
    2
    $ netsh i i show in 	# 简写
    $ netsh interface ipv4 show interfaces
  • 绑定静态arp(需要管理员权限)

    1
    2
    3
    4
    $ netsh -c i i add ne Idx ip mac	# 简写
    $ netsh -c interface ipv4 add neighbors Idx ip mac
    $ netsh -c i i add ne 2 192.168.1.81 11-22-33-44-55-66 # 示例,我这里以太网的 Idx 为 2
    $ netsh -c i i add ne Idx ip mac store=active # 临时绑定静态 arp
  • 删除静态绑定

    1
    2
    3
    $ netsh -c i i del ne Idx	# 简写
    $ netsh -c i i delete neighbors Idx
    $ netsh -c interface ipv4 delete neighbors # 删除所有网卡静态绑定的 arp
  • 查看网络接口上的所有静态ARP条目

    1
    $ netsh interface ipv4 show neighbors Idx

    <interface_index>替换为网络接口的索引号,以查看该网络接口上的所有静态ARP条目。

请注意,添加静态ARP条目可能会对网络性能和安全性产生影响。因此,请在进行更改之前仔细考虑,并确保只添加必要的条目