网络基础之二:数制、ip地址及子网超网划分

一、不同数制之间的转换基本概念

1、基本概念

数制

计数的规则

在人们使用最多的进位计数制中,表示数的符号在不同的位置上时所代表的数的值是不同的。

数码

数制中表示基本数值大小的不同数字符号

例如,十进制有10个数码:0、1、2、3、4、5、6、7、8、9。

基数

数制所使用数码的个数

例如,二进制的基数为2;十进制的基数为10。

位权

数制中某一位上的1所表示数值的大小(所处位置的价值)。

例如,十进制的123,1的位权是100,2的位权是10,3的位权是1。

二进制中的 1011 ,第一个1的位权是8,0的位权是4,第二个1的位权是2,第三个1的位权是1


十进制D(decimal)

人们日常生活中最熟悉的进位计数制。

在十进制中,数用0,1,2,3,4,5,6,7,8,9这十个数码来描述。计数规则是逢十进一,借一当十。

1、非十进制转换成十进制

方法是:将其它进制按权位展开,然后各项相加,就得到相应的十进制数。

例1: N=(10110.101)B=(?)D

按权展开N=1*2^4+0*2^3+1*2^2+1*2^1+0*2^0+1*2^-1+0*2^-2+1*2^-3

=16+4+2+0.5+0.125 =(22.625)D

    1)、二进制转十进制

     bn×2^(n-1)+ bn-1×2^(n-2)…+b1×2^0

练习:(11010)2转换成十进制   26

(1001011)2转换成十进制       75

    2)、八进制转换成十进制

      bn×8^(n-1)+ bn-1×8^(n-2)…+b1×8^0

练习:(26356)8转换成十进制    11502  

    3)、十六进制转换成十进制

     bn×16^(n-1)+ bn-1×16^(n-2)…+b1×160

练习:(26345)16转换成十进制    156485

2、十进制转换成非十进制

    1)、十进制转换成二进制

除基取余法用基数相除,然后反序(由后向前取)取余数

wKiom1YdzP2iuyrWAAA57PPaA-k364.jpg

  2)、十进制转换成八进制

除基取余法

   3)、十进制转换成十六进制

除基取余法


二进制B(binary)

        二进制是计算技术中广泛采用的一种数制

二进制数据是用0和1两个数码来表示的数。它的基数为2

进位规则是“逢二进一”,借位规则是“借一当二由18世纪德国数理哲学大师莱布尼兹发现。

当前的计算机系统使用的基本上是二进制系统,数据在计算机中主要是以补码的形式存储的。

计算机中的二进制则是一个非常微小的开关,用“开”来表示1,“关”来表示0。

将一个二进制数换算为八进制

从小数点开始,整数部分向左、小数部分向右,每3位为一组用一位八进制数的数字表示,不足3位的要用“0”补足3位,就得到一个八进制数。

八进制数转换成二进制数:把每一个八进制数转换成3位的二进制数,就得到一个二进制数。

例如,1010011:

001  010  011

1      2      3

二进制数转换成十六进制数

从小数点开始,整数部分向左、小数部分向右,每4位为一组用一位十六进制数的数字表示,不足4位的要用“0”补足4位,就得到一个十六进制数。

十六进制数转换成二进制数:把每一个十六进制数转换成4位的二进制数,就得到一个二进制数。

(712)8 = (1110 0101 0)2 = (1CA)16


八进制O(octal)

         Octal,缩写OCT或O,一种以8为基数的计数法,采用0,1,2,3,4,5,6,7八个数字,逢八进1。

八进制化为二进制

规则:按照顺序,每1位八进制数改写成等值的3位二进制数(如果需要的话,在前面补零)次序不变。

例: (17.36)8 = (001 111 .011 110)2 = (1111.01111)2

八进制化为十六进制

先将八进制化为二进制,再将二进制化为十六进制。

例:(712)8 = (111 001 010)2 = (1CA)16


