闭关修炼---网络原理之IP协议
IP(Internel Protocol)网际协议,是网络层最主要的协议。
IP地址: IPv4、IPv6(128位)
IPv4: 32位的无符号整数(4个字节),通常,每个字节以十进制表示,中间以.连接——点分法
也是当下主流的
IPv6国家正在大力发展,本章知识点都是基于IPv4。
IP地址由:网络号 + 主机号 组成。
怎么把IP地址拆解成网络号和主机号?
1.静态方法(提前规定好)-------------已经过时了,做了解。
A类: 网络号共8位,首位固定为 0,接下来连续的7位可以自由设定;主机号为24位
B类: 网络号共16位,前两位固定为 1 0,接下来连续的14位可以自由设定;主机号为16位
C类: 网络号共24位,前三位固定为 1 1 0,接下来连续的21位可以自由设定;主机号为8位
D类: 为组播地址,共32位,前四位固定为 1 1 1 0
E类: 为保留地址,共32位,前四位固定为 1 1 1 1
这里举个例子:10.138.25.184
第一步:转换成二进制:00001010 138 25 184
对照上图发现,这是一个A类因为二进制第一个是0
第二步:则是用点分发表示网络号和主机号为:
网络号 10.0.0.0 主机号 0.138.25.184
这种方式淘汰的原因也很好看出来:就是太过于浪费!还是那上面这个例子说,网络号 10.0.0.0 是网络号,那么主机号就有 2^24个,这样算下来,将近两千万台主机,试问哪个公司由两千万台主机?
2.动态的方式,添加一个网络掩码(network mask)的因素
网络掩码是由一台主机或路由器使用的分配位,用以确定如何从一台主机对应的IP地址中获得网络和子网信息,更通俗点说,通过它可以确定一个IP地址的网络/子网部分的结束和主机部分的开始。
子网掩码跟IP地址的长度相等(IPv4位32位,IPv6为128位),对于IPv4来说,子网掩码也是用点分四组十进制来表示的。当子网掩码用二进制表示时,结构非常简单且容易记忆,从左边开始由一段连续的1组成,紧接着又一段连续的0组成直到最后。其中连续的1的长度称为前缀长度,用: /长度 来表示
举个例子
十进制表示 | 前缀长度 | 二进制表示 |
128.0.0.0 | /1 | 10000000 00000000 00000000 00000000 |
255.192.0.0 | /10 | 11111111 11000000 00000000 00000000 |
具体的计算公式是:
IP地址 + 网络掩码 --> 保留前 n 位 (这里的 n 就是有多少个1的意思)为网络号,剩下的是主机号
标准公式:
ip地址 & mask = 网络号 ip地址 & (取反)mask = 主机号
公式有点晦涩难懂不如来个栗子,美滋滋
特殊的IP地址
1.主机号全0的IP,不会分配给主机使用——网络号 192.168.13.193/24 192.168.13.0
2.主机号全1的IP,不会分配给主机使用——广播号 192.168.13.193/24 192.168.13.255
3.127.0.0.0/8,保留为环回地址,一般使用的是127.0.0.1
4.内网地址和公网地址
套用酒店模型,更好理解
我们只有内网地址的电脑,是不能做服务器的(因为做了服务器,也只有内网(同一个网络号)的其他主机能访问我们)
这些地址保留下来,专门给内网使用:
A类:10.0.0.0--10.255.255.255 10.0.0.0/8
B类:172.16.0.0--172.31.255.255
C类:192.168.0.0--192.168.255.255
路由控制
路由控制(Routing):将IP数据报发送给最终目标地址的功能
所有主机和路由器维护一张路由控制表,记录:
- IP地址
- 想到达该IP地址,在当前路由器,数据包的下一步应该是发送到路由器
默认路由:路由表中任何一个地址都能与之匹配的记录
环回地址:localhost(127.0.0.1),如果用这个地址,数据包就不会流向网络
其实路径控制浅显易懂地说就是:
把本机IP到目标IP这一过程看成一个大目标, 在到达目标IP的过程中,把怎末从当前路由器到下一个路由器当作一个小目标。通过主机内部维护着的路由表来完成这一个个小目标,最终到达目标IP
只要工作在网络层及以上的设备,都有路由表。它的具体功能就是:决定当前路由器G是往路由器H发送,而不是向路由器E发送。
闭关修炼---网络原理之IP协议相关推荐
- WinSock API网络编程——TCP/IP协议详解
WinSock API网络编程--TCP/IP协议(http://www.impcas.ac.cn/usr/lujun/browse.asp?id=winsock_tcp) ...
- TCP/IP网络协议栈:IP协议
<TCP/IP网络协议栈:以太网数据包结构.802.3> <TCP/IP网络协议栈:ARP协议详解> <TCP / IP攻击:ARP缓存中毒的基本原理.TCP序列号预测和 ...
- 网络基础网络层--IP协议
网络基础网络层--IP协议 一.IP协议解析 (一)4位版本 (二)4位报头长度 (三)8位服务类型 (四)16位数据报长度 (五)16位分片标识 (六)3位分片标志 (七)13位分片偏移 (八)8位 ...
- 网络基础 TCP/IP协议面试常问知识点
网络基础 TCP/IP协议面试常问知识点 ****************** 如有侵权请提示删除 ********************* 1.网络包的组成: 报头/起始帧分界符--MAC头部-- ...
- Java中的网络和TCP/IP协议
网络和TCP/IP协议 一.网络通信协议 1.1 协议和七层模型 1.2 TCP/IP协议 二.网络通信的实现 2.1 TCP协议通信 2.2 UDP协议通信 前言: 有时候我们会不理解,我们在QQ上 ...
- 网络原理 | TCP/IP中的连接管理机制 重要协议与核心机制
应用层.传输层.网络层.数据链路层.物理层 一.应用层协议 应用层 是程序猿最最经常打交道的一层 其他四层,都是操作系统.驱动.硬件,实现好了的,咱们不需要管 (除非你是系统工程师,驱动开发工程师-- ...
- 通信原理之IP协议,ARP协议 (三)
把这三个协议放到一起学习是因为这三个协议处于同一层,ARP协议用来找到目标主机的Ethernet网卡Mac地址,IP则承载要发送的消息.数据链路层可以从ARP得到数据的传送信息,而从IP得到要传输的数 ...
- Linux TCP/IP网络协议栈:IP协议源码分析
目录 IP协议简介 IP头部 IP数据包的发送 IP数据包的接收 https://mp.weixin.qq.com/s/8WNcTxtD4DBcNtcrR8nz4Q IP协议 是网络的最重要部分,毫不 ...
- 网络编程--TCP/IP协议(二)
目录 前言 一丶TCP协议格式 端口号 序列号 确认号 首部长度 保留字段 标志位字段 窗口大小 检验位 紧急指针 可选项字段 二丶TCP协议的特性 <1>TCP协议的特点 <2&g ...
最新文章
- python基本使用-python基本用法笔记合集
- 分布式事务 常见方法
- 【语言处理与Python】10.1自然语言理解\10.2命题逻辑
- aes 加密_AES加密的安全问题
- 壁式框架内力计算_新手怎样做好框架剪力墙设计,怎样用pkpm出图
- spring事务传播机制源码学习笔记
- [NLP] 中文文本相似度实战
- 外卖系统源码,搭建同城点餐配送服务平台
- 前馈神经网络——神经元
- 错误 E: Could not get lock /var/lib/dpkg/lock-frontend - open (11: Resource temporarily unavailable)
- 超好用的jQuery插件
- 内存颗粒位宽和容量_DDR4内存颗粒--美光篇
- 智慧工地系统_成都智慧工地平台
- Windows环境下搭建nexus私服
- 如何MATLAB实现用ARIMA模型输出参数实施预测
- windows下安装PGSQL14
- 互联网史-chinaren与校内
- 三级等保备案去哪查_民贷天下通过国家信息安全等级保护三级备案
- 2023年专业连锁行业研究报告
- Win11系统提示找不到gpedit.msc文件解决办法