计算机网络-IP类型判断
第一个类别为A类,最后一个类别为E类,前边三个类别(A类、B类和C类)被用来标识工作站、路由器、交换机以及其他设备,而最后两个类别(D类和E类)被保留做特殊用途。
一个IP地址由32个比特位构成,这就意味着它有四个字节长,IP地址的第一个八位位组(或者说前八个比特、第一个字节)就足于决定该IP地址究竟属于那个类别。同时,根据IP地址归属的这个类别的属性我们就能决定IP地址的那个部分代表网络ID,那个部分代表主机ID。
所有的A类网络都有一个总共7比特的网络ID部分(第8位恒为0)和24个比特的主机ID部分,现在我们需要做的所有事情就是计算这7位比特将含有多少中可能性:2的7次方为128,所以A类地址可以包含128个大型网络,同时对于主机ID来说,2的24次方为16,777,216,所以每个A类网络中可以包含16,777,216个主机,但是这16,777,216个主机地址中有两个不能使用,一个用来作为该网络地址,另外一个用来作为该网络内的广播地址(查看本页末尾部分的表格)。这也是我们在计算某个网络中的“合法”主机数目总是减去2的原因,所以,如果我问你在一个A类网络中最多可以有多少个“合法”主机时,你应该回答16,777,214而不是16,777,216。
当我们申请其它的两个类别(B类地址和C类地址)的地址的时候,情形和申请A类地址相同,唯一不同的是,由于不同类别中用来标识网络和标识主机的地址值域不一样,造成每类地址所涵盖的网络数目以及每个网络中的最大主机数目个数不一样。
B类网络中有14个比特位用来表示网络ID(第15位、第16位被分别设置成0和1而不能改变)和16个比特位来表示主机ID,这意味着可以拥有达到“2的14次方等于16,384”个B类网络,每个B类网络中还可以拥有“2的16次方等于65,536”个主机,当然了,这其中包括两个不能用主机ID,因为他们被分别用来标识整个网络和网络中的广播地址(查看本页末尾部分的表格)。所以,如果我问你在一个B类网络中最多可以有多少个“合法”主机时,你应该回答65,534而不是65,536。
C类网络中有21个比特位用来表示网络ID(第22位、第23位、第24位被分别设置成0、1和1而不能改变)和8个比特位来表示主机ID,这意味着可以拥有达到“2的21次方等于2,097,152”个C类网络,每个C类网络中还可以拥有“2的8次方等于256”个主机,当然了,这其中包括两个不能用主机ID,因为他们被分别用来标识整个网络和网络中的广播地址(查看本页末尾部分的表格)。所以,如果我问你在一个C类网络中最多可以有多少个“合法”主机时,你应该回答254而不是256。
现在,即使我们拥有三个类别的IP地址可以使用,这儿仍需要保留部分IP地址以备特殊使用,这并不意味着你不能将他们赋给一个工作站,但是,如果你真的将一个保留地址赋给了你的工作站,它将使你的网络出现问题。基于此,我们要避免使用这些IP地址。
IP地址 特殊作用
网络地址 0.0.0.0 用来引用一个缺省路由器,该路由器能简化被IP协议使用的路由表。
网络地址 127.0.0.0 为环回程序预留,地址127.0.0.1常用来引用本机地址,如果使用这个地址,应用程序将可能将远程的该地址识别成本机地址。
将所有主机ID部分置0的地址(标识网络的地址,例如192.168.0.0)
该地址用来引用该网络本身,例如192.168.0.0可以用来标识192.168.地址段的网络,这种表示方式经常用在路由表中。
将所有主机ID部分置1的地址(子网广播地址,例如192.168.255.255)
这些IP地址都是广播地址不能使用,例如:125.255.255.255(A类地址)190.30.255.255(B类)203.31.218.255(C类),参看“多播&广播”部分以获取更多信息
将所有比特位都置1的地址(网络广播地址,255.255.255.255)
这是一个绝对不能使用的地址,不管它拥有那种IP类别的地址
计算机网络-IP类型判断的更多相关文章
- C#与Java对比学习:类型判断、类与接口继承、代码规范与编码习惯、常量定义
类型判断符号: C#:object a; if(a is int) { } 用 is 符号判断 Java:object a; if(a instanceof Integer) { } 用 inst ...
- 【跟着子迟品 underscore】常用类型判断以及一些有用的工具方法
Why underscore 最近开始看 underscore.js 源码,并将 underscore.js 源码解读 放在了我的 2016 计划中. 阅读一些著名框架类库的源码,就好像和一个个大师对 ...
- js框架设计1.4类型判断
这篇司徒大神介绍了很多js的 不靠谱类型判断.篇幅也是第一篇中最常的 ,经阅读后,以后一定要用框架的自带的类型判断,万万不可随便乱用js原生判断.
- Object.prototype.toString.call()进行类型判断
为什么类型判断用到Object.prototype.toString.call()进行类型判断,而不用typeof()呢? 然后翻了一下资料: Typeof 在使用 ]));/));));//[obj ...
- 17.C#类型判断和重载决策(九章9.4)
今天来结束第九章,聊下我们经常忽略,但是编译器会帮我们完成的"类型判断和重载决策",理解编译器如何帮我们完成,相信在写代码时会更明确,避免一些编译出错,排查的问题,让我们开发更给力 ...
- php变量的判空和类型判断
(1)var_dump(); 判断一个变量是否已经声明并且赋值,并且打印类型和值 <?php $a; var_dump($a);//输出null <?php var_dump($a);// ...
- [改善Java代码]在equals中使用getClass进行类型判断
建议47: 在equals中使用getClass进行类型判断 本节我们继续讨论覆写equals的问题.这次我们编写一个员工Employee类继承Person类,这很正常,员工也是人嘛,而且在JEE中J ...
- JavaScript 类型判断 —— typeof 以及 instanceof 中的陷阱
JavaScript中基本类型包含Undefined.Null.Boolean.Number.String以及Object引用类型.基本类型可以通过typeof来进行检测,对象类型可以通过instan ...
- Underscore.js 常用类型判断以及一些有用的工具方法
1. 常用类型判断以及一些有用的工具方法 underscore.js 中一些 JavaScript 常用类型检查方法,以及一些工具类的判断方法. 首先我们先来谈一谈数组类型的判断.先贴出我自己封装好的 ...
随机推荐
- 使用NW.js封装微信公众号菜单编辑器为桌面应用
开发微信公众号的朋友都会遇到一个常见的需求就是修改自定义菜单,如果每个人都去开发这个不经常使用的功能确实有点浪费时间.前段时间在github上找到一个仿企业号的菜单编辑界面,结合微信的C# SDK开发 ...
- 初识Spring MVC
1.什么是Spring MVC? Spring MVC属于SpringFrameWork的后续产品,它提供了构建 Web 应用程序的全功能 MVC 模块,与Struts2一样是一种优秀MVC框架,不同 ...
- linux lin命令
ln是linux中又一个非常重要命令,它的功能是为某一个文件在另外一个位置建立一个同不的链接,这个命令最常用的参数是-s,具体用法是:ln –s 源文件 目标文件. 当我们需要在不同的目录,用到相同的 ...
- 美女jquery图片播放器插件
相册在线查看http://keleyi.com/keleyi/phtml/image/6.htm 可全屏,可拖动,可自动播放的jquery图片展示插件 使用说明:1.引用css文件:<link ...
- 【转】【译】JavaScript魔法揭秘--探索当前流行框架中部分功能的处理机制
推荐语: 今天推荐一篇华为同事的同事翻译的一篇文章,推荐的主要原因是作为一个华为员工居然晚上还能写文章,由不得小钗不佩服!!! 其中的jQuery.angular.react皆是十分优秀的框架,各有特 ...
- iOS多图片下载
iOS多图片下载.在cell里面下载图片.做了缓存优化. (app.icon是图片地址) // 先从内存缓存中取出图片 UIImage *image = self.images[app.icon]; ...
- Android开发6:Service的使用(简单音乐播放器的实现)
前言 啦啦啦~各位好久不见啦~博主最近比较忙,而且最近一次实验也是刚刚结束~ 好了不废话了,直接进入我们这次的内容~ 在这篇博文里我们将学习Service(服务)的相关知识,学会使用 Service ...
- Alvin
Alvin Zhao 東京都 港区虎ノ門2-10-4 ホテルオークラ東京 M 663 電話番号: 0335820111
- Material Design 概念,环境和基本属性
Material Design 概念,环境和基本属性 Material Design是随Android 5.0推出的一种设计概念, 涉及到了跨平台和设备的视觉,动态,交互设计等方面. 设计概念 M ...
- Linux下安装使用Solr
Linux下安装使用Solr 1.首先下载Solr.mmseg4j分词包.tomcat并解压,这用google.百度都可以搜索得到下载地址. 2.因为要使用到中文分词,所以要设置编码,进入tomcat ...