有关IP和子网掩码的总结
从之前写的那个概括的文章之后,具体细节知识我也不知道写啥子,最近忙于毕业论文和考证,所以就总结一下这方面的知识,本篇的话就先从IP说起。
IP这方面有IPv4和IPv6这两方面的内容,这里就只说IPv4。本篇将会从两个方面讲有关IPv4的东西:IP地址和分类,子网掩码及子网划分/聚合。
1.IP地址和分类
IP地址
IPv4地址分为4段,每段可以由十进制和二进制表示,十进制最小0最大255,二进制最小00 00 00 00,最大11 11 11 11。地址由网络位和主机位组成。
分类
为了方便划分网络大小,可按类将其划分为A,B,C,D,E五种。
A类地址为首段1-126的IP,即1.0.0.0到126.255.255.255。
A类地址的前8位为网络位,第一位为0,剩余7位可分配,二进制表示即00 00 00 01到01 11 11 10(全零全一保留),十进制表示0到126,共有126个地址范围,每个地址范围可分配的主机有16777214台(每段的全零全一保留)。
B类地址为首段128-191的IP,即128.0.0.0到191.255.255.255。
B类地址的前16位为网络位,前两位为10,剩余的14位可分配,二进制表示为
10 00 00 00.00 00 00 00到
10 11 11 11.11 11 11 11
十进制表示为128.0到191.255,共有16384个地址范围,每个地址范围可分配的主机有65534台(每段全零全一保留)。
C类地址为首段192-223的IP,即192.0.0.0到233.255.255.255。
C类地址的前24位为网络位,前三位为110,剩余21位可分配,二进制表示为
11 00 00 00.00 00 00 00.00 00 00 00到
11 01 11 11.11 11 11 11.11 11 11 11
十进制表示为192.0.0到233.255.255,共有2097152个地址范围,每个地址范围可分配的主机有254台(每段全零全一保留)。
D类和E类一起说了,D类为保留的组播地址,不区分网络位和主机位,首段以1110开头,其范围为224.0.0.0到239.255.255.255。E类是用作于试验和开发的保留地址,以1111开头,剩下的除本地广播地址全一以外均可作为E类。
为了节省IP地址,还将IP划分为了私有地址和公有地址,私有地址为非注册地址,专门供企业、学校等组织机构内部使用,公有地址由Inter NIC负责,将IP地址分配给注册并向其提出申请的组织机构,通过此IP直接访问外网。
私有地址有A、B、C三类,分别为A类10.0.0.0-10.255.255.255,B类172.16.0.0-172.31.255.255,C类192.168.0.0-192.168.255.255。
除此之外,还有些特殊地址,127.x.x.x为测试用本地回环地址,0.0.0.0未知地址一般用于缺省路由,255.255.255.255为本地广播地址,主机位全0的地址为网络号,主机位全1的地址为子网广播地址,169.254.x.x这是DHCP没正确获取时的IP。
2.子网掩码及子网划分/聚合
子网掩码
子网掩码由连续的1和0组成,1和0之间不会隔断出现,1对应IP地址的网络位,0对应IP地址的主机位,而子网掩码就是用于区分IP中的网络位和主机位,子网掩码可以由“IP/位数”表示。
例如IP 192.168.1.1,子网掩码 255.255.255.0,对应的二进制数
IP
11 00 00 00.10 10 10 00.00 00 00 01.00 00 00 00
子网掩码
11 11 11 11.11 11 11 11.11 11 11 11.00 00 00 00
简便的表示法将后面的子网掩码改写为对应的二进制的1的数量就是192.168.1.1/24。
子网划分/聚合
子网划分是将一个大的网络划分为多个小的网络,目的是提高IP地址的使用率。
如何进行子网划分,我们先用C类地址来举例:
这里有个C类地址192.168.100.1/24其所在的网段为192.168.100.0/24,他的主机范围为192.168.100.(1-254)/24,广播地址为192.168.100.255/24,子网掩码用上面讲的那么就有24个1,换一下表现形式就是
11 11 11 11.11 11 11 11.11 11 11 11.00 00 00 00
因为前面也说过子网掩码由连续的1和0组成,子网划分可以表示为把跟在1后面的0变为1,这里我们后移1位即
11 11 11 11.11 11 11 11.11 11 11 11.10 00 00 00
这时的IP和子网掩码完整表示就是192.168.100.1/25。而在掩码中,1对应的为IP的网络位,这时我们将IP和掩码对比一下:
11 00 00 00.10 10 10 00.01 10 01 00.00 00 00 01(IP)
11 11 11 11.11 11 11 11.11 11 11 11.10 00 00 00(NATMASK)
所以在IP里面
11 00 00 00.10 10 10 00.01 10 01 00.0(网络位)0 00 00 01(主机位)
其网络位就是192.168.100.0/25(主机位全零),起始主机位就是192.168.100.1/25,广播号为192.168.100.127/25(主机位全一),主机范围就是192.168.100.1到192.168.100.126/25。
之前掩码为24的网就分为了两个,192.168.100.0/24->192.168.100.0/25和192.168.100.128/25。
子网聚合和子网划分类似,不过是将子网划分反过来,其目的是减少路由条目。
这里我们也用一个24位子网掩码的地址192.168.200.100/24来举例,其IP和子网掩码分别转化成二进制为:
11 00 00 00.10 10 10 00.11 00 10 00.01 10 01 00
11 11 11 11.11 11 11 11.11 11 11 11.00 00 00 00
如果要将其聚合为一个23位的,其子网掩码就是
11 11 11 11.11 11 11 11.11 11 11 10.00 00 00 00
对应的网络号的IP
11 00 00 00.10 10 10 00.11 00 10 0(0.00 00 00 00)
十进制为192.168.200.0
对应的主机号范围为
11 00 00 00.10 10 10 00.11 00 10 0(0.00 00 00 01)=192.168.200.1
11 00 00 00.10 10 10 00.11 00 10 0(1.11 11 11 10)=192.168.201.254
这个范围共有510台主机。
通过二进制算法能比较准确,但是有点麻烦,这里总结一下公式:
子网个数:
2的x次方,x为子网位数,例如掩码为24就是有2的24个次方,之前说过子网掩码为1对应的就是网络号,所以可以简便理解为2的子网掩码个次方。
2^(子网掩码位数)
主机个数:
除去网络位之后就是主机位,所以就是2的32减子网位数个次方然后再减去两个保留地址(全一和全零的网络号和广播号)。
2^(32-x)-2,x为子网掩码位数
有关IP和子网掩码的总结的更多相关文章
- IP地址子网掩码主机地址网络号主机号
(1)子网掩码1所对应的位为网络号位 而所对应的位为主机号位 IP地址+子网掩码=网络号: IP地址+子网掩码(反码)=主机号. (2)主机号中的m位被用来表示网络号了,也就是子网号,将0-255划分 ...
- IP地址,子网掩码,默认网关,路由,形象生动阐述
自己的Linux虚拟机已经分配了固定的IP地址(使用无线路由,用的是192.168.1.XX网段),公司的无线网络分配的IP地址是(10.51.174.XX网段) 所以当自己的电脑拿到公司,还想使用桥 ...
- [转]IP地址-子网掩码-默认网关
IP地址:是给每个连接在Internet上的主机分配的一个32bit地址.地址有两部分组成,一部分为网络地址,另一部分为主机地址.IP地址分为A.B.C.D.E 5类.常用的是B和C两类.网络地址的位 ...
- ip,子网掩码,网关,DNS
要配置一个局域网通信的计算机(也就是同一个网络): IP地址 子网掩码 要配置一个跨网段通信的计算机: IP地址 子网掩码 网关(路由使用) 要配置一个可上网的计算机: IP地址 子网掩码 网关 DN ...
- IP地址 子网掩码 默认网关 DNS(转)
突然被问到IP地址方面的知识,吓得我赶紧上网找一找资料,觉得这篇还是写得简单易懂,share一下. Key: 1.IP地址=网络地址+主机地址,(又称:主机号和网络号组成): 2.将IP地址和子网掩码 ...
- IP 分段 子网掩码
子网掩码分网段 例如 200台机器分成4个子网 [ ip 段 ] 200台机器,4个子网,那么就是每个子网50台机器,设定为192.168.10.0,C类的IP,大子网掩码应为255.255.255. ...
- erlang中通过ip和子网掩码,计算地址范围 【二进制和十进制的转换】
在程序中,难免用的二进制和十进制之间的转换.遇到一个场景,通过ip和子网掩码,计算地址范围. 而地址范围为:网络地址+1—— 广播地址 -1 . 网络地址即ip和子网掩码的与的位运算.广播地址为:网 ...
- 西门子S7-300 设置IP、子网掩码
=============================================== 2019/7/17_第1次修改 ccb_warlock == ...
- 一文搞懂网络知识,IP、子网掩码、网关、DNS、端口号
网络的基本概念 客户端:应用 C/S(客户端/服务器) B/S(浏览器/服务器) 服务器:为客户端提供服务.数据.资源的机器 请求:客户端向服务器索取数据 响应:服务器对客户端请求作出反应,一般是返回 ...
随机推荐
- Spring框架集成FreeMarker
一.Spring in Action (转自:http://blog.163.com/zhang-_-jie/blog/static/16178437820105821120822/ ) FreeMa ...
- K3CLOUD 常用数据表
二.K3 Cloud 开发插件<K3 Cloud 常用数据表整理>一.数据库查询常用表 按 Ctrl+C 复制代码 按 Ctrl+C 复制代码 通过表T_META_OBJECTTYPE的F ...
- Mysql批量更新的一个坑-&allowMultiQueries=true允许批量更新(转)
实际上,我们经常会遇到这样的需求,那就是利用Mybatis批量更新或者批量插入,但是,实际上即使Mybatis完美支持你的sql,你也得看看你说操作的数据库是否支持,而阿福,最近就遇到这样的一个坑. ...
- Codeforces 1221 F Choose a Square
题面 不知道大佬们怎么想的,反正我看到这种区间包含性质的并且score只和包含的区间与询问区间挂钩的题,马上就想到了扫描线23333 虽然革命方向无比正确,但却因为SB错误交了5次才 A. WA第一发 ...
- 【説明する】KMP
KMP是一个困扰我很久的算法,听老师或者是学姐讲了差不多有4次了,但是还是搞不太懂,今天终于,终于,终于搞懂了! ——2017-10-29 Vanora 首先推荐一下KMP详解——July 读罢之后内 ...
- The 2019 ICPC China Nanchang National Invitational and International Silk-Road Programming Contest B、H
比赛链接https://www.jisuanke.com/contest/3098?view=challenges B题 拉格朗日插值 题意 T组输入.一个n次多项式 f(x) ,每项的系数不知道, ...
- electron-vue搭建项目
原文链接 使用pdf.js插件与LODOP控件实现前端浏览器静默打印PDF文件 lodop官网地址:http://www.lodop.net/download.html 点击下载,文件里有使用手册 e ...
- windows游戏编程 创建WIN32一个HelloWOrld程序
本系列文章由jadeshu编写,转载请注明出处.http://blog.csdn.net/jadeshu/article/details/22449085 作者:jadeshu 邮箱: jades ...
- bash 基础之五 条件测试、read
一 条件选择if语句 顺序执行:逐条运行: 选择执行: 代码有一个分支:条件满足时才会执行: 两个或以上的分支:只会执行其中一个满足条件的分支: 循环执行:代码片断(循环体)要执行0.1或多个来回: ...
- wqy的C题
wqy的C题 毒瘤! 题意: 你有一张 $ n $ 个点 $ m $ 条边的无向图. 你想在这张图上添加 $ n $ 条有向边,每一条有向边连接两个点 $ u,v $ ,你需要保证 $ u,v $ 在 ...