十六进制H (Hexadecimal)

   在十六进制中,数用0,1,…,9和A,B,…,F(或a,b,…,f)16个符号来描述。计数规则是逢十六进一

十六进制化为二进制

规则:按照顺序,每1位八进制数改写成等值的四位二进制数(如果需要的话,在前面补零)次序不变。

例: (17.36)8 = (001 111 .011 110)2 = (1111.01111)2

十六进制化为十六进制

先将十六进制化为二进制,再将二进制化为八进制。


wKioL1YdzNPR4rToAAEiLOUHyA4091.jpg


标准表示

    在数制使用时,常将各种数制用简码来表示:

如十进制数用D表示或省略;二进制用B来表示;十六进制数用H来表示

如:十制数123表示为:123D或者123;二进制数1011表示为:1011B;十六进制数3A4表示为:3A4H。

另外在编程中十六进制数也用“0x”作为开头


二、IP地址

1)、IANA

IANA 就是指(Internet Assigned Numbers Authority) ,Internet号分配的机构。负责对IP地址分配规划以及对TCP/UDP公共服务的端口定义。

2)、IP地址的基本格式

    IPv4使用32位(4字节)地址,因此整个地址空间中有4,294,967,296(2^32)个地址,也就是近43亿个地址。

IPv4地址在计算机内部是以二进制形式表示,是一个32位的二进制数,通常被分割为4个“8位二进制数”(也就是4个字节)。

IP地址通常用“点分十进制”表示成(a.b.c.d)的形式,其中,a,b,c,d都是0~255之间的十进制整数。

例:点分十进IP地址(100.4.5.6),实际上是32位二进制数(01100100.00000100.00000101.00000110)。

地址格式为IP地址=网络地址+主机地址 或 IP地址=网络地址+子网地址+主机地址。 

3)、子网掩码

    子网掩码的作用就是获取主机IPv4地址中的网络地址信息

用于区别主机通信不同情况,选择不同路由

子网掩码与IP地址一样,也是由32位二进制组成的。它被分成“网络ID”和“主机ID”两部分。

“网络ID”部分全是“1”;“主机ID”部分全是“0”表示。

4)、IP地址分类 

IPv4地址的基本分类

五个类别:A、B、C、D和E。

A、B和C类用于单播通信中设备IP地址分配,D类属于组播地址,用于组播通信,E类是保留地址。

它们均有不同的网络类别(也就是“网络ID”)长度,用来标识不同的网络类别,剩余的部分被用来识别网络内的主机(称之为“主机ID”)。

“网络ID”用来确定每类网络中有的网络数

“主机ID”则用来确定每个网络中有的IP地址数

       最初设计互联网络时,为了便于寻址以及层次化构造网络,每个IP地址包括两个标识码(ID),即网络ID和主机ID

      同一个物理网络上的所有主机都使用同一个网络ID,网络上的一个主机(包括网络上工作站,服务器和路由器等)有一个主机ID与其对应。IP地址根据网络ID的不同分为5种类型,A类地址、B类地址、C类地址、D类地址和E类地址。


大:0 000 0000-0 111 1111 0-127     A

中:10 00 0000-10 11 1111 128-191   B

小:110 0 0000-110 1 1111 192-223   C

    1110  0000-1110 11111 224-239

    1111  0000-1111  1111 240-255

主机位全0:网络地址

主机位全1:广播地址

A:1-126 

     2^7-2个网络

     每个网络的主机:2^24-2

B:128-191

     2^14个网络

     每个网络中的主机:2^16-2

C:192-223

     2^21个网络

     每个网络中的主机:2^8-2 

1. A类IP地址 

       A类地址的网络ID为1~126。

       一个A类IP地址由1字节的网络地址和3字节主机地址组成,网络地址的最高位必须是“0”, 地址范围从1.0.0.0 到126.0.0.0,默认网络掩码为:255.0.0.0;可用的A类网络有126个,每个网络能容纳1亿多个主机。 


