ip地址分类和子网掩码学习笔记
关于ip的一些学习心得
ip的概念其实很好理解,也很形象,就像一个门牌号一样,让人困惑的其实不是ip的概念本身,而是在日常计算机网络使用中,碰到很多有特殊意义的ip地址,例如,127.0.0.1,192.168.1.1,255.255.255.0等,为什么输入127.0.0.1是指向本地?为什么看自己本机ip一般都是192.168.1.x,为什么新买来的路由器一般是在浏览器输入192.168.1.1进入设置,没明白的时候觉得这些ip并不简单,让人捉摸不定,里面一定有很复杂的关系。
其实,这里面并没有很复杂的逻辑关系,简单点来说就是人们规定的,划分那个ip做什么用,有什么用途,都是人根据实际设计实现计算机通信的时候统一规定的,形成了一种规范。比如地址分类,他就是人规定的分类规则,“制定规则->解决问题”就是这样一个思路,造成了很多规则,这些规则也就成了我们要学习的知识,但如果只是硬背规则,不知道规则的来源和要解决什么问题,规则就总容易被忘记。
比如很简单的ip地址的写法:
x.x.x.x 4个数字用点连起来就是ip的写法,为什么要这么写?这个很简单不考虑为什么也能记住,但是如果也去尝试想想为什么会怎样呢,例如想到“人规定的,为了人阅读方便”,就像我们平时记忆手机号码的时候一样,即使没加点,我们也会不自觉的按 131停顿xxxx停顿xxxx 来记或报一个手机号码,所以这个ip格式还蛮符合人的思维模式的,加了几个点无非也是个很长的号码而已,这样的话总比硬生生的记住ip是用4串数字用点号连起来表达好吧。
再比如ip地址的分类,这个其实也很符合人的思维模式,把数字从1开始从小到大按段划分,第一段分给A,第二段分给B,第三段分给C....,就像人切蛋糕分给吃蛋糕的人一样,不会东切一块西切一块的。
ip地址也是按段划分出了ABCDE这几个类,A类地址一般给政府机构,B类一般给大中型公司,C类地址可以给任何人,这个为什么要这么划分,也很符合人的思维模式,好比分蛋糕的时候总要先分给领导,再分给组织,再分给个人一样,这样拿到一个ip地址的时候,也能从这个ip是大是小推断下这个ip地址的“地位”了。
来具体看下A,B,C类ip地址的区别,如下:
------------------------------------------------------------------------------------------------------------------------
A类地址的第1个字节为网络地址,后3个字节为主机地址.
A : 0 XXXXXXX . ( XXXXXXXXX . XXXXXXXXX . XXXXXXXXX )
ps : 重要的先献给zf等大机构 当然要多分点主机啦 网络号范围:【 1---126 】
-----------------------------------------------------------------------------------------------------------------------
B类地址第1,2个字节为网络地址,后两个字节为主机地址
B : 10XXXXXX . XXXXXX. ( XXXXXX . XXXXXX )
ps : 这次多分一些给公司,网络号自然也要增加,主机号位数也对应的调低一点 网络号范围:【 128.0---191.255 】
B类地址第1,2,3个字节为网络地址,最后1个字节为主机地址
-----------------------------------------------------------------------------------------------------------------------
C : 110xxxxx . xxxxxx . xxxxxxxx . (xxxxxxxx)
ps : 分给任何人,网络号继续增加, 主机号位数继续降低。 网络号范围:【 192.0.0---223.255.255 】
D和E就没有主机位了。
-----------------------------------------------------------------------------------------------------------------------
但是,划分这些规则的人也不是圣人,有很多事情并不能提前预见,这样就会出现新的要解决的问题,例如ip不够用,ip浪费,经常会用到一些操作,能不能给个通用ip单独用在一个地方等等。
碰到了新的问题,就会想新的办法,然后制定新的规则,这就是后面碰到的一些特殊ip。
例如在每个ip类别中划出特殊的一段做虚拟私有ip,来解决ip不足的问题,192是C类地址,经常会分配给家庭或小公司,所以我们经常看到自己的ip是192.168.x.x就来自于这里了。
有了虚拟ip,就可以使用一堆虚拟ip共用同一个公共实体ip了,但要借助虚拟ip转实体ip技术如NAT (Network Addresss Translation)。
子网掩码
学习子网掩码时,有这样一个容易让人进入的误区,那就是以为子网掩码增加了可用ip数,其实这话不对,但也不完全错,首先,子网掩码提高了实体ip的利用率,他并没有使ip的总数量增加,反倒是前面说的虚拟ip变相的增加了可用ip总数(包括虚拟ip在内),然后因为子网掩码提高了ip的利用率,使得原本容易被浪费的ip也被利用上了,从这个层面来说又的确增加了可用ip数,但只是从利用率上才能这么理解。
子网掩码可以表示一个ip的网络位是多少,但是A,B,C等类别的ip从定义里就可以看出网络位有多少位了,例如按定义,A类的网络位有8位 ,子网掩码是255.0.0.0,B类是16位,子网掩码是255.255.0.0,C类是24位,子网掩码是255.0.0.0,从定义里都能知道网络位数,干嘛还有子网掩码呢,因为这些只是默认的情况,默认的这些情况会造成ip浪费,所以要在主机位里追加划分子网,这样属于主机位的位数就不再是主机位了,可能变成了网络位,这个时候就可以用子网掩码来表示新的网络位和主机位的情况,当然,你也可以按默认的走。
所以,子网掩码的出现是为了解决ip利用率而出现的,要解决这个问题,就要在默认的ip类别里原来的主机位里划分新的子网,这个时候就要用一个新的规则来表示这个ip的网络位数,这样看起来就明白了子网掩码通常的两个作用了。
ip地址分类和子网掩码学习笔记的更多相关文章
- IP2——IP地址和子网划分学习笔记之《子网掩码详解》
2018-05-04 16:21:21 在学习掌握了前面的<进制计数><IP地址详解>这两部分知识后,要学习子网划分,首先就要必须知道子网掩码,只有掌握了子网掩码这部分内容 ...
- IP地址和子网划分学习笔记之《IP地址详解》
2018-05-03 18:47:37 在学习IP地址和子网划分前,必须对进制计数有一定了解,尤其是二进制和十进制之间的相互转换,对于我们掌握IP地址和子网的划分非常有帮助,可参看如下目录详文. ...
- IP地址和子网划分学习笔记之《预备知识:进制计数》
一.序:IP地址和子网划分学习笔记开篇 只要记住你的名字,不管你在世界的哪个地方,我一定会去见你.——新海诚 电影<你的名字> 在我们的日常生活中,每个人的名字对应一个唯一的身(敏)份(感 ...
- 【转载】IP地址和子网划分学习笔记之《子网掩码详解》
原文地址: https://blog.51cto.com/6930123/2112748 一.子网掩码 IP地址是以网络号和主机号来标示网络上的主机的,我们把网络号相同的主机称之为本地网络,网络号不相 ...
- IP 地址分类和子网掩码
IP 地址分类 IP 地址是由 4 组 8 位二进制表示的,格式为:xxxxxxxx.xxxxxxxx.xxxxxxxx.xxxxxxxx.十进制表示的格式为:xxxx.xxxx.xxxx.xxxx, ...
- 3.IP地址分类_规划_子网掩码
IP地址分类_规划_子网掩码 3.1MAC地址 网卡的身份证号———MAC地址 MAC地址的长度为48位(6个字节),通常表示为12个16进制数,每2个16进制数之间用冒号隔开,如:08:00:20: ...
- IP地址分类、私有地址、子网、子网掩码
IP地址分类介绍 这里讨论IPv4,IP地址分成了A类.B类.C类.C类.E类,如下图所示: 解释: A类以0开头,网络地址有7位,主机地址有24位,举例:A类地址:0 10000000 000000 ...
- IP地址分类及私网IP
5类IP地址: IP地址共有32位字节,其中A~C类IP地址由类标识号.网络地址和主机地址组成,A类标识最高位为0,网络地址为1字节,主机地址为3字节, B类标识最高位为10,网络地址为2字节,主机地 ...
- 如何计算IP地址及CIDR,子网掩码计算
如何计算IP地址及CIDR 一. IP地址概念 IP地址是一个32位的二进制数,它由网络ID和主机ID两部份组成,用来在网络中唯一的标识的一台计算机.网络ID用来标识计算机所处的网段:主 机ID用来标 ...
随机推荐
- spring关于bean的一些配置说明
<context:annotation-config> 是用于激活那些已经在spring容器里注册过的bean上面的注解.该标签主要向容器中掩式定的注了 AutowiredAnnotati ...
- Winform 窗体闪烁 & 任务栏提示
准备: [DllImport("user32.dll")] static extern bool FlashWindowEx(ref FLASHWINFO pwfi); [DllI ...
- 5个CSS3技术实现设计增强
层叠样式表(css)是Web设计的一种语言,CSS的下一代版本CSS3已经蓄势待发.你是否可望开始使用它们却又不知从何下手呢?虽然还有一些新属性没有得到官方的确认,但是一些浏览器已经开始支持来自CSS ...
- iOS开发系列-UIImageView的contentMode
typedef NS_ENUM(NSInteger, UIViewContentMode) { UIViewContentModeScaleToFill, UIViewContentModeScale ...
- SUBTRACT
SUBTRACT 给出一个长度为n序列\(\{a_i\}\),定义一个操作,记做\(con(a,i)\),意思是用\(a_i-a_{i+1}\)替代\(a_i,a_{i+1}\),显然最后一个数字不能 ...
- go网络库cellent实现socket聊天功能
一 .介绍 cellnet是一个组件化.高扩展性.高性能的开源服务器网络库 git地址:https://github.com/davyxu/cellnet 主要使用领域: 游戏服务器 方便定制私有协议 ...
- iserver中的服务数据迁移
今天需要将iserver测试服务器上的空间数据服务(数据源是Oracle Plus)迁移到客户的正式服务器,原想需要很大的工作量,其实是这样简单: 一.保证客户的iserver环境都已安装正确.对于o ...
- MyBatis基础-CRUD
一.mybatis 环境搭建步骤 第一步:创建 maven 工程第二步:导入坐标第三步:编写必要代码(实体类和持久层接口)第四步:编写 SqlMapConfig.xml第五步:编写映射配置文件第六步 ...
- STM32F4X 关于MDK上虚拟串口调试
1. 下载安装VSPD 自行百度安装后,利用VSPD将PC上的两个虚拟串口连接起来.如图我将COM1 和COM2连接起来. a. 点击Addr pair. 可以看到Virtual ports上将两个虚 ...
- 求一个n!中尾数有多少个零
题目描述: 输入一个正整数n,求n!(即阶乘)末尾有多少个0? 比如: n = 10; n! = 3628800,所以答案为2 输入描述: 输入为一行,n(1 ≤ n ≤ 1000) 输出描述: 输出 ...