路由器的衍生知识点-子网和子网掩码-默认网关-路由表-ARP协议

路由器的衍生知识点

子网和子网掩码

在机器间传递消息的时候**,如果在同一子网下,接直接将包通过交换机发出去,如果不处于一个子网,就需要通过路由器去处理。**

处于同一子网
192.168.0.1 和 192.168.0.2 处于同一个子网
192.168.0.1 和 192.168.1.1 处于不同子网

那么我们很清晰的就能发现规律,对于192.168.0.1和192.168.0.xxx就是和它在同一子网,否则就是不同的子网

那对于计算机来讲,就需要一种方式来辨认是否在同一子网,也就是找出相同的几位,那么就可以用到子网掩码的概念。

**例如:**某台机器的子网掩码定为255.255.255.0

**这表示:**将源IP与目的IP分别同这个子网掩码进行与运算,相等则是在一个子网,不相等就是在不同子网。

比如:

A电脑:192.168.0.1 & 255.255.255.0 = 192.168.0.0

B电脑:192.168.0.2 & 255.255.255.0 = 192.168.0.0

C电脑:192.168.1.1 & 255.255.255.0 = 192.168.1.0

D电脑:192.168.1.2 & 255.255.255.0 = 192.168.1.0
    
//那么 A 与 B 在同一个子网,C 与 D 在同一个子网,但是 A 与 C 就不在同一个子网,与 D 也不在同一个子网,以此类推。

如果 A 给 C 发消息,A 和 C 的 IP 地址分别 & A 机器配置的子网掩码,发现不相等,则 A 认为 C 和自己不在同一个子网,于是把包发给路由器,就不管了,之后怎么转发,A 不关心

默认网关

机器联系路由器的方式就是在A上设置默认网关

当机器判断出自己应该把包发送给路由器,他就会将包发给默认网关,也就是说直接发给同处于一个子网下的某个IP上,至于接受的是否是路由器它并不关心。

默认网关就是机器内部配置的一个IP地址,以便在发给不同子网的机器时,将包发送给该IP地址。

image-20231212202618549

路由表

路由表就是路由器端口和IP地址对应的表,与MAC地址表类似。

路由表就表示,192.168.0.xxx 这个子网下的,都转发到 0 号端口,192.168.1.xxx 这个子网下的,都转发到 1 号端口。下一跳列还没有值,我们先不管。

ARP协议

ARP协议就是以某种广播请求来将IP地址和对应的MAC地址做表。

ARP协议,同时电脑 A 和 B 里面也会有一张 ARP 缓存表,表中记录着 IP 与 MAC 地址的对应关系。

网络编程入门从未如此简单(一):假如你来设计网络,会怎么做?_4-12.png

一开始的时候这个表是空的,电脑 A 为了知道电脑 B(192.168.0.2)的 MAC 地址,将会广播一条 ARP 请求,B 收到请求后,带上自己的 MAC 地址给 A 一个响应。此时 A 便更新了自己的 ARP 表。

这样通过大家不断广播 ARP 请求,最终所有电脑里面都将 ARP 缓存表更新完整。

小结

电脑视角:

  • 1)首先我要知道我的 IP 以及对方的 IP;
  • 2)通过子网掩码判断我们是否在同一个子网;
  • 3)在同一个子网就通过 arp 获取对方 mac 地址直接扔出去;
  • 4)不在同一个子网就通过 arp 获取默认网关的 mac 地址直接扔出去。

交换机视角:

  • 1)我收到的数据包必须有目标 MAC 地址;
  • 2)通过 MAC 地址表查映射关系;
  • 3)查到了就按照映射关系从我的指定端口发出去;
  • 4)查不到就所有端口都发出去。

路由器视角:

  • 1)我收到的数据包必须有目标 IP 地址;
  • 2)通过路由表查映射关系;
  • 3)查到了就按照映射关系从我的指定端口发出去(不在任何一个子网范围,走其路由器的默认网关也是查到了);
  • 4)查不到则返回一个路由不可达的数据包。

如果你嗅觉足够敏锐,你应该可以感受到下面这句话:

网络层(IP协议)本身没有传输包的功能,包的实际传输是委托给数据链路层(以太网中的交换机)来实现的。

涉及到的三张表分别是:

  • 1)交换机中有 MAC 地址表用于映射 MAC 地址和它的端口;
  • 2)路由器中有路由表用于映射 IP 地址(段)和它的端口;
  • 3)电脑和路由器中都有 ARP 缓存表用于缓存 IP 和 MAC 地址的映射关系。

这三张表是怎么来的:

  • 1)MAC 地址表是通过以太网内各节点之间不断通过交换机通信,不断完善起来的;
  • 2)路由表是各种路由算法 + 人工配置逐步完善起来的;
  • 3)ARP 缓存表是不断通过 ARP 协议的请求逐步完善起来的。
  • 16
    点赞
  • 22
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值