计算机网络——网络层


前言

在此之前我们学习了有关物理层以及数据链路层的有关知识,现在我们来学习有关网络层的有关概念


一、IPv4地址概述

  • IP地址——用在网络层上识别每一个连接到此网络的设备的标识符(又称为逻辑地址,上次数据链路层提到的MAC地址)物理地址),通俗来讲,就是你要在网络中定位一台设备,并发送信息给该设备,此时就需要在网络中根据其独一无二的地址准确的定位到这台设备,而这个地址就是对应的ip地址
  • 和MAC地址相同的是,IP地址也是独一无二的,在全球唯一的定义了一台设备与网络之间链接。
  • ip地址的结构
    – ip地址是属于网络层,至少应该是网络层及其上层设备才能识别IP地址。ip地址是32位二进制数,而为了方便识别,采用点分十进制的表示方法
    – 点分十进制——提高IP地址的可读性,每8位二进制数表示一个十进制数,并以小数点隔开。
    –ip地址分为两部分——网络号,主机号
    在这里插入图片描述

二、标准分类ip地址

1.标准分类IP地址以及常见的ip类型

  • 在分类编址的每一类地址都由两个固定长度的字段组成,其中一个是网络号(net-id),另一个是主机号(host-id)。
  • 网络号在链接同一个网络的情况下,是必须一样的;而且每一个网络号也是独一无二的。
  • 主机号就是表示链接此网络号下的网络中的主机或者是路由器设备。

– IP地址中的网络号字段和主机号字段
在这里插入图片描述

  • 其中A,B,C类是最常用的单播地址。(单播地址就是只能发送给数据报中所包含的目标地址的主机)
  • A类IP地址是网络号占了高8位,主机号占了剩下的24位。可以从上图中观察到,A类IP的第一位是0,A类地址占了1/2。可分配的网络号为27-2个,即A类地址的首字节部分为1-126;可用的主机个数为224-2个。
  • B类IP地址是网络号占了高16位,主机号占了剩下的16位。同理,B类IP的第一二位为10,B类地址占了1/4。B类地址的首字节部分为128-191.可用主机地址个数为216-2个。
  • C类IP地址是网络号占了高24位,主机号占了剩下的8位。C类IP的第一二三为110,C类地址占了1/8。C类地址的首字节为192-255,可用的主机地址个数为28-2个。
  • 可能有同学不太理解A类地址占了1/2,B类地址占了1/4,C类地址占了1/8。接下来看下图大家就明白了。
    在A类地址确定时,最高位只能有两种可能0或1,当确定为A类地址时,那么首位就确定为0,占1/2;在B类地址中首位是1,应该占1/2,之后B类地址确定了第二位为0,再乘个1/2,那么B类地址占1/4(图二);以此类推到了C类地址,已经确定了前两位,第三位确定为0,再乘1/2。(在此处,我个人认为,完全可以理解为(1/2)n,确定了几个比特位,那么n就为多少)
    在这里插入图片描述
    在这里插入图片描述

在这里插入图片描述

2.特殊ip地址

肯定有同学在前边有疑问,为什么每一类地址对应的主机地址都减了2,在学习完这一部分就能明白。


  • 网络地址(主机号全为0),该地址是标识网络本身,而不能作为主机地址
  • 广播地址(主机号全为1),举个例子:当一个路由器接收到的目的地址为202.1.1.255的数据报,那么就会将数据报发送给网络(202.1.1.0)中的所有主机
  • 环回地址(127.x.x.x),这个回环地址用于测试主机上的TCP/IP协议的实现
  • 未指定地址(0.0.0.0),代表所有不清楚的地址。(主机正在启动,而不知道自己的IP地址,主机为了得到一个IP,向DHCP发送一个请求分组,源地址为0.0.0.0,目的地址为255.255.255.255)
  • 所以在所有的三类地址中的主机地址减的2是指网络地址和广播地址。

3.子网划分

  • 为什么要进行子网划分
    – 一个网络地址只能分配给一个网络使用,当该网络中主机数量和网络地址所能接受的最大主机个数相差很多时,就会造成地址的浪费

在这里插入图片描述

  • 从原来二级IP地址的主机号中借几位作为子网号,那么IP地址就会被划分为网络号,子网号和主机号三部分

在这里插入图片描述

  • 需要注意的一点是,不管是哪一类地址,最少借一位,最多借到主机号剩两位
  • 另外引进子网掩码的概念,因为子网号是从主机号中借的比特位,所以要区分出IP地址中的子网号,那么就有了子网掩码——网络号和子网号全为1,主机号全为0。
  • 下面来个例题:
    在这里插入图片描述
    – 从IP地址开始分析,从IP地址首字节来看是C类地址,而子网掩码为255.255.255.224,从子网掩码中可以分析出子网号从主机号借的是高三位,子网号为011,那么主机号应该为5位,子网的网络地址也就为202.120.3.96,广播地址为202.120.3.127。
    除了这样硬分析得出子网网络地址,还可以用另一种方式,使用子网掩码和IP地址进行与操作(比特位同为1则得1)

4.CIDR


  • CIDR消除了传统的A,B,C类的网络地址,取而代之的是更为简便的无分类编码的放法即CIDR
  • CIDR的特点
    – CIDR把32位的IP地址只分为两部分,前缀和后缀。前缀是指明网络;后缀是指明主机。
    – CIDR使用斜线记法,在IP地址的后面加上斜线‘/’,在斜线后加上网络前缀的位数
    – CIDR把网络前缀都相同的连续的IP地址组成一个CIDR地址块,CIDR地址块就是使用地址块中最小地址和前缀位数来表示的
    – 为了更加方便的得出网络地址,CIDR便使用了32位的地址掩码,前缀全部为1,后缀全部为0。1的个数就是网络前缀的长度
  • 在路由表中就利用CIDR地址块来查找目的网络,这种地址的聚合常称为路由聚合。使路由表中的一个项目来表示原来分类地址的很多个路由
  • 这里引入一个博主上午看到的一道例题:
    202.113.79.128/27 202.113.79.160/27 202.113.79.192/27,这三个IP地址聚合后可用的地址数是多少?
    此时先将这三个地址不同的地方展开成二进制形式
202.113.79.10000000/27
202.113.79.10100000/27
202.113.79.11000000/27

我们可以看出前两个地址是可以聚合的,聚合之后的地址为202.113.79.10000000/26,可供26-2个地址,而202.113.79.11000000/27可供25-2个地址,最后的解也就是92.
面对这个问题时,一定不要上来就立马看所有IP地址相同的地方,然后直接写聚合地址,那上面那道题举例,肯定会有同学上来就看出202.113.79.10000000/25作为聚合地址,可是这样做的后果就是,把本来没有让你聚合进去的地址202.113.79.11100000/27算进去,这样是不符合题意的。
这就好比这道题中的三个IP地址都是中国的ip,如果你强行聚合成202.113.79.128/25,那么其中就会混入一个202.113.79.224/27这一类IP地址,而这一类IP地址不是中国的ip,你在使用202.113.79.128/25聚合之后,发送数据报,有可能会发送给202.113.79.224/27这一地址,而这一地址根本不是中国的IP,那么你发送的数据报也就永远不可能到达。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值