网络协议上课笔记(三) 路由、重要概念、NAT

路由

路由的定义(摘自维基百科)

 路由(routing)就是通过互联的网络把信息从源地址传输到目的地址的活动。路由发生在OSI网络参考模型中的第三层即网络层。
 路由引导分组转送,经过一些中间的节点后,到它们最后的目的地。作成硬件的话,则称为路由器。路由通常根据路由表——一个存储到各个目的地的最佳路径的表——来引导分组转送。因此为了有效率的转送分组,创建存储在路由器存储器内的路由表是非常重要的。
个人的理解:百度百科上对由的解释,“经历、经过”,路由就是流量从哪里来,到哪里去的整个经过的过程。单个网段用交换机进行转发;跨网段用路由器进行转发。
在这里插入图片描述

动态路由和静态路由

默认情况下,路由器只知道与它直连的网段,非直连的网段需要通过 静态路由、动态路由 告诉它。

静态路由

  • 需要管理员手动添加路由信息。
  • 适用于小规模网络。因为当网络的规模一大:一是配置的工作量很大,二是人工分配IP很可能会出现IP冲突的问题。

动态路由

  • 路由器通过路由选择协议(比如RIP、OSPF)自动获取路由信息
  • 适用于大规模网络

路由表

每个路由器自己维护着一张路由表,大概有字段:(IP、子网掩码、下一跳路由的IP),用于指引将当前数据包发送至哪里。

路由的规则

已知:

  • 路由表有记录(IP:192.168.1.0,子网掩码:255.255.255.0,下一跳:A1)、(IP:192.168.3.0,子网掩码:255.255.255.0,下一跳:A2)、(IP:0.0.0.0,子网掩码:0.0.0.0,下一跳:B1)
  • 数据包(源IP地址:192.168.3.1,目标IP地址:192.168.1.2)

 当数据包经过该路由器的时候,数据包的目标地址的所属网段 = 目标IP & 路由表子网掩码 = 192.168.1.0,刚好等于路由表的子网掩码,所以下一跳是A1而不是A2。
 但细心的你们肯定能发现,目标IP地址192.168.1.2 & 0.0.0.0 = 0.0.0.0,刚好也等于第三条记录的网段,为什么下一跳不是B1呢?这就要看下面的路由的优先级。

路由的优先级

根据路由表的IP+子网掩码计算出网段,越具体的网段(即子网掩码0的位数越少)优先级越高。

PS路由小技巧:边缘路由器静态路由可以配:(IP:0.0.0.0,子网掩码:0.0.0.0,下一跳:A1),表示任意请求的下一跳都是A1

理解第一个包丢失的现象

在这里插入图片描述

如图,从 192.168.1.10/24 往 192.168.2.10/24 虽然可以 ping 通,但是却丢失了第一个数据包。

原因是:计算机0 往路由器发送了 ARP包,路由器收到后回复了 ARP包,从而计算机0就开始发送 ICMP包,路由器0收到 ICMP包后准备发往计算机1,但是路由器还不知道计算机1的MAC地址,所以要往计算机1发送ARP包,因此就把ICMP包给丢了,所以第一次 ping 会超时。

重要概念

ISP

 互联网提供商,给一般老百姓提供互联网的服务。要提供互联网的服务,需要的前期大量金钱投入和雄厚的技术实力,它们需要搭建机房,挖地铺设光纤、路由器等网络设备,而且要对这些设备进行维护,坏了要修。所以ISP都是大公司去承担这个角色,比如:移动、电信、联通等。
 而我们要上网,则只要找ISP开通网络即可,不需要自己铺设网线等。(个人理解:普通家庭开通网络其实也就是让ISP在连接我们家的那栋楼的路由器,在用NAT技术给我们分配一个局域网IP,然后我们家就可以上网了)

服务器机房

如下图所示,每个ISP都有很多个自己的机房,或者是混合的机房。比如中国移动在海珠区有一个机房,天河区有一个机房;然后中国联通也同样有一个机房,天河区有一个机房。而你家的网络是在中国移动开通的,而且在天河区,那么下载的时候肯定选择天河区中国移动线路下载是最快的:一是你家网络距离ISP的机房路径最短;二是不需要跨ISP,走多余的机房。
在这里插入图片描述

家用无线路由器的逻辑结构

在这里插入图片描述

NAT

NAT是什么

NAT(net address Translation网络地址转换协议)。现在的路由器都实现了NAT协议,具有NAT的功能,比如如下图所示:
在这里插入图片描述
 假设现在一栋楼有3户,每一户都向ISP开通了网络。ISP给他们分配了IP,分别如图所示。然后他们都访问百度首页,他们的请求都会通过183.240.20.243这个公网IP向百度服务器进行请求,路由器处理他们的请求的时候,会给每个请求分配一个端口然后在用该端口向百度请求,并且路由器会维护着一张NAT表(路由器的请求端口、源IP、源端口)。比如路由器处理192.168.0.2/24:443的请求的时候分配了1000端口,然后路由器用183.240.20.243:1000去请求百度;在处理192.18.0.3/24:443的请求的时候分配了1001端口,然后路由器用183.240.20.243:1001去请求百度。当百度对183.240.20.243:1000进行了响应,则路由器会将响应转发到192.168.0.2/24:443。这样就达到了一个公网IP可以被多个人同时使用的效果
 值得说明的是,NAT可以无限套娃,1层NAT转换之后,可以在套第2层NAT。所以说NAT可以使用少量的全球IP地址(公网IP地址)代表较多的私有IP地址的方式,将有助于减缓可用的IP地址空间的枯竭
 同时NAT也可以用在虚拟机中,当虚拟机想上网时,物理机随机给每台虚拟机分配一个端口+维护NAT表即可,然后虚拟机和物理机都可以用物理机的IP进行上网。这也就是在搭建虚拟机的时候上网模式NAT这一选择的含义。

一个与NAT有关的现象

这也解释了一个现象,当你百度查询本地公网IP的时候,往往会出现一个跟你八辈子打不着杆子的IP。是因为你的电脑经过多层NAT转换来到了直连着公网的路由器这里,这个“本地公网IP”就是这个路由器的公网IP。

在这里插入图片描述

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

我叫985

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

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

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

打赏作者

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

抵扣说明:

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

余额充值