注意,数字0和 127不作为A类地址,数字127保留给内部回送函数,而数字0则表示该地址是本地宿主机,不能传送。

2. B类IP地址 

     B类地址的网络ID为128~191。

     一个B类IP地址由2个字节的网络地址和2个字节的主机地址组成,网络地址的最高位必须是“10”,地址范围从128.0.0.0到191.255.255.255,默认网络掩码为:255.255.0.0;可用的B类网络有16382个,每个网络能容纳6万多个主机 。 

3. C类IP地址 

    C类地址网络ID为192~223。

     一个C类IP地址由3字节的网络地址和1字节的主机地址组成,网络地址的最高位必须是“110”。范围从192.0.0.0到223.255.255.255,默认网络掩码为:255.255.255.0;C类网络可达209万余个,每个网络能容纳254个主机。 
4. D类地址用于多点广播(Multicast)。 
    D类IP地址第一个字节以“1110”开始,它是一个专门保留的地址。它并不指向特定的网络,目前这一类地址被用在多点广播(Multicast)中。多点广播地址用来一次寻址一组计算机,它标识共享同一协议的一组计算机。 
5. E类IP地址 
     以“11110”开始,为将来使用保留。 


有类/无类IPV4网络

有类

    A、B、C、D、E类IPv4地址

    每类IPv4地址都有固定长度的网络ID,有固定的子网掩码

    大大降低了IPv4地址的利用率和可用的网络数

无类(VLSM 可变长子网掩码)

    每个IPv4地址的网络ID长度都可以不固定

    通常把以前的有类网络称之为标准网络,而把网络ID长度大于对应标准网络的网络称之为“子网”


网络地址

     用来标识一个有类或无类网络的地址,是对应网络或子网的第一个IPv4地址,即“主机ID”部分全为0的IPv4地址

主机地址

    除了网络地址和广播地址这两个一头一尾的地址外,中间的其他所有地址都是主机地址,可以直接分配给主机使用

广播地址

    是一个有类或无类网络中的最后一个IPv4地址,即“主机ID”部分全为1的IPv4地址

IPv4地址前缀表示形式

    在一个IPv4地址后面先加上一个斜杠(/),然后在这个斜杠后面直接写出该地址所在网络的“网络ID”,或者“子网掩码”长度

如192.168.1.10/24代表的是一个标准的C类网络IPv4地址,而10.1.0.10/8则代表了一个标准的A类网络IPv4地址


私有IP地址

在IP地址3种主要类型里,各保留了3个区域作为私有地址,其地址范围如下: 

A类地址:10.0.0.0/8(10.0.0.0,255.0.0.0)    1个网络  每个网络的主机数:2^24 -2

B类地址:172.16.0.0/12(172.16.0.0,255.240.0.0)

        172.16.0.1--172.31.255.254            16个网络  每个网络的主机数:2^20 -2

C类地址:192.168.0.0/16(192.168.0.0,255.255.0.0) 256个网络  每个网络的主机数:2^16 -2

全零(“0.0.0.0”)地址对应于当前主机。全“1”的IP地址(“255.255.255.255”)是当前子网的广播地址。

查阅百度知道里一些说法如下:

1. 严格说来,0.0.0.0已经不是一个真正意义上的IP地址了。它表示的是这样一个集合:所有不清楚的主机和目的网络。这里的“不清楚”是指在本机的路由 表里没有特定条目指明如何到达。对本机来说,它就是一个“收容所”,所有不认识的“三无”人员,一 律送进去。如果你在网络设置中设置了缺省网关,那么Windows系统会自动产生一个目的地址为0.0.0.0的缺省路由。

2. 网络中0.0.0.0的IP地址表示整个网络,即网络中的所有主机。

它的作用是帮助路由器发送路由表中无法查询的包。如果设置了全零网络的路由,路由表中无法查询的包都将送到全零网络的路由中去。

