分享

在内网中,为什么不设置“默认网关”计算机也能互相通讯?

 昵称27915469 2019-09-25
在内网中不设置“默认网关”的计算机也能互相通讯,是因为在同一内网(同一VLAN同一子网)中两台计算机机之间是不需要通过默认网关来通信的,是通过交换机(或路由器)上的列表来匹配进行数据传输的。

下面讲一下这样子的通信原理:

一、PC_A向PC_C发送数据时,首先需要知道MAC地址,所以PC_A会使用ARP协议进行广播来查找PC_C的MAC地址。

ARP协议的作用是根据IP地址获取到MAC地址的一个协议。

PC_A查找192.168.0.3主机的MAC地址

  • 1、PC_A向交换机(路由器)广播查找MAC地址

  • 2、交换机(路由器)收到了广播请求后,向除了端口1外的所有端口发送广播报文

  • 3、PC_B接收到了广播报文后,查找的IP地址不是自己,丢弃报文不做回应。

  • 4、PC_C接收到报文后,IP地址和自己对应,回复PC_A自己的MAC地址,同时记录下PC_A的IP和MAC地址生成表。

  • 5、PC_A收到回复后,记录下PC_C的MAC地址生成对应表。

在Windows系统中查看MAC和IPC对应表使用arp -a命令即可查看
下面的接口接的是网卡地址,因为我的电脑有多块网卡。

二、交换机(路由器)生成MAC地址和端口对应表

PC_A利用MAC地址向PC_C发送数据时,交换机(路由器)如何准确的把数据发送到对应的端口中传输。

因为交换机(路由器)也会生成一张MAC地址和端口的关系对应表。

  • 1、PC_A向PC_C发送数据,数据包含自己的MAC地址(源MAC地址)和目的PC_C的MAC地址。

  • 2、交换机(路由器)收到了数据包后,提取源MAC地址然后生成对应表,再提取数据包中的目的MAC地址,然后查找自己的MAC地址表中是否有对应关系。

  • 3、如果自己的MAC地址表中有,则会按照MAC地址表中对应的端口进行转发。

  • 4、如果没有就会把数据广播地发送到除自己的端口外所有的端口上,当有PC_C接收到数据后就会回应数据,然后交换机(路由器)就会记录下MAC地址,在下一次再有数据需要传输给这台电脑时就不需要再广播报文了。

所以说为什么不设置“默认网关”计算机也能互相通讯。

---------------------------------------------------------------------

---------------------------------------------------------------------

知识扩展:MAC地址也会自动更新,一个端口多个MAC地址对应。

  • 1、如果端口的网线拨掉或者端口连接的电脑(或其他连接的设备:交换机路由器等)关闭后。MAC地址表就会把该MAC地址删除掉。

  • 2、如果端口连接的电脑(或其他连接的设备:交换机路由器等),在五分钟内没有发送任何数据(报文)的话,MAC地址表就会把该MAC地址删除掉。

  • 3、一个端口也会学习到多个MAC地址,因为有时候端口下接的不是PC,而是交换机(路由器)而这个交换机(路由器)下面也接了多台PC。那么就会出现一个端口对应多个MAC地址表。通信原理也是一样的。

 

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多