IPV4地址和子网理解
1. 前言
虽然IPv6会在未来逐渐替代IPV4,但是IPV4还会在还当长的时间内存在,并继续发挥作用,所以有必要对IPV4地址和子网有个比较清晰的理解。
2. 关于IPV4地址的表示这里不在详述,主要是怎么去理解地址的分类和子网划分。
关于IP地址分类,一般有两种方法,一种是有分类的地址,如分成A,B,C,D,E类地址;另一种是无分类的地址,即把地址看成不固定的分类。一般比较好理解的分类是更倾向于无分类的地址,而把分类地址看成是无分类地址的特殊情况。
3. 无分类地址的思想:
把整个地址空间分成变长的地址块,前缀(prefix)定义网络,后缀(suffix)定义一个节点或设备。这个prefix长度可以是0至32。分类地址可以看成是无分类地址的特殊情况。
A类地址可以看成prefix长度为8的无分类地址;
B类地址可以看成prefix长度为16的无分类地址。
4. 无分类地址的斜线表示法:
对于无分类地址,定义网络时必须给出前缀长度(记为n),即前缀长度唯一地定义了这个网络地址块。
byte |
. |
byte |
. |
byte |
. |
byte |
. |
/ |
n (prefix length) |
斜线记法(slash notation)的正式名称为无分类域间路由(classless interdomain routing)或者简称为CIDR,发音同单词cider。
网络地址,常常又分为两个部分:一是代表公网的网络ID,一是代表本地主机的主机ID.
>> IP地址:网络ID:主机ID
网络ID:标识一个网络,用于公网传输,即唯一标识一个网络,其长度为这里的前缀长度n,所以,网络ID有时候又称其为网络前缀(或者称为网络地址),标识主机连入的网络。
主机ID:仅在本地网络内部唯一即可,是局域网内部的ID。
任意地址:
5. 使用地址掩码
将前缀部分位设置为全1,后缀部分设置为全0,就形成地址掩码,提出地址掩码主要是方便使用与或排操作计算首末地址,使用地址掩码可以计算如下:
5.1 计算块中的地址数:NOT(Mask)+1
因为除去前缀部分,地址数据即为主机部分的所有组合再加上首地址。
5.2 块的首地址(网络地址):块中的任意地址 AND Mask
5.3 块的尾地址:块中的任意地址 OR [NOT(Mask)]
6. 网络地址:即这块地址的首地址。其优点在于,网络上发送数据包时,路由器在路由表中只需要记住这个网络的首地址,住这个网络发送即可,因为主机部分都是相同的,这样大大减小了路由表记录数。
7. 地址块分配原则:
7.1 请求地址址块N:必须是2的幂,原因是上面说过,地址数, 或者反过来,从两公式看出,N必须为2的幂。
7.2 分配的地址块必段是地址空间内连续的地址块,另外,块的首地址必须能被块地址数整除,原因为首地块必须是前缀后面跟32-n个0位构成。即
首地址=10进制前缀x=10进制前缀XN
8. 子网:将地址块再划分成多个更小的网络,将子网分给各个组织使用,即子网,这正是网络分层结构的体现,划分子网时同样需要遵循几个原则。即
8.1 每个子网的地址数应为2的幂。
8.2 每个子网的前缀长度计算公式为
8.3 每个子网的起始地址应该被这个子网的地址总数整除。
9. 专有地址及其说明
专有地址分为5类,分别说明如下:
9.1 this-host address(本机地址)
只有一个地址,即:0.0.0.0/32。为什么这样设计,因为如果主机想要发送数据报,又不知道本机地址,那么使用这个地址作为源地址。
9.2 limited-broadcast(受限的广播地址)
只有一个地址,却255.255.255.255/32。用于向网络中的所有设备发送数据报,路由器会阻止目标主机为该地址的数据包发往本网络之外,即受限的广播,只能在本网络中发送。
9.3 private-address(私有地址)
4个地址块被划分为作为私有地址,分别为:
10.0.0.0/8
172.16.0.0/12
192.168.0.0/6
169.254.0.0/6
9.4 multicast address(多播地址)
地址块为224.0.0.0/4
9.5 loopback address(环回地址)
环回地址为127.0.0.0/8,其作用为在本机测试基于tcp/ip的程序以及主机内进程间通信,本机既作为服务器,又作为客户端,本地址作为目标地址的数据包不会离开本机,默认使用127.0.0.1,因为首地址是网络地址不能占用,故而从127.0.0.1开始。其实,主机地址可以使用任意地址,不一定要使用127.0.0.1,例如使用127.0.0.2也是可以的,因为tcp/ip协议软件并不会检查主机部分。ping 127.0.0.1和ping 127.0.0.2是一样的效果。
IPV4地址和子网理解相关推荐
- 【计网笔记03】计算机网络之局域网、广域网、VLAN虚拟局域网、IPv4地址、子网划分和子网掩码
这篇文章,主要介绍计算机网络之局域网.广域网.VLAN虚拟局域网.IPv4地址.子网划分和子网掩码. 目录 一.数据链路层 1.1.局域网体系结构 (1)局域网介绍 (2)拓扑结构
- 命题作文:在一棵IPv4地址树中彻底理解IP路由表的各种查找过程
这是一篇命题作文.近期一直想写点东西,但一直找不到题目,正好收到一封邮件,有人问我Linux路由表的布局问题以及路由缓存的问题,加之前些日子又帮人做了一个片上路由表,所以觉得这是个好题目,索性花了多半 ...
- 命题作文 在一棵IPv4地址树中彻底理解IP路由表的各种查找过程
这是一篇命题作文.近期一直想写点东西,但一直找不到题目,正好收到一封邮件,有人问我Linux路由表的布局问题以及路由缓存的问题,加之前些日子又帮人做了一个片上路由表,所以觉得这是个好题目,索性花了多半 ...
- 在一棵IPv4地址树中彻底理解IP路由表的各种查找过程
1.IPv4地址空间树 IPv4的整个地址空间可以构成一棵完美的二叉树,因为它完全占满了整个4G的地址空间.这棵树如下所示: 需要指明的是,完全画出这幅图是不可能的,如果一个节点的直径小到1mm(这意 ...
- 计算机网络(四)—— 网络层(3):IPv4地址
计算机网络系列内容的学习目录→\rightarrow→谢希仁计算机网络学习系列内容汇总. 3. IPv4地址 3.1 IPv4地址概述 3.1.1 课后练习 3.2 分类编址的IPv4地址 3.2.1 ...
- 4.3 计算机网络之IPv4(IPv4分组、IPv4地址、NAT、子网划分与子网掩码、CIDR、ARP协议、DHCP、ICMP)
文章目录 0.思维导图 1.TCP/IP协议栈 2.IPv4分组 (1)IPv4分组格式 (2)IP数据报分片 (3)网络层转发分组的流程 3.IPv4与NAT (1)IPv4地址 ① 组成与分类 ② ...
- 全球 IPv4 地址耗尽,IPv6 来了!
本文作者:robintang,腾讯 WXG 后台开发工程师.转载自「 云加社区」. 就在昨天,2019 年 11 月 26 日,全球 43 亿个 IPv4 地址正式耗尽,很多人表示忧虑.不过不用担心, ...
- IPv4地址分类及特征
IPv4地址分类及特征 IP地址后斜杠和数字代表的意思 其中有这样一个IP地址的格式:IP/数字,例如:111.222.111.222/24 这种格式平时在内网中用的不多,所以一下子看不懂,最后查了资 ...
- IP 分类地址、子网划分你还在混淆不清吗?别怕!今天全家桶来喽
前言 前段时间,有读者希望我写一篇关于 IP 分类地址.子网划分等的文章,他反馈常常混淆,摸不着头脑. 那么,说来就来!而且要盘就盘全一点,顺便挑战下我斗帝强者的图解功力,所以就来个 IP 基础知识全 ...
最新文章
- 欢聚时代java面试_欢聚时代面试经验
- docker 删除容器_Docker (二) Windows10专业版安装教程
- state.sls与state.highstate区别
- ElementUI中el-radio-group使用v-model绑定是属性为String字符串类型时不回显数据
- 为了找到你,CTO 和你唠唠研发都做啥?
- HTTPS 工作原理和 TCP 握手机制
- Git使用教程:最详细、最傻瓜、最浅显、真正手把手教!(转载学习)
- angular js 使用pdf.js_排名靠前的几个JS框架发展趋势和前景
- 多个 gradle 文件夹 \.gradle\wrapper\dists\ 设置gradle不是每次都下载
- hashmap hash冲突怎么解决_HashMap原理及冲突之简谈
- linux tab的含义,理解Linux中crontab定时器里的 21 含义 - 金牛座, 爬山虎, PHPCreeper, Workerman, Swoole, PHP爬虫引擎, PHP爬...
- c# Open Source
- Zookeeper 概念
- Win软件 - Listary
- 监控视频存储解决方案
- python视频教程唐学韬-python
- c语言代码混淆器,工具:c 混淆器——AvIator
- 激活码方式注册的实现原理述
- 新年贺卡用python_新年贺卡图片手工制作精美简单
- vulnhub inclusiveness: 1