网络协议基础学习(二): 集线器、网桥、交换机、路由器

759 阅读27分钟

一、同轴电缆

  • 不同的PC计算机之间, 可以使用同轴电缆相连接, 如下图

image.png

1、半双工通信

  • 同轴电缆是半双工通信, 既同一时刻, 只有一个通信可以在电缆中传递, 并且一个计算机发出通信, 所有的计算机都会接收到通信, 并对通信做出不同的处理
  • 如下, 第二台计算机发送通信, 其他所有的计算机都会收到通信, 并且线路中只有一个通信

image.png

  • 假设从第二个计算机发送到第四个计算机, 其它三台计算机接收到通信后, 会丢弃通信, 不做处理

image.png

  • 第四台计算机给第二台计算机发送响应通信, 所有的计算机都会接收到第四台计算机发出的通信

image.png

  • 每一台计算机都会根据收到的通信做出不同处理
  • 第二台电脑接收通信, 进行处理, 其它三台计算机接收到通信后, 会丢弃通信, 不做处理

image.png

2、容易冲突

  • 同一时刻, 同轴电缆中只能有一个信号存在, 例如从第二台计算机发送到第三台计算机
  • 如果此时第四台计算机向第三台计算机发送信号, 就会出现信号冲突

image.png

3、不安全

  • 当第二台计算机发送信息给第四台计算机时, 其它计算机也能收到信息, 如果其它计算机安装了抓包工具, 就会获取到第二台计算机发出的信息

image.png

4、中间断了, 整个都瘫痪

  • 通信会在电缆中传递, 同轴电缆两端都有终结电阻, 会吸收发送过来的通信
  • 如果没有终结电阻, 当有通信到达时, 通信会原路返回, 在整个线路中传递, 造成冲突

image.png

  • 就如同上面的情况, 没有终结电阻, 通信就会反弹
  • 当电缆某个位置中断, 通信就可能无法到达, 同时通信会在断点反弹回去
  • 如下图所示, 第二台计算机和第三台计算机之间断裂, 第三台计算机发送给第一台计算机通信, 结果通信无法发送到第一台计算机, 通信还会在断裂处反弹, 造成冲突

image.png

5、冲突域

  • 会出现冲突的相连几个计算机, 也被成为冲突域

image.png

二、集线器

1、集线器的应用

  • 集线器与同轴电缆基本一致, 也是半双工通信容易冲突不安全

image.png

  • 不过集线器和某台计算机之前的连线如果断了, 并不影响其它计算机之间的通信
  • 如下图, 计算机1集线器0之间中断, 计算机3计算机2依然可以正常通信

image.png

2、Packet Tracer 中使用集线器通信

  • 先添加三个PC计算机

image.png

  • 在中间放置一个集线器

image.png

  • 使用线将PC计算机集线器相连, 如果不知道使用什么线, 就选择第一个闪电

image.png

  • 点击计算机0, 配置IP

image.png

  • 输入IP地址后, 点击tab键, 自动生成子网掩码

image.png

  • 可以使用笔记功能, 标注计算机0IP地址

image.png

  • 同样的方式处理计算机1计算机2, 配置IP地址, 用笔记标注IP地址

image.png

  • 点击右下角的仿真, 然后使用邮件, 从计算机0发送到计算机2, 可以看到仿真面板中生成两条事件

image.png

  • 第一条是ICMP协议事件, 可以看到有计算机0源IP地址计算机2目的IP地址

image.png

  • 第二条是ARP协议事件, 可以看到有计算机0源MAC地址目的MAC地址FFFF.FFFF.FFFF, 此时不知道计算机2MAC地址, 所以需要ARP协议获取计算机2MAC地址

image.png

  • 点击下一步, 计算机0集线器发送ARP协议通信, 并生成一条事件

image.png

  • 点击事件, 可以看到集线器不做数据的处理

image.png

  • 点击下一步, 集线器会向计算机1计算机2分别发送一条ARP协议通信, 并声称两条事件

image.png

  • 点击第一条事件, 可以看到计算机2对于ARP通信的处理
    • 对比目的IP地址与自己的源IP地址是否一致, 发现一致
    • 计算机0发送自己的MAC地址
    • 信息携带: 计算机2源IP地址源MAC地址和计算机0源IP地址源MAC地址

