【Linux网络编程(七)】集线器、交换机、路由器

集线器、交换机、路由器

集线器

集线器工作在物理层。
数据到达集线器会被集线器广播到与集线器相连的所有设备上。
所有连接到集线器上的设备都是共享集线器的带宽。
整形放大的功能。

交换机

交换机工作在链路层(核心层),三层交换机(核心层在链路层,只是具备VLAN虚拟局域网的划分)。
交换机上的设备是单播通信。
交换机上所有设备独享带宽。

路由器

路由器是不同网段通信的桥梁。
1、如果目的IP和发送主机的IP不在同一个局域网,发送主机的网络层思考应该数据发送给网关
2、假如每台主机已经配置网关信息,数据传递到链路(封装mac地址),去arp表中查找网关的mac地址(如果没有,需要arp广播得到网关mac),src_mac为主机mac、dest_mac为网关的mac,发送出去数据就到达网关。
3、路由器收到数据:查看报文中的目的IP地址和当前路由器的哪个接口的IP同一个网段
  1. 找到同一网段的接口,那么数据就会从该接口发送至目的主机(src_mac为接口的mac,dst_mas为主机的mac)就会从该接口发送至目的主机
  2. 没有找到同一个网段接口,从路由器的“路由表”中查看“下一跳”,并确定当前路由器的那个接口和下一跳相连。将数据(src_mac为接口的mac,dst_mac为下一跳的mac)发送到下一跳,下一跳收到数据,重复上一个路由器的所有动作。

数据从一个局域网到另一个局域网(没有跨外网,在内网)

数据从应用层到传输层,封装源端口、目的端口,数据到达网络层封装原IP、目的IP,并查看目的IP是不是当前局域网,不是当前局域网,数据交给网关,数据传递到链路层,链路层在arp表中查找网关的mac,如果有,修改原mac为主机mac, 目的mac为网关mac,数据发送到网关,如果arp表中没有记录网关的mac地址,将调用arp协议广播得到网关的mac地址,并更新arp表,并修改原mac为主机mac,目的mac为网关的mac,数据从主机的网卡发送到网关,网关的路由器收到数据后,先进行分析数据包中的目的网段是否和路由器的某一个接口的网段是同一个网段,如果是,数据就从该接口发送到目的主机,原mac为接口的mac,目的mac为主机的mac,如果报文中的目的IP,与路由器中的所有接口都不在同一网段,这时候路由器会查看路由表,查看下一跳,并确定路由器的哪一个接口和下一跳相连,修改原mac为接口的mac,目的mac为下一跳的mac,数据发送到下一跳,下一跳重复上一跳的所有动作传递到目的主机。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Eiker_3169

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值