感谢支持
我们一直在努力

RedHat Linux 9下ARP实验

实验环境:


VMware7.0,Red Hat Linux 9主机IP地址:192.168.0.132(一下简称Linux主机),windows xp主机IP地址:192.168.0.150(以下简称xp主机),二虚拟主机均挂在vmnet2交换机上。


抓包工具:


wireshark-win32-1.2.9,安装在xp主机上。


实验目的:


1、深刻理解arp缓存的意义和原理;


2、掌握Linux环境下arp命令。


实验操作:


1、将Linux和xp主机上的arp缓存清空,在Linux上ping xp主机,分析wireshark截获到的包,最后分别检查Linux主机和xp主机的arp缓存;


2、将xp主机的arp缓存清空,在Linux主机上执行arp -s 192.168.0.150 xp主机mac地址的命令,然后在Linux上ping xp主机,分析wireshark截获到的包,最后分别检查Linux主机和xp主机的arp缓存。


第一种情况:


包的情况:Linux主机先广播一个询问xp主机mac地址的arp请求包,xp主机收到请求包后发出一个arp应答包给Linux主机,告诉Linux主机,自己的mac地址是多少。然后就是四对ICMP(ping的请求-应答)包,如下图:

Red Hat Linux 9下ARP实验

arp缓存的情况:两台主机的arp缓存中均有对方主机IP地址与mac地址的对应关系的记录。


第二种情况:


包的情况:没有Linux主机先广播的arp请求包。只有四对ICMP(ping的请求-应答)。


Red Hat Linux 9下ARP实验

arp缓存的情况:两台主机的arp缓存中均有对方主机IP地址与mac地址的对应关系的记录。

Red Hat Linux 9下常用的arp命令:


1、显示arp缓存


#arp


或#cat /proc/net/arp


flags的对应值:


C  完整记录,在/proc/net/arp显示的值为2


M  永久性记录,在/proc/net/arp显示的值为4


P  Proxy记录,在/proc/net/arp显示的值为8


incomplete  被arp -d命令删除的记录,在/proc/net/arp显示的值为0


引申用法:


arp 主机名或IP地址  #检查arp缓存中的特定内容


arp  -i eth0            #检查指定网络接口的arp缓存


2、增加arp缓存记录


arp -s ip地址或主机名 MAC地址  #这种方式产生的记录其flags标志为CM(PERM),且不受TTL时间的限制,重启系统消失


arp -s ip地址或主机名 MAC地址 temp #这种方式产生的记录其flags标志为C,受TTL时间的限制


注意:


1、若使用主机名,则该主机名应可以利用/etc/hosts、DNS等工具进行解析;


2、ARP广播包不能穿越路由器。


3、删除arp缓存记录


arp -d 主机名或IP地址 #实质是变更flags的值为incomplete,超时后由系统自动删除


4、停用与启用arp功能


第一步:完全停用网络功能


#ifconfig eth0 down


第二步:启用网络功能时用参数-arp停用arp功能


#ifconfig eth0 -arp up


停用arp功能后,执行ifconfig eth0,显示NOARP


再次启用arp功能:


#ifconfig eth0 arp up

赞(0) 打赏
转载请注明出处:服务器评测 » RedHat Linux 9下ARP实验
分享到: 更多 (0)

听说打赏我的人,都进福布斯排行榜啦!

支付宝扫一扫打赏

微信扫一扫打赏