image.png

  • 点开第二条事件, 计算机1收到ARP协议通信, 对比目的IP地址与自己的源IP地址不一致, 丢弃信息, 不作处理

image.png

  • 点击下一步, 计算机2集线器发送ARP协议通信, 生成一条事件

image.png

  • 点击事件, 集线器不对通信进行处理

image.png

  • 点击下一步, 集线器ARP协议通信发送到计算机0和计算机1, 并生成三条事件

image.png

  • 点击第一条事件, 计算机0接收到ARP协议通信, 对比信息, 进一步处理
    • 目的MAC地址计算机0源MAC地址一致
    • 目的IP地址计算机0源IP地址一致
    • 缓存计算机2MAC地址

image.png

  • 点击第二条事件, 计算机1接收到ARP协议通信, 对比信息, 进一步处理
    • 目的MAC地址计算机1源MAC地址不一致
    • 丢弃信息, 不作处理

image.png

  • 点击第三条事件, 计算机0获取到了计算机2MAC地址, 开始进行ICMP协议通信

image.png

  • 点击下一步, 计算机0开始向集线器发送ICMP协议通信, 并生成一条事件

image.png

  • 点击事件, 集线器不对通信数据进行处理

image.png

  • 点击下一步, 集线器分别向计算机1计算机2发送ICMP协议通信

image.png

  • 点击第一条事件, 计算机2对接收到计算机0ICMP协议通信进行处理, 对比数据
    • 对比目的MAC地址, 与自己的MAC地址一致
    • 对比目的IP地址, 与自己的IP地址一致
    • 处理数据, 向计算机0发送响应数据

image.png

  • 点击第二条事件, 计算机1对接收到计算机0ICMP协议通信进行处理, 对比数据
    • 对比目的MAC地址, 与自己的MAC地址不一致
    • 丢弃数据, 不作处理

image.png

  • 点击下一步, 计算机2集线器发送ICMP协议通信, 并生成一条事件

image.png

  • 点击事件, 集线器不对收到的通信处理

image.png

  • 点击下一步, 集线器向计算机0计算机1分别发送一条ICMP协议通信, 并生成两条事件

image.png

  • 点击第一条事件, 计算机0收到来自计算机2ICMP协议通信, 对比数据
    • 目的MAC地址与自己的源MAC地址一致
    • 目的IP地址与自己的源IP地址一致
    • 处理数据, 向上传递

image.png

  • 点击第二条事件, 计算机1收到来自计算机2ICMP协议通信, 对比数据
    • 目的MAC地址与自己的源MAC地址不一致
    • 丢弃数据, 不作处理

image.png

注意: 上面就是计算机0通过集线器发送数据到计算机2的完整过程, 可以看到在整个过程中, 集线器是没有任何"智商"的, 不会进一步处理接收到的数据, 只会将收到的通信分别发送到其它连接的所有计算机上

3、查看计算机0缓存的目标MAC地址

  • 点击计算机0, 选择命令提示符

image.png

  • 输入arp -a, 查看已经缓存计算机2IP地址MAC地址

image.png

4、计算机经过多个集线器通信

  • 在添加一个集线器1计算机3, 使用右下角的仿真, 用邮件从计算机3发送到计算机1, 整个过程的事件如下图所示

