【计算机网络】网络层协议——IP协议基础教程详解!干货满满

【计算机网络】网络层——IP协议详解

网络层的主要的工作是:

地址管理,

路由选择

IP协议的格式

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-lydtQFzv-1654179136576)(C:\Users\19625\AppData\Roaming\Typora\typora-user-images\image-20220601140321825.png)]

4位版本号

4为的版本号0~15,但是目前我们只有2个版本,一个是IPV4,一个是IPV6

4位首部长度

首部长度指的是IP协议报头的长度,范围是0~15,但是单位是4个字节,也就是最大的60字节,

但是这个和TCP的首部长度一样,都是可变的,在选项那里可以增加长度

8位的服务类型

ip协议可以有不同种的类型:目前有4种类型的IP协议

最小延时,最大吞吐量,最高可靠性,最小成本

指定不同的服务类型,就可以实现不同的效果.

和我们的电脑的均衡模式,野兽模式,安静模式一样,侧重的方向不同

16位总长度

这个16位的总长度描述的是整个的ip协议的长度一共是多少.

这个长度的范围是0~64K,如果IP的协议长度大于这个数的话,就得分成多个ip协议了,分包传输然后再组包了

分包组包

因为一个协议太长了,所以我们不可避免的得分成多份.所以为了清楚的描述这些小包是哪一个大包的,我们还需要下面的一些属性:

标识

属于同一个ip的包使用同一个标识,表示它们原来都是同一条协议的

片移量

片移量表示包的前后顺序,也就是在原来的IP协议的位置.

在组包的时候,就按照片移量的大小来组装包的顺序的

标志

标志如果是0表示不是最后一个包,如果是1表示是最后一个包是结束标志

过程实例

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-qfo3C3Dr-1654179136577)(C:\Users\19625\AppData\Roaming\Typora\typora-user-images\image-20220601144322944.png)]

  1. 对于长度过于长的IP协议,进行分包
  2. 使用上面3种属性将大的ip协议,分成一个个的小ip协议
  3. 将接收到的3个ip协议组成一个大的包

8位生存时间

这个生存时间不是正常的时间,是此ip协议可以被路由器或交换机所转发的次数

一般是64或者128次,

每次经过一个路由器,次数就减一,当等于0了,这个ip协议就会被删除.

为什么要设置这样的次数呢?

因为有的IP地址是不存在的,是永远都找不到的,所以这个在转发就没有任何意义了,就需要将它抹杀掉

8位协议

8位协议指的就是传输层的协议是TCP还是UDP

16位首部校验和

这个就是校验的,检验有没有发生什么错误的信息.

源IP地址和目的IP地址

对于ipv4来说,ip地址的字节数是32位,我们一般都是使用点分十进制,将32位点分位8位.

然后使用10进制表示,这个为了方便给人看的,但是在电脑内部还是使用二进制来使用的.

IP地址管理

网络号+主机号

ip地址是由两部分组成的,一个是网络号,一个是主机号。

网络号是当前局域网的信息,处于同一个局域网中的设备的网络号都是一样的

主机号是当前设备的号码,在同一个局域网中的主机号互不相同.

在同一个局域网中,任意两个ip地址都不可以相同.

但是在不同的局域网中,任意两个地址可以相同.

子网掩码

那我们是怎么可以确定网络号占多少位,主机号占多少位的呢?

就是使用子网掩码来进行标识.

子网掩码也是32位的二进制数字,它的左边都是连续的1,右边都是连续的0

为1的部分就是表示网络号,为0的部分表示是主机号.

所以ip地址和子网掩码都是一般同时出现的,

可以让我们清楚的知道那些部分是网络号,那些部分是主机号

一般一个局域网中的设备不会超过255个,但是如果超过的话,子网掩码就可以变为255.255.0.0 后两位都可以表示主机号

特殊的IP

  1. 主机号全0

    表示是一个网络号,因为正常的局域网中的设备的主机号是不可以为0的

  2. 主机号为全1

    表示是一个广播地址,向广播地址发送的数据,在该局域网中的任何地址都可以收到

  3. 环回地址127开头

    只有是127开头的,后面无论是什么地址都是环回地址

  4. 局域网地址

    只要看到是以192.168开头,10开头,172.16~172.31开头的都是局域网中的地址

内网和外网

内网即局域网,LAN网(local area network)

内网是指在同一个区域内部的网,比如说家里的网,学校的校园网,都是接上同一个路由器等等,这个就是内网

外网是广域网,WAN网( wai area network)

这个外网包括的范围就广了,覆盖面积是多个城市,国家.可以达到国际性的通信

上面的就是我家里里面的网络

主要有两个局域网,对于以光猫为主的局域网来说,它的一个LAN口的IP地址是192.168.0.1

连在这个lan口上面的ip地址有路由器的wan口,服务器1 和服务器2

这几个设备构成了一个局域网,它们的IP地址都是以192.168.0开头的.

只有LAN口的IP地址以1结尾,其他的设备都不可以以1结尾


对于路由器来说,它的WAN口接的是光猫的LAN口.

对于它的LAN来说,它和它的连接是第二个局域网

路由器的LAN口连接着三个设备:台式机,笔记本,电话

只有LAN口的IP地址是1结尾,其他的设备都不可以以1结尾

另外,IP地址的倒数第二个值和光猫局域网的数字是不同的

NAT机制

现在我们来探讨一下怎么来分配一下ip地址.