0.0.0.0 表示监听本地所有ip地址,其他电脑是可以访问的,并且修改ip不受响。
127.0.0.1 表示只监听本机回环地址,只能本机访问。
x.x.x.x ip地址,是只监听这个ip。修改ip后程序就不能监听了。需要手动修改软件监听地址才可以用
localhost 只是 127.0.0.1 的别

169.254开头的IPv4地址

   “自动专用IP地址”,其地址范围为:169.254.0.0/16,子网掩码为255.255.0.0。

127.0.0.1地址

   “环回地址”(Loopback Address),是主机IP堆栈内部的IPv4地址,主要用于网络软件测试以及本地机进程间通信;在IP网络中就是用来测试主机TCP/IP协议是否工作正常v0.0.0.0地址

0.0.0.0地址

    代表所有IPv4地址,常用于默认路由配置,或者代表整个不确定的IP地址范围


VLSM子网划分:

   把原来标准网络IPv4地址中的“网络ID”部分向“主机ID”部分借位,

把一部分原来属于“主机ID”部分的位变成“网络ID”的一部分(通常称之为“子网ID”)

原来的“网络ID”+“子网ID”=新“网络ID”

子网ID”长度决定了可以划分子网的数量

     全0子网:“全0子网”代表的是对应子网的“子网ID”部分各位都是0,是第一个子网

     全1子网:“全1子网”代表的是对应子网的“子网ID”部分各位都是1,是最后一个子网

wKiom1YdzOuCRKcjAAFjzO4WloA780.jpg

二进制数的逻辑运算

二进制数的逻辑运算包括

            逻辑加法(“或”运算)

            逻辑乘法(“与”运算)

            逻辑否定(“非”运算)

            逻辑“异或”运算

(1)逻辑“或”运算

又称为逻辑加,可用符号“+”或“∨”来表示。逻辑“或”运算的规则如下:

0+0=0或0∨0=0

0+1=1或0∨1=1

1+0=1或1∨0=1

1+1=1或1∨1=1

可见,两个相“或”的逻辑变量中,只要有一个为1,“或”运算的结果就为1。仅当两个变量都为0时,或运算的结果才为0。计算时,要特别注意和算术运算的加法加以区别。

(2)逻辑“与”运算

又称为逻辑乘,常用符号“×”或“・ ”或“∧”表示。“与”运算遵循如下运算规则:

0×1=0或0・1=0或0∧1=0

1×0=0或1・0=0或1∧0=0

1×1=1或1・1=1或1∧1=1

可见,两个相“与”的逻辑变量中,只要有一个为0,“与”运算的结果就为0。仅当两个变量都为1时,“与”运算的结果才为1。

(3)逻辑“非”运算

又称为逻辑否定,实际上就是将原逻辑变量的状态求反,其运算规则如下:

2-1_clip_image010.gif

可见,在变量的上方加一横线表示“非”。逻辑变量为0时,“非”运算的结果为1。逻辑变量为1时,“非”运算的结果为0。

4)逻辑“异或”运算 

“异或”运算,常用符号“1-2-2_clip_image014_0007.gif”或“A.JPG”来表示,其运算规则为:

01-2-2_clip_image014_0001.gif0=0 或 0A.JPG0=0

01-2-2_clip_image014_0001.gif1=1 或 0A.JPG1=1

11-2-2_clip_image014_0001.gif0=1 或 1A.JPG0=1

11-2-2_clip_image014_0001.gif1=0 或 1A.JPG1=0

可见:两个相“异或”的逻辑运算变量取值相同时,“异或”的结果为0。取值相异时,“异或”的结果为1

以上仅就逻辑变量只有一位的情况得到了逻辑“与”、“或”、“非”、“异或”运算的运算规则。

当逻辑变量为多位时,可在两个逻辑变量对应位之间按上述规则进行运算

特别注意,所有的逻辑运算都是按位进行的,位与位之间没有任何联系,即不存在算术运算过程中的进位或借位关系。下面举例说明。