image.png

  • 生成的事件中, 每一步的时间不同, 同一步事件的时间相同
    • 0.000第一条: 计算机3准备数据发送到计算机1, 但是不清楚计算机1MAC地址
    • 0.000第二条: 计算机3准备使用ARP广播协议获取计算机1MAC地址
      • 携带信息: 源IP地址(计算机3的IP地址), 目的IP地址(计算机1的IP地址), 源MAC地址(计算机3的MAC地址), 目的MAC地址(FFFF.FFFF.FFFF)
    • 0.001: 计算机3ARP通信发送到集线器0
    • 0.002第一条: 集线器0ARP通信发送到计算机0
      • 计算机0对比ARP通信中的目的IP地址与自己的源IP地址不同, 丢弃通信, 不作处理
    • 0.002第二条: 集线器0ARP通信发送到集线器1
    • 0.003第一条: 集线器1ARP通信发送到计算机2
      • 计算机2对比ARP通信中的目的IP地址与自己的源IP地址不同, 丢弃通信, 不作处理
    • 0.003第一条: 集线器1ARP通信发送到计算机1
      • 计算机1对比ARP通信中的目的IP地址与自己的源IP地址相同, 处理数据, 准备通过ARP通信计算机3发送自己的MAC地址
      • 携带信息: 源IP地址(计算机1的IP地址), 目的IP地址(计算机3的IP地址), 源MAC地址(计算机1的MAC地址), 目的MAC地址(计算机3的MAC地址)
    • 0.004: 计算机1ARP通信发送到集线器1
    • 0.005第一条: 集线器1ARP通信发送到集线器0
    • 0.005第二条: 集线器1ARP通信发送到计算机2
      • 计算机2对比ARP通信中的目的IP地址与自己的源IP地址不同, 丢弃通信, 不作处理
    • 0.006第一条: 集线器0ARP通信发送到计算机0
      • 计算机0对比ARP通信中的目的IP地址与自己的源IP地址不同, 丢弃通信, 不作处理
    • 0.006第二条: 集线器0ARP通信发送到计算机3
      • 计算机3对比ARP通信中的目的IP地址与自己的源IP地址相同, 目的MAC地址与自己的源MAC地址相同, 处理数据
    • 0.006第三条: 计算机3收到计算机1MAC地址后, 准备向计算机1发送ICMP协议通信
      • 携带信息: 源IP地址(计算机3的IP地址)、目的IP地址(计算机1的IP地址)、源MAC地址(计算机3的MAC地址)、目的MAC地址(计算机1的MAC地址)
    • 0.007: 计算机3ICMP通信发送到集线器0
    • 0.008第一条: 集线器0ICMP通信发送到计算机0
      • 计算机0对比目的MAC地址与自己的源MAC地址不同, 丢弃通信, 不作处理
    • 0.008第二条: 集线器0ICMP通信发送到集线器1
    • 0.009第一条: 集线器1ICMP通信发送到计算机2
      • 计算机2对比目的MAC地址与自己的源MAC地址不同, 丢弃通信, 不作处理
    • 0.009第二条: 集线器1ICMP通信发送到计算机1
      • 计算机1对比目的MAC地址与自己的源MAC地址相同, 对比目的IP地址与自己的源IP地址相同, 处理数据, 准备将处理后的响应数据发回计算机3
      • 携带信息: 源IP地址(计算机1的IP地址)、目的IP地址(计算机3的IP地址)、源MAC地址(计算机1的MAC地址)、目的MAC地址(计算机3的MAC地址)
    • 0.010: 计算机1ICMP通信发送到集线器1
    • 0.011第一条: 集线器1ICMP通信发送到集线器0
    • 0.011第二条: 集线器1ICMP通信发送到计算机2
      • 计算机2对比目的MAC地址与自己的源MAC地址不同, 丢弃通信, 不作处理
    • 0.012第一条: 集线器0ICMP通信发送到计算机3
      • 计算机3对比目的MAC地址与自己的源MAC地址相同, 目的IP地址与自己的源IP地址相同, 读取通信中的数据
    • 0.012第二条: 集线器0ICMP通信发送到计算机0
      • 计算机0对比目的MAC地址与自己的源MAC地址不同, 丢弃通信, 不作处理

综上: 集线器是没有"智商"的, 只能接收通信和发送通信, 无法对通信进行处理和保存, 没有"记忆"功能, 当有1000台计算机时, 就要给999台计算机发送消息, 造成很大的浪费, 设备越多, 效率越低

三、网桥

1、网桥的应用

  • 网桥能够自学习得知每个接口那侧的MAC地址
  • 从而起到隔绝冲突域的作用

image.png

  • 网桥是有"智商"的, 能够通过学习得知每个接口那侧的MAC地址, 当有通信过来时就会记录计算机的源IP地址源MAC地址
  • 如下图, 计算机6发出通信, 网桥左侧接口就会记录计算机6IP地址MAC地址

image.png

  • 当再有计算机7计算机6发送通信时, 网桥左侧已经记录了计算机6IP地址MAC地址, 就不会再向右传递通信

image.png

2、Packet Tracer 中使用网桥

  • 放置一个网桥

image.png

  • 配置PC的IP地址, 然后将各个设配进行连线, 如下图所示

image.png

  • 如果网桥的线上有橙色部分, 就切换右下角的实时仿真