我们现在使用的ip协议一般都是ipv4,也就是使用32位的二进制来表示ip地址,但是这样表示的ip地址是有限个的,最多只有2^32个,所以如果想要所有的设备都可以上网交流的话,这样是远远不够的.

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-RpVrxi8F-1654179136582)(C:\Users\19625\AppData\Roaming\Typora\typora-user-images\image-20220602185544862.png)]

所以我们就采用NAT机制,

在向别的外网通信的时候,不使用局域网中的IP地址,而是使用它的外网地址.

所有处于同一个局域网中的设备,在和外部进行交流的时候,都是使用的外网地址.

对于我上面的例子来说,如果我的笔记本192.168.1.3想要和外网交流,那么不会直接使用此时的地址,而是要使用我们的供应商提供的外网地址103.57.12.60

也就是说,192.168.1.3这个IP地址是人人家里的设备都有可能是这个地址.但是这个只是在局域网内部有效的.这些IP地址只适用于局域网内部来进行交流,别的局域网是不可以进入此局域网交流的

在不同的局域网之间,IP地址可以相同,但是在同一个局域网内,IP地址不可以相同

另外,外网之间可以任意的进行交流,局域网只有其内部可以互相交流

那我们是怎么得到这样的103.57.12.60的外网地址呢?又是怎么保证同一个局域网内的不同的设备使用同一个外网地址却返回不同的消息呢?

使用的是运营商的带有NAT机制的路由器,

消息从局域网中的特定的设备到达NAT路由器之后,

NAT路由器将会记录并保存经过此路由器的IP地址,并且为它指定一个端口号,这个端口号是不同的,通过这个端口号可以确定这个局域网中的每一个设备,这样就可以保证将指定的信息发送到指定的设备中

另外,还有一个问题,我们的局域网中的设备想要互相交流怎么办呢?

局域网中的设备不可以直接交流,而是需要通过一个外部设备来进行中转交流.

设备A发送到QQ,设备B从QQ取消息,就是使用到了QQ的服务器来进行交流

IPV6

使用上面的IPV4+NAT机制可以解决IP地址的重复问题,但是使用IPV6可以更加的彻底一点.

IPv6的长度是16个字节,也就是128个比特位,这样算起来的话就是可以表示2^128个IP地址

这个数据是非常的大了,号称可以表示地球上的每一个沙子,所以使用IPv6可以覆盖所有的设备

ipv6真正的解决了IP地址不够用的问题

格式:

两个字节为一组,使用冒号进行分隔.

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Xb1oVQAA-1654179136583)(C:\Users\19625\AppData\Roaming\Typora\typora-user-images\image-20220602201141893.png)]

路由选择

还有一个就是路由选择的问题,就是从源IP到目的IP之间选一条合适的路由路径.

首先我们先来看一下要实现规划路径,路由器需要有什么必要的东西:

路由器里面需要维护一个数据结构:路由表

路由表里面就记录了每一个网络号和它对应的接口号

比如说:

网络号 接口

192.168.1 LAN1 表示这个网络号在LAN1口,我们就可以走这条路

192.168.1 WAN 表示这个网络号在WAN口,我们就可以走这条路

默认 下一跳 表示没有找到这个网络号,但是可以向下一条走一走看一下别的路由 器认不认识这个网络号

对于这个目的地址,如果路由器的路由表中可以找到一个接口,那么就走到这个接口在向后走,直到到达目的地为止

有时候,可能这个路由器可以给出多个路径,那么我们就可以找一个更合适的路了

  • 6
    点赞
  • 36
    收藏
    觉得还不错? 一键收藏
  • 16
    评论
    尽管讲解概念如果同学们是初初相识,真有点晦涩难懂,本人讲解概念的同时,尽量结合实操来讲,这样即加固了概念,同时让同学不会感觉到太烦闷,其实对这些重要基础概念的理解,正是学习过《计算机网络原理》,与直接上手做事的人的区别所在。     古人云,腹有诗书气自华,只要先搞懂了原理,学有所成,今后和别人讨论网络问题的时候,才能够抑扬顿挫底气十足,不怯场!# 网络层首部     初探十二段内容介绍     ipv4和ipv6 版本号表示;首部长度     区分服务,给数据包添加标识 QoS     总长度 Total Length;标识Identification;标志Flags     生存时间 TTL     协议号;首部校验和     实训抓包验证诸项内容# ICMP 差错报告报文格式     数据包类型(详解列表:类型值和代码)     TTL耗尽报告-1     主机不可到达(Destination unreachable)-2     路由重定向(Redirect)-3     给应用程序返回差错报告-4     实例讲解:使用ping命令测试网络判断出问题范围     跟踪数据包路径主要命令介绍:tracert和pathping# ARP 协议     arp 协议本网段与跨网段的工作原理     arp 欺骗的两个目的,阻断连接或截获数据包     arp 欺骗的工作原理阐述,创建阻断连接的实验环境     arp 欺骗演示工具,网络执法官     arp 欺骗防止或阻止措施:         手工绑定两端通信主机的mac地址 -a         同时修改mac地址和ip地址;安装运行wireshark工具 -b         在路由器中绑定通信主机mac地址 -c# 搭建流媒体服务     提供点对点服务:采用TCP协议,而非IGMP协议     提供多播视频:根据多播地址切换频道(IGMP协议-UDP)     根据多播IP地址,参照预定规则,合成多播MAC地址     阐述IGMP跨网段运行方式,与创建跨网段环境     启用多播路由:实现流媒体跨网段转发视频,同时抓包查看ICMP数据包特性# 习题详解    网络层协议

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值