ARP的介绍

来源:互联网 发布:uplay邮箱域名 编辑:程序博客网 时间:2024/05/18 17:04
ARP(Address Resolution Protocol)是地址解析协议,ARP是一种将IP地址转化成物理地址的协议。从IP地址到物理地址的映射有两种方式:表格方式和非表格方式。ARP具体说来就是将网络层(IP层,也就是相当于OSI的第三层)地址解析为数据连接层(MAC层,也就是相当于OSI的第二层)的MAC地址。ARP协议是通过IP地址来获得MAC地址的。 
ARP原理:某机器A要向主机B发送报文,会查询本地的ARP缓存表,找到B的IP地址对应的MAC地址后就会进行数据传输。如果未找到,则广播A一个ARP请求报文(携带主机A的IP地址Ia——物理地址Pa),请求IP地址为Ib的主机B回答物理地址Pb。网上所有主机包括B都收到ARP请求,但只有主机B识别自己的IP地址,于是向A主机发回一个ARP响应报文。其中就包含有B的MAC地址,A接收到B的应答后,就会更新本地的ARP缓存。接着使用这个MAC地址发送数据(由网卡附加MAC地址)。因此,本地高速缓存的这个ARP表是本地网络流通的基础,而且这个缓存是动态的。ARP表:为了回忆通信的速度,最近常用的MAC地址与IP的转换不用依*交换机来进行,而是在本机上建立一个用来记录常用主机IP-MAC映射表,即ARP表。 
所使用的到以太网的 IP 或令牌环物理地址翻译表。ARP该命令只有在安装了 TCP/IP 协议之后才可用。 

arp -a [inet_addr] [-N [if_addr]] 
arp -d inet_addr [if_addr] 
arp -s inet_addr ether_addr [if_addr] 
参数 
-a 通过询问 TCP/IP 显示当前 ARP 项。如果指定了 inet_addr,则只显示指定计算机的 IP 和物理地址。 
-g 与 -a 相同。 
inet_addr 以加点的十进制标记指定 IP 地址。 
-N 显示由 if_addr 指定的网络界面 ARP 项。 
if_addr 指定需要修改其地址转换表接口的 IP 地址(如果有的话)。如果不存在,将使用第一个可适用的接口。 
-d 删除由 inet_addr 指定的项。 
-s 在 ARP 缓存中添加项,将 IP 地址 inet_addr 和物理地址 ether_addr 关联。物理地址由以连字符分隔的 6 个十六进制字节给定。使用带点的十进制标记指定 IP 地址。项是永久性的,即在超时到期后项自动从缓存删除。 
ether_addr 指定物理地址。

使用 ipconfig /all 查看配置 
使用 ipconfig /renew 刷新配置 
使用 ipconfig 管理 DNS 和 DHCP 类别 ID 
使用 Ping 测试连接 
使用 Arp 解决硬件地址问题 
使用 nbtstat 解决 NetBIOS 名称问题 
使用 netstat 显示连接统计 
使用 tracert 跟踪网络连接 
使用 pathping 测试路由器 
使用 ipconfig /all 查看配置 
发现和解决 TCP/IP 网络问题时,先检查出现问题的计算机上的 TCP/IP 配置。可以 
使用 ipconfig 命令获得主机配置信息,包括 IP 地址、子网掩码和默认网关。 


arp命令详解

           1.具体功能 
       该命令用于显示和修改“地址解析协议(ARP)”缓存中的项目。ARP缓存中包含一个或多个表,它们用于存储IP地址及其经过解析的以太网或令牌环物理地址。计算机上安装的每一个以太网或令牌环网络适配器都有自己单独的表。如果在没有参数的情况下使用,则ARP命令将显示帮助信息。
           2.语法详解 
       arp [-a [inetaddr] [-n ifaceaddr] [-g [inetaddr] [-n ifaceaddr] [-d 
       inetaddr [ifaceaddr] [-s inetaddr etheraddr [ifaceaddr] 
           3.参数说明 
       -a [inetaddr] [-n ifaceaddr] 
       显示所有接口的当前ARP缓存表。要显示指定IP地址的ARP缓存项,请使用带有inetaddr参数的“arp 
       -a”,此处的inetaddr代表指定的IP地址。要显示指定接口的ARP缓存表,请使用“-n 
       ifaceaddr”参数,此处的ifaceaddr代表分配给指定接口的IP地址。-N参数区分大小写。 
       -g [inetaddr] [-n ifaceaddr] 与-a相同。 
       -d inetaddr [ifaceaddr] 
       删除指定的IP地址项,此处的inetaddr代表IP地址。对于指定的接口,要删除表中的某项,请使用ifaceaddr参数,此处的ifaceaddr代表分配给该接口的IP地址。要删除所有项,请使用星号(*)通配符代替inetaddr。 

       -s inetaddr etheraddr [ifaceaddr] 
       向ARP缓存添加可将IP地址inetaddr解析成物理地址etheraddr的静态项。要向指定接口的表添加静态ARP缓存项,请使用ifaceaddr参数,此处的ifaceaddr代表分配给该接口的IP地址。加-s IP地址可以进MAC帮定。 

       注意:inetaddr和ifaceaddr的IP地址用带圆点的十进制记数法表示。物理地址Etheraddr由六个字节组成,这些字节用十六进制记数法表示并且用连字符隔开(比如,00-AA-00-4F-2A-9C)。 

       只有当TCP/IP协议在网络连接中安装为网络适配器属性的组件时,该命令才可用。 
           4.例举说明 
       例子1:要显示所有接口的ARP缓存表,执行以下命令: 
       arp -a 
       例子2:对于指派的IP地址为10.0.0.99的接口,要显示其ARP缓存表,执行以下命令: 
       arp -a -N 10.0.0.99 
       例子3:要添加将IP地址10.0.0.80解析成物理地址00-AA-00-4F-2A-9C的静态ARP缓存项,执行以下命令: 
       arp -s 10.0.0.80 00-AA-00-4F-2A-9C  



linux下arp绑定 

作者: Procedure  发布日期: 2007-10-14    查看数: 823   出自: http://www.linuxdiyf.com 
#arp -a > /etc/ethers 
#vi ethers 

改成形式ip mac 
#vi /etc/rc.d/rc.local 

加上一行 
arp -f 

保存 
执行arp -f 
  

linux下arp绑定局域网IP和MAC的教程2007年11月27日 09:20linux下arp绑定局域网IP和MAC的教程
管理员用户登录,打开终端输入