image.png

  • 使用邮件计算机0发送到计算机1, 整个ARP通信的流程如下图所示
    • 计算机0发出的通信, 通过集线器0, 发送到网桥时, 网桥左侧接口会先记录计算机0IP地址MAC地址, 检查通信的目的MAC地址FFFF.FFFF.FFFF, 于是通信继续向右传递
    • 计算机1收到通信后, 开始返回自己的MAC地址, 会经过集线器0, 发送到网桥
    • 此时, 网桥左侧接口记录了计算机0IP地址MAC地址, 对比通信中的目的IP地址目的MAC地址, 发现一致, 中断通信, 不在向右传递
    • 同事, 网桥记录计算机1IP地址MAC地址

image.png

  • 使用右下角的仿真功能, 使用邮件从计算机0发送到计算机1, 细分步骤
  • 如下图所示, 计算机0使用ARP协议通信, 获取计算机1MAC地址
    • 计算机0发送ARP通信到达集线器0
    • 集线器0发送ARP通信到达计算机1
      • 计算机1对比通信的目的IP地址与自己的IP地址一直, MAC地址FFFF.FFFF.FFFF, 于是准备向计算机0发送自己的MAC地址
    • 集线器0发送ARP通信到达网桥
      • 网桥左侧接口记录通信中计算机0IP地址MAC地址

image.png

  • 网桥左侧接口记录通信中计算机0IP地址MAC地址后, 发现通信中的目的MAC地址FFFF.FFFF.FFFF, 于是向右发送ARP协议
    • 网桥ARP通信发送给集线器1
    • 集线器1ARP通信发送给计算机2
      • 计算机2对比通信中目的IP地址与自己的IP地址不同, 不作处理
    • 集线器1ARP通信发送给计算机3
      • 计算机3对比通信中目的IP地址与自己的IP地址不同, 不作处理
  • 计算机1计算机0通过ARP通信发送自己的MAC地址
    • 计算机1发送ARP协议集线器0
    • 集线器0计算机0发送ARP通信
      • 计算机0对比通信中目的IP地址目的MAC地址与自己的IP地址MAC地址相同
      • 于是计算机0准备向计算机1发送ICMP通信
    • 集线器0网桥发送ARP通信
      • 网桥通过对比发现, 左侧接口已经记录了ARP通信中的目的IP地址目的MAC地址
      • 于是网桥中断通信, 不在向右侧发送ARP通信
      • 同时网桥记录计算机1IP地址MAC地址

image.png

  • 计算机0开始向计算机1发送ICMP通信
    • 计算机0集线器0发送ICMP通信
    • 集线器0计算机1发送ICMP通信
      • 计算机1通过对比ICMP通信中目的IP地址目的MAC地址与自己的IP地址MAC地址相同
      • 于是, 计算机1处理数据, 准备向计算机0发送响应数据
    • 集线器0网桥发送ICMP通信
      • 网桥通过对比发现, ICMP通信中目的IP地址目的MAC地址与左侧接口记录中计算机1IP地址MAC地址相同
      • 于是, 网桥中断通信, 不在向右侧发送ICMP通信

image.png

  • 计算机1处理完计算机0发送的ICMP通信后, 将响应数据通过ICMP通信发给计算机0
    • 计算机1ICMP通信发送给集线器0
    • 集线器0ICMP通信发送给计算机0
      • 计算机0通过对比, 发现ICMP通信中的目的IP地址和目的MAC地址与自己的IP地址MAC地址相同
      • 于是, 计算机0接收响应数据
    • 集线器0ICMP通信发送给网桥
      • 网桥通过对比, 发现ICMP通信中的目的IP地址和目的MAC地址网桥左侧接口中记录的计算机0IP地址MAC地址相同
      • 于是, 网桥中断通信, 不在向右侧发送ICMP通信

image.png

这就是计算机0和计算机1在相同网段中的通信过程
其中网桥是有"智商"的, 会记录发送过来的通信中源IP地址和源MAC地址
对比通信中目的IP地址和目的MAC地址是否已经记录
如果记录, 就会中断通信, 不再向其它的接口发送通信

四、交换机

1、交换机的应用

image.png

  • 交换机相当于接口更多的网桥, 可以记录每个相连计算机的IP地址MAC地址

