| 关键词: 地址 交换机 pc1 电脑 数据 网段 一个 255.255 广播 现在 |
我在思考的问题是两台电脑通过一个傻瓜的将换机连接,一台电脑我们命名为pc1,另一台我们命名为pc2。现在给pc1只配置ip地址和掩码为1.1.1.1/24 而给pc2配置2.2.2.2/24 那么他们之间能不能互相ping呢? 好的,那么现在我把我的实验分析一一到来。答案自然就分晓了。 第一步:正确配置好两台电脑的ip地址,然后都接在交换机上。 我们先来理论分析一下两台电脑之间ping的过程。一开始,接通电源后,pc1想ping通pc2,那么就封装一个ip数据包,源地址是自己1.1.1.1 目的地址是2.2.2.2 然后交给下一层数据链路层,在这一层为了和对方通信,必须知道对方的物理地址也就是网卡地址,也就是mac地址。自己的mac地址是知道了,对方的不知道,那么现在怎么办呢? 是的现在就要用到了arp(地址解析协议),pc1放送一个arp广播。对了,对于我这个广播的地址我也找了很多资料,来确定发的是1.1.1.0自己的网段广播还是255.255.255.255,后来证实是255.255.255.255。那么pc1就发送这样一个包含自己源地址和255.255.255.255广播地址的数据包给交换机。因为刚开机,没有通信,交换机的arp缓存表也空着的,他也不知道pc2的mac地址是多少。所以他就向连接自己的所有接口转发pc1的ip数据包。问所有的电脑,ip地址是2.2.2.2的人的mac地址是多少啊???(同时交换机将pc1的ip地址和mac地址还有对应的端口号记录到自己的arp缓存里去,下次别人找pc1,就知道在地址了)。 当pc2接受到这个数据包,他发现是发给自己的。那么他将用单播单独给pc1发送一个回复,说我的mac地址是多少。而别的的电脑接受到pc1的广播数据包就丢弃了。 当pc2的回复数据包到达交换机时,交换机立马记录pc2的ip地址和物理地址还有对应的端口号。然后只转发给pc1,现在他们两台电脑就可以通信了。 理论上是pc1和pc2不在一个网段也可以通信。但是经过我的多少实验,是同不了的。是为什么呢? 事实情况是,已知IP,ARP找MAC,当发现目的IP和源IP不在一网段,它就放弃寻找了。所以,更本就不会进行arp 广播。你们看交换机没有学到pc1的mac地址,没有数据包到达交换机。所以交换机的arp缓存表是空的,pc1也是空的。 这就是最终的解释了。 Ok,记得顶下我哦,,,我会继续分享的。 注意一点:window系统自带的防火墙具有阻止他人ping自己的能力。所以进行实践检验的时候一定要关闭所有防火墙。不然在一个网段也ping不通,或者你ping不了别人。 其实现在两台电脑通过双绞线也可以互相连接访问了,但是线必须是反转线。即两头分别是B标准和A标准。 标准568B:橙白--1,橙--2,绿白--3,蓝--4,蓝白--5,绿--6,棕白--7,棕--8 标准568A:绿白--1,绿--2,橙白--3,蓝--4,蓝白--5,橙--6,棕白--7,棕--8 下面附件就是具体实验的截图。 电脑上查看arp的指令是:arp -a; 思科交换机查arp的指令是:show mac-address-table |
|
声明:文章版权归原作者所有 部分文章转自互联网 如有侵权请联系
[邮箱地址] 删除
|