【例1.1】 如两变量的取值 X=00FFH,Y=5555H

Z1=XYZ2=XYZ3=2-1_clip_image012.gifZ4=X1-2-2_clip_image014_0000.gifY的值。

解:X=0000000011111111

Y=0101010101010101

则:Z1=0000000001010101=0055H

Z2=0101010111111111=55FFH

Z3=1111111100000000=FF00H

Z4=0101010110101010=55AAH

wKiom1Yd8qCDrRE3AAFCCgJDwZ4696.jpg


子网掩码是一个网络或一个子网的重要属性

路由器在和相邻路由器交换路由信息时,必须把自己所在网络(或子网)的子网掩码告诉相邻路由器。

路由器的路由表中的每一个项目,除了要给出目的网络地址外,还必须同时给出该网络的子网掩码。

若一个路由器连接在两个子网上就拥有两个网络地址和两个子网掩码。

wKiom1Yd-VuCLIlyAAEkzX-FP00655.jpg


练习:

1、一公司原来使用的是192.168.1.0/24这个标准网络,现在想为公司中每个部门(共6个)单独配置一个子网,其中最大一个部门要分配IPv4地址的数量不超过25个。求每个子网的子网掩码、地址范围、网络地址和广播地址。

子网数: 2^2<6<2^3

子网掩码为:/27,   255.255.225.224

每个子网的可用主机数:2^5 -2=30>25

每个子网的地址范围:0-31,32-63,64-95,96-127,128-159,160-191,192-223,224-255

就是说192.168.1.30/27和192.168.1.60/27属于不同网络,要三层路由能才互通


2、IPv4地址为202.112.14.137,子网掩码为255.255.255.224,求:所在子网的网络地址和广播地址各是什么?

IP:   202.112.14.1000 01001

掩码:255.255.255.1110 0000

子网:202.112.14.1000 0000   

子网数:2^3=8

每个子网的地址范围:0-31,32-63,64-95,96-127,128-159,160-191,192-223,224-255

答案:网络地址:202.112.14.128

      广播地址:202.112.14.159


超网(supernetting)

子网划分是把一个网络划分成为多个不同的网络,而构造超网则是把网络前缀都相同的连续的ip地址组成一个“CIDR地址块”。

其中CIDR(Classless Inter_Domain Routing)是无分类域间路由选择。使用超网能够减少路由表中的项目、减轻路由表的负担。

CIDR消除了传统的A类、B类和C类地址以及划分子网的概念,把32位的IP地址划分为两个部分。如:128.14.35.7/20是某个CIDR地址块中的一个地址,其前20位是网络前缀(用下划线表示的部分),后面的12位为主机号:

128.14.35.7/20= 10000000 00001110 00100011 00000111

其地址掩码,也叫子网掩码是:11111111 11111111 11110000 00000000 (20个连续的1),即斜线后面的数字就是地址掩码中1的个数。

若某个公司拥有地址块 206.0.64.0/18 ,即相当于有64个C类网络。再举个简单的例子:

192.168.0.0/24   192.168.1.0/24   192.168.2.0/24   192.168.3.0/24  这四个网络,通过CIDR可以汇总成一个超网192.168.0.0/22 ,因为这四个网络 的前22 位网络号相同。  呵呵,看明白了吗?

就是向网络位借主机位咯,增加主机数,实现一个网络内超过254个主机


主机名:FQDN(Full Qulified Domain)

       完全合格域名/全称域名,是指主机名加上全路径全路径中列出了序列中所有域成员

全域名可以从逻辑上准确地表示出主机在什么地方,也可以说全域名是主机名的一种完全表示形式

从全域名中包含的信息可以看出主机在域名树中的位置。

DNS解析流程:首先查找本机HOSTS表,有的直接使用表中定义,没有查找网络连接中设置的DNS 服务器由他来解析。

www.magedu.com

你可能感兴趣的:(IP)