image.png

  • 交换机是全双工通信, 同一时间, 整个连接中所有计算机都可以发送通信

image.png

  • 交换机比集线器安全, 当交换机记录了计算机2IP地址MAC地址, 其它计算机再给计算机2发送通信, 通信就不会再发送给其它计算机

image.png

2、Packet Tracer 中使用交换机

  • 如下图所示, 在桌面上放置四个PC计算机, 配置IP, 再放置一个交换机

image.png

  • PC计算机交换机之间连线

image.png

  • 使用邮件, 从计算机0发送到计算机3

image.png

  • 详细步骤如下
  • 计算机0发送ARP协议通信计算机3, 获取计算机3MAC地址
    • 计算机0交换机发送ARP通信
      • 交换机记录ARP通信计算机0IP地址MAC地址
      • 交换机准备给三台计算机都发送ARP通信
    • 交换机计算机1发送ARP通信
      • 计算机1通过对比, 发现通信中目的IP地址与自己的IP地址不同, 丢弃通信, 不作处理
    • 交换机计算机2发送ARP通信
      • 计算机2通过对比, 发现通信中目的IP地址与自己的IP地址不同, 丢弃通信, 不作处理
    • 交换机计算机3发送ARP通信
      • 计算机3通过对比, 发现通信中目的IP地址与自己的IP地址相同, 准备给计算机0发送自己的MAC地址

image.png

  • 计算机3计算机0发送ARP协议通信, 携带计算机3的MAC地址
    • 计算机3交换机发送ARP通信
      • 交换机记录ARP通信计算机3IP地址MAC地址
      • 交换机通过对比知道ARP通信发送给已经记录过计算机0
      • 于是, 交换机只给计算机0发送ARP通信, 不在给计算机1计算机2发送通信
    • 交换机计算机0发送ARP协议
      • 计算机0通过对比, 发现通信中的目的IP地址目的MAC地址与自己的IP地址MAC地址一致
      • 于是, 接收计算机3MAC地址, 准备向计算机3发送ICMP协议通信

image.png

  • 计算机0计算机3发送ICMP协议通信
    • 计算机0交换机发送ICMP协议通信
      • 交换机通过对比, 发现ICMP通信中的目的IP地址目的MAC地址与已经记录的计算机3IP地址MAC地址相同
      • 于是, 交换机只给计算机3发送ICMP通信
    • 交换机计算机3发送ICMP协议通信
      • 计算机3对比, 通信中的目的IP地址目的MAC地址与自己的IP地址MAC地址相同
      • 计算机3处理通信, 准备给计算机0发送响应数据

image.png

  • 计算机3计算机0发送ICMP协议通信, 返回响应数据
    • 计算机3交换机发送ICMP协议通信
      • 交换机通过对比, 发现ICMP通信中的目的IP地址目的MAC地址与已经记录的计算机0IP地址MAC地址相同
      • 于是, 交换机只给计算机0发送ICMP通信
    • 交换机计算机0发送ICMP协议通信
      • 计算机0对比, 通信中的目的IP地址目的MAC地址与自己的IP地址MAC地址相同
      • 于是, 计算机0接收并处理计算机3发来的响应数据

image.png

五、路由器

1、路由器的应用

  • 在相同网段中, 可以使用网线直连同轴电缆集线器网桥交换机传送数据
  • 不同网段中, 需要使用路由器传送数据

image.png

  • 网线直连、同轴电缆、集线器、网桥、交换机
    • 连接的设备必须在同一个网段
      • 例如192.168.1.10192.168.1.11, 其中IP地址前面的192.168.1可以理解为网段, 后面得1011是计算机的id号, 既网段192.168.1中的id10计算机id11计算机
    • 连接的设备处在同一个广播域
      • 同一个网段相连的设备, 例如192.168.1.10192.168.1.11192.168.1.12192.168.1.13, 这四个在同一网段的设备相连
      • 广播会在同一个广播域内传播

image.png

  • 路由器
    • 可以在不同网段之间转发数据
    • 隔绝广播域
  • 如下图所示, 左边的网段是192.168.1, 右边的网段是192.168.2

image.png

  • 当计算机0发送信息给计算机1的时候, ARP广播到达路由器就会被阻止, 不会向右传播

image.png

2、在 Packet Tracer 中使用路由器

