计算机是怎么获取目标计算机MAC地址的?
这样拓扑结构,这我知道,明显不在同网段的。计算机Aping计算机B(没用ping通,原因肯定是因为不再同一网段的)但是发现了一个问题,在计算机A上用ARP/A查询后出现计...
这样拓扑结构,这我知道,明显不在同网段的。计算机Aping计算机B(没用ping通,原因肯定是因为不再同一网段的)但是发现了一个问题,在计算机A上用ARP/A查询后出现计算机B的MAC,而计算机B上用该命令后没有计算机A的MAC.(用计算机Bping计算机A之后也是样)。 如果是通过ARP请求和应答来获取的话,呢么上面拓扑的计算机A也能收到计算机B给他的应答信息。
所以想知道计算机是怎么获取目标计算机MAC地址的?希望各位高手多多指点? 展开
所以想知道计算机是怎么获取目标计算机MAC地址的?希望各位高手多多指点? 展开
1个回答
展开全部
192.168.1.2/16是指192.168.XXX.XXX这个C类网段,子网掩码是255.255.0.0,任何以192.168开头的IP地址都包含在这个子网里(相当于192.168.0.0/16)。192.168.2.2是包含在192.168.1.2/16这个网段里的,因此A机在发现B机的IP之后会将B机的ARP记录在自己的ARP Cache里。
反过来,192.168.2.2/24是指192.168.2.XXX这个D类网,它不包含192.168.1.2这个IP,因此对A机的ARP不会记录。
从拓铺结构上来看,A、B互相都能接收到对方的数据包和ARP包,唯一的不同是A认为B是在自己的子网里,所以会记录进自己的ARP Cache,而B不认为A和自己同属一个子网,所以会忽略A的信息
反过来,192.168.2.2/24是指192.168.2.XXX这个D类网,它不包含192.168.1.2这个IP,因此对A机的ARP不会记录。
从拓铺结构上来看,A、B互相都能接收到对方的数据包和ARP包,唯一的不同是A认为B是在自己的子网里,所以会记录进自己的ARP Cache,而B不认为A和自己同属一个子网,所以会忽略A的信息
追问
我说A机的ARP缓存是怎么记录下来B机的ARP,我认为B机不可能正常应答A机所发的ARP请求,因为B机在应答之前与运算后知道A机的IP不跟自己处于同一个网段。所以B机不会吧应答消息送到A机上,因而A机也就无法得到B机的ARP?
(对了上面你说的192.168.2.2/24 192.168.2.XXX这个是D类网。我认为这是一个典型的C类网络)
追答
啊,C类D类我是弄混了,应该是B类C类。
至于你说A机如何获取B的ARP,渠道不会是B的应答,而是B主动发出的数据包。我不是很清楚你的整个网络拓铺是什么样子,用的固定IP还是DHCP。有一点是明确的,就是你的B主机在和网络的其他地方通信的时候,子网内所有的设备都会收到B发出的ARP数据包。只有这个过程之后,交换机和其他网络设备才根据学习的网络连接情况按需转发。所以如果你的B也在和其他主机交流,A也会收到ARP数据包,进而获知B的Mac
快又稳
2024-10-28 广告
2024-10-28 广告
在Linux环境下配置基于域名的虚拟主机,需安装Apache或Nginx等Web服务器,并编辑配置文件。以Apache为例,需创建虚拟主机配置文件,指定域名、文档根目录等,然后启用该配置文件并重启Apache服务。同样,Nginx也需在相应...
点击进入详情页
本回答由快又稳提供
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询