计算机网络概论(六) | 青训营笔记

102 阅读4分钟

前言

这是我在字节第六届前端青训营的学习第六篇笔记

今天要讲的是关于TCP/IP五层协议中网络层的IP地址部分

TCP/IP五层协议

3. 网络层

昨天我们讲到了路由器和网络层的一些知识和概念,今天我们接着讲关于IP地址的一些相关概念

子网掩码

在这给大家普及一下子网掩码,我们上面说有了 IP 地址MAC 地址,我们就能让任何计算机之间进行通信了,那现在再想想,如果我要用我的计算机给另外一台计算机实现通信,我是不是要判断要通信的计算机是否和我的计算机在同一个 IP 地址中

相当于上面例子中我和我要送东西的朋友是否在一个省,这个时候就需要用子网掩码,我拿着我的 IP 地址和对方的子网掩码通过计算,判断是否在同一个 IP 地址下

如果在同一个IP 地址下,我可以用广播的形式进行通信

如果不在同一个 IP 地址下,我可以先把数据传给我方的路由器,再由我方的路由器把数据传给对方的路由器,最后由对方的路由器把数据传给要接收数据的计算机

这样说,再联系上面已经说过的,我想不难理解了。

IP地址

目前我们普遍使用的是 IPV4 ,它规定,一个网络地址32 位二进制组成,把 32 位平均分成四份,每一份 8 位, 8 位最大能表示的数据是 255

所以IP地址的范围:0.0.0.0~255.255.255.255

一个IP地址分为两部分,分别是网络位主机位

网络位用来标识不同的子网主机位用来标识子网下主机的编号

为什么要分两部分呢?很简单,就好比你想写信给你的女朋友,假设你女朋友的地址是西宁市平安路128号,那么网络位就会直接找到西宁市,主机位帮你找到你的女朋友。

网络位和主机位是如何划分的?使用子网掩码来划分。子网掩码和IP地址差不多,都是由32位二进制数来表示,子网掩码也分为网络部分和主机部分网络部分由1组成,主机部分由0组成

例如,—个IP地址:172.13.10.32

如果前24位网络部分后8位主机位.则子网掩码就是

11111111 11111111 11111111 00000000,写成十进制就是255.255.25S.0

知道了子网掩码,我们就可以判断多个IP地址是否是处于同一个子网下,方法是将两个IP地址与子网掩码分別进行&运算两个数位都为1,运算结果为1,否则为0),然后比较结果是否相同,如果是的话、就表明它们在同一个子网络中,否则就不是。

  • IP1: 172.13.4.58
  • IP2: 172.13.4.90

子网掩码都是255.255.25.0

1. IP1

字段十进制二进制
IP地址172.13.4.5810101100 00001101 00000100 00111010
子网掩码11111111 11111111 11111111 00000000
&运算结果10101100 00001101 00000100 00000000
十进制172.13.4.0

2. IP2

字段十进制二进制
IP地址172.13.4.9010101100 00001101 00000100 01011010
子网掩码11111111 11111111 11111111 00000000
&运算结果10101100 00001101 00000100 00000000
十进制172.13.4.0

计算结果相同,此时两个IP地址在同一个子网内。

今天关于TCP/IP五层协议中网络层的IP地址我就讲到这里啦,那么明天,我就会继续更新IP协议的部分知识