(1)、配置设备
  • 如下图所示, 放置四个计算机, 两个交换机, 一个路由器, 并用线连接

image.png

  • 如下图所示, 配置计算机0IP地址默认网关
    • IP地址: 192.168.1.10
    • 默认网关: 192.168.1.1

image.png

  • 配置计算机1IP地址默认网关
    • IP地址: 192.168.1.11
    • 默认网关: 192.168.1.1

image.png

  • 配置计算机2IP地址默认网关
    • IP地址: 192.168.2.10
    • 默认网关: 192.168.2.1

image.png

  • 配置计算机3IP地址默认网关
    • IP地址: 192.168.2.11
    • 默认网关: 192.168.2.1

image.png

  • 此时可以看到, 路由两侧的线是红色, 表示未联通

image.png

  • 点击工具栏上的选项, 选择首选项...

image.png

  • 勾选在逻辑工作区总是显示端口标签

image.png

  • 这样, 就可以看到每台设备连线时, 使用的端口名称

image.png

  • 配置路由器左边接口的网段192.168.1.1, 并打开端口状态

image.png

  • 配置路由器右边接口的网段192.168.2.1, 并打开端口状态

image.png

  • 此时线路就连通了

image.png

(2)、计算机0与计算机1之间的通信
  • 点击右下角的仿真, 然后使用邮件从计算机0发送到计算机1

image.png

  • 计算机0准备发送ARP广播获取计算机1MAC地址时, 会先判断目的IP地址(计算机1的IP地址)与源IP地址(计算机0的IP地址)是不是在同一个网段, 如果在同一个网段, 计算机0会通过ARP广播获取计算机1MAC地址

image.png

  • 计算机0计算机1发送ARP广播, 获取计算机1MAC地址
    • 1、计算机0交换机0发送广播
      • 交换机0记录计算机0IP地址MAC地址
    • 2.1、交换机0计算机1发送广播
      • 计算机1通过对比, 发现广播的目的IP地址与自己的IP地址相同, 目的MAC地址FFFF.FFFF.FFFF
      • 于是, 计算机1准备向计算机0发送自己的MAC地址
    • 2.2、交换机0路由器0发送广播
      • 路由器0通过对比, 发现广播的网段192.168.1.1, 与左侧的网段相同
      • 于是, 路由器0阻断广播, 不会向右传播

image.png

  • 计算机1计算机0发送ARP广播, 发送计算机1MAC地址
    • 3、计算机1交换机0发送ARP广播
      • 交换机0通过对比, 发现广播的目的IP地址目的MAC地址与记录的计算机0IP地址MAC地址相同
      • 于是, 交换机0准备向计算机0发送ARP广播, 不向其它设备发送广播
      • 同时, 交换机0记录计算机1IP地址MAC地址
    • 4、交换机0计算机0发送ARP广播
      • 计算机0获取到计算机1MAC地址, 准备向计算机1发送ICMP协议通信

image.png

  • 计算机0计算机1发送ICMP协议通信
    • 5、计算机0交换机0发送ICMP协议通信
      • 交换机0通过对比, 发现通信中的目的IP地址目的MAC地址与记录的计算机1IP地址MAC地址相同
      • 于是, 交换机0准备向计算机1发送通信
    • 6、交换机0计算机1发送ICMP协议通信
      • 计算机1通过对比, 发现通信中的目的IP地址目的MAC地址与记录的计算机1IP地址MAC地址相同
      • 于是, 计算机1处理数据, 准备向计算机0发送响应数据

image.png

  • 计算机1计算机0发送ICMP协议通信
    • 7、计算机1交换机0发送ICMP协议通信
      • 交换机0通过对比, 发现通信中的目的IP地址目的MAC地址与记录的计算机0IP地址MAC地址相同
      • 于是, 交换机0准备向计算机0发送通信
    • 8、交换机0计算机0发送ICMP协议通信
      • 计算机0通过对比, 发现通信中的目的IP地址目的MAC地址与记录的计算机0IP地址MAC地址相同
      • 于是, 计算机0处理响应数据

image.png

(2)、计算机0与计算机3之间的通信
  • 计算机0计算机3发送数据, 首先会检查计算机0计算机3是否在同一个网段
  • 计算机0计算机3不在同一个网段时, 说明线路中有路由器, 于是计算机0要通过路由器转发数据和计算机3通信
  • 首先, 计算机0要获取路由器网卡的MAC地址

image.png

  • 计算机0路由器0发送ARP广播, 获取路由器网关的MAC地址
    • 1、计算机0交换机0发送ARP广播
      • 交换机0记录计算机0IP地址MAC地址
      • 交换机0准备给计算机1路由器0发送ARP广播
    • 2.1、交换机0计算机1发送ARP广播
      • 计算机1收到广播, 通过对比广播中目的IP地址和自己的IP地址不同, 不作处理
    • 2.2、交换机0路由器0发送ARP广播
      • 路由器收到广播, 通过对比广播中目的IP地址和自己的IP地址相同, 返回网关的MAC地址

image.png

  • 路由器0计算机0发送ARP广播, 发送路由器0MAC地址
    • 3、路由器0交换机0发送ARP广播
      • 交换机0已经记录计算机0IP地址MAC地址, 通过对比, 准备项计算机0发送ARP广播
      • 交换机0记录路由器网卡的IP地址MAC地址
      • 4、交换机0计算机0发送ARP广播
      • 计算机0获取到路由器0MAC地址, 准备向路由器0发送ICMP通信

image.png

  • 计算机0路由器0发送ICMP通信, 最终目标是向计算机3发送ICMP通信
    • 5、计算机0向交换机0发送ICMP通信
      • 交换机0已经记录路由器0网卡的IP地址MAC地址, 准备向路由器0发送ICMP通信
    • 6、交换机0路由器0发送ICMP通信
      • 路由器0收到通信, 通过对比后发现, 并没有记录计算机3IP地址MAC地址, 于是准备向网段192.168.2.1方向发送ARP广播, 获取计算机3MAC地址

image.png

  • 路由器0计算机3发送ARP广播, 获取计算机3MAC地址
    • 7、路由器0交换机0发送ARP广播
      • 交换机0没有记录计算机3IP地址MAC地址
      • 于是, 交换机0准备向计算机2计算机3分别发送ARP广播
      • 同时, 交换机0记录路由器0IP地址MAC地址
    • 8.1、交换机1计算机2发送ARP广播
      • 计算机2收到广播后, 对比广播中的目的IP地址与自己的IP地址不同, 不作处理
    • 8.2、交换机1计算机3发送ARP广播
      • 计算机3收到广播后, 对比广播中的目的IP地址与自己的IP地址相同, 准备给路由器0返回自己的MAC地址

image.png

  • 计算机3路由器0发送ARP广播, 发送计算机3MAC地址
    • 9、计算机3交换机1发送ARP广播
      • 交换机1记录了路由器0IP地址MAC地址, 准备向路由器0发送ARP广播
      • 同时, 交换机1记录计算机3IP地址MAC地址
    • 10、交换机1路由器0发送ARP广播
      • 路由器0收到计算机3MAC地址, 准备向计算机3发送ICMP协议通信

image.png

  • 路由器0计算机3发送ICMP协议通信
    • 11、路由器0交换机1发送ICMP协议通信
      • 交换机1记录了计算机3IP地址MAC地址
    • 12、交换机1计算机3发送ICMP协议通信
      • 计算机3收到通信, 对比目的IP地址目的MAC地址与自己的IP地址MAC地址相同
      • 于是, 计算机3处理数据, 准备给计算机0发送响应数据

image.png

  • 计算机3路由器0发送ICMP协议通信, 携带响应数据
    • 计算机3交换机1发送ICMP协议通信
      • 交换机1记录过路由路0IP地址MAC地址, 准备向路由器0发送通信
    • 交换机1路由器0发送ICMP协议通信
      • 路由器0向网段192.168.1.1方向发送通信

image.png

  • 路由器0计算机0发送ICMP通信, 携带计算机3响应数据
    • 路由器0交换机0发送ICMP通信
      • 交换机0记录了计算机0IP地址MAC地址, 准备向计算机0发送通信
    • 交换机0计算机0发送ICMP通信
      • 计算机0根据通信中目的IP地址目的MAC地址与自己的IP地址MAC地址相同, 接收响应数据

image.png

路由器在整个通信过程中, 作为一个中转的角色存在, 连通两个不同的网段, 传递不同网段计算机的通信