一、IP地址和MAC地址
1、MAC地址
MAC(Media Access Control,介质访问控制)地址,或称为物理地址,也叫硬件地址,用来定义网络设备的位置,MAC地址是网卡出厂时设定的,是固定的(但可以通过在设备管理器中或注册表等方式修改,同一网段内的MAC地址必须唯一)。MAC地址采用十六进制数表示,长度是6个字节(48位),分为前24位和后24位。
1、前24位叫做组织唯一标志符(Organizationally Unique Identifier,即OUI),是由IEEE的注册管理机构给不同厂家分配的代码,区分了不同的厂家。
2、后24位是由厂家自己分配的,称为扩展标识符。同一个厂家生产的网卡中MAC地址后24位是不同的。
MAC地址对应于OSI参考模型的第二层数据链路层,工作在数据链路层的交换机维护着计算机MAC地址和自身端口的数据库,交换机根据收到的数据帧中的“目的MAC地址”字段来转发数据帧。
2、IP地址
IP地址(Internet Protocol Address),缩写为IP Adress,是一种在Internet上的给主机统一编址的地址格式,也称为网络协议(IP协议)地址。它为互联网上的每一个网络和每一台主机分配一个逻辑地址,常见的IP地址,分为IPv4与IPv6两大类,当前广泛应用的是IPv4,目前IPv4几乎耗尽,下一阶段必然会进行版本升级到IPv6;如无特别注明,一般我们讲的的IP地址所指的是IPv4。
IP地址对应于OSI参考模型的第三层网络层,工作在网络层的路由器根据目标IP和源IP来判断是否属于同一网段,如果是不同网段,则转发数据包。
3、IP地址格式和表示
在计算机二进制中,1个字节=8位=8bit(比特)
①IP地址格式和表示
IP地址(IPv4)由32位二进制数组成,分为4段(4个字节),每一段为8位二进制数(1个字节)每一段8位二进制,中间使用英文的标点符号“.”隔开。由于二进制数太长,为了便于记忆和识别,把每一段8位二进制数转成十进制,大小为0至255。IP地址的这种表示法叫做“**点分十进制表示法**”。
IP地址表示为:xxx.xxx.xxx.xxx
举个例子:210.21.196.6就是一个IP地址的表示。
②理解2的指数幂
2的幂也称为2的指数,还可以称为2的次方,如2的2次方、2的3次方等,任何数的0次方都等于1。 在IP地址中,0次方到7次方刚好为8位,这对于IP地址二进制转换为十进制非常方便。
举个例子:11010010=1×2^7+1×2^6+0×2^5+1×2^4+0×2^3+0×2^2+1×2^1+0×2^0=128+64+0+16+0+0+2+0=210
我们需要记住上图的2的幂的结果,不需要死记硬背,这个是有技巧的,从上图来看,很容易发现,由于是2的幂,所有相邻的幂的前后都是相差2倍,所以只要知道其中一个幂值,就知道相邻的幂的值。
4、IP地址的组成
IP地址=网络地址+主机地址,比如:
计算机的IP地址由两部分组成,一部分为网络标识,一部分为主机标识,同一网段内的计算机网络部分相同,主机部分不同时重复出现。路由器连接不同网段,负责不同网段之间的数据转发,交换机连接的是同一网段的计算机。通过设置网络地址和主机地址,在互相连接的整个网络中保证每台主机的IP地址不会互相重叠,即IP地址具有了唯一性。
5、IP地址与MAC地址区别
长度不同:IP地址为32位(二进制),MAC地址为48位(十六进制)。
分配依据不同:IP地址的分配是基于网络拓扑,MAC地址的分配是基于制造商。
寻址协议层不同:IP地址应用于OSI第三层(网络层),而MAC地址应用在OSI第二层(数据链路层)。
6、IP地址与MAC地址的作用和关系
IP和MAC两者之间分工明确,默契合作,完成通信过程。在数据通信时,IP地址专注于网络层,网络层设备(如路由器)根据IP地址,将数据包从一个网络传递转发到另外一个网络上;而MAC地址专注于数据链路层,数据链路层设备(如交换机)根据MAC地址,将一个数据帧从一个节点传送到相同链路的另一个节点上。IP和MAC地址这种映射关系由ARP(Address Resolution Protocol,地址解析协议)协议完成,ARP根据目的IP地址,找到中间节点的MAC地址,通过中间节点传送,从而最终到达目的网络。
计算机在和其他计算机通信之前,首先要判断目标IP地址和自己的IP地址是否在一个网段,这决定了数据链层的目标MAC地址是目标计算机的还是路由器接口的MAC地址。数据包的目标IP地址决定了数据包最终到达哪一个计算机,而目标MAC地址决定了该数据包下一跳由哪个设备接收,不一定是终点。
二、IP地址的分类
1、IP地址分类详解
IP地址分A、B、C、D、E五类,其中A、B、C这三类是比较常用的IP地址,D、E类为特殊地址。
①、A类地址
(1)A类地址第1字节为网络地址(最高位固定是0),另外3个字节为主机地址。
(2)A类地址范围:1.0.0.0-126.255.255.255,其中0和127作为特殊地址。
(3)A类网络默认子网掩码为255.0.0.0,也可写作/8。
(4)A类网络最大主机数量是256×256×256-2=166777214(减去1个主机位为0的网络地址和1个广播地址)。
在计算机网络中,主机ID全部为0的地址为网络地址,而主机ID全部为1的地址为广播地址,这2个地址是不能分配给主机用的。
②、B类地址
(1)B类地址第1字节(最高位固定是10)和第2字节为网络地址,另外2个字节为主机地址。
(2)B类地址范围:128.0.0.0-191.255.255.255。
(3)B类网络默认子网掩码为255.255.0.0,也可写作/16。
(4)B类网络最大主机数量256×256-2=6554。
③、C类地址
(1)C类地址第1字节(最高位固定是110)、第2字节和第3个字节,另外1个字节为主机地址。
(2)C类地址范围:192.0.0.0-223.255.255.255。
(3)C类网络默认子网掩码为255.255.255.0,也可写作/24。
(4)C类网络最大主机数量256-2=254。
④、D类地址
(1)D类地址不分网络地址和主机地址,它的第1个字节的最高位固定是1110。
(2)D类地址用于组播(也称为多播)的地址,无子网掩码。
(3)D类地址范围:224.0.0.0-239.255.255.255。
⑤、E类地址
(1)E类地址也不分网络地址和主机地址,它的第1个字节的最高位固定是11110。
(2)E类地址范围:240.0.0.0-255.255.255.255。
(3)其中240.0.0.0-255.255.255.254作为保留地址,主要用于Internet试验和开发,255.255.255.255作为广播地址。
2、IP地址分类思维导图
IP地址总结学习思维导图如下:
三、保留的特殊IP地址
以下这些特殊IP地址都是不能分配给主机用的地址:
主机ID全为0的地址:特指某个网段,比如:192.168.10.0、255.255.255.0,指192.168.10.0网段。
主机ID全为1的地址:特指该网段的全部主机,比如:192.168.10.255,如果你的计算机发送数据包使用主机ID全是1的IP地址,数据链层地址用广播地址FF-FF-FF-FF-FF-FF。
127.0.0.1:是本地环回地址,指本机地址,一般用来测试使用。回送地址(127.x.x.x)是本机回送地址(Loopback Address),即主机IP堆栈内部的IP地址。
169.254.0.0:169.254.0.0-169.254.255.255实际上是自动私有IP地址。
0.0.0.0:如果计算机的IP地址和网络中的其他计算机地址冲突,使用ipconfig命令看到的就是0.0.0.0,子网掩码也是0.0.0.0。
保留的特殊IP地址思维导图如下:
四、公网和私网IP地址
公网IP地址
公有地址分配和管理由Inter NIC(Internet Network Information Center因特网信息中心)负责。各级ISP使用的公网地址都需要向Inter NIC提出申请,有Inter NIC统一发放,这样就能确保地址块不冲突。
私网IP地址
创建IP寻址方案的人也创建了私网IP地址。这些地址可以被用于私有网络,在Internet没有这些IP地址,Internet上的路由器也没有到私有网络的路由表。
A类:10.0.0.0 255.0.0.0,保留了1个A类网络。
B类:172.16.0.0 255.255.0.0~172.31.0.0 255.255.0.0,保留了16个B类网络。
C类:192.168.0.0 255.255.255.0~192.168.255.0 255.255.255.0,保留了256个C类网络。
PS:私网地址访问Internet需要做NAT或PAT网络地址转换
公网和私网IP地址思维导图如下:
五、子网划分
1.子网划分概述
(1)为什么要划分子网?
IPv4地址如果只使用有类(A、B、C类)来划分,会造成大量的浪费或者不够用,为了解决这个问题,可以在有类网络的基础上,通过对IP地址的主机号进行再划分,把一部分划入网络号,就能划分各种类型大小的网络了。
(2)IPv4子网划分与聚合
为了解决IPv4的不足,提高网络划分的灵活性,诞生了两种非常重要的技术,那就是VLSM(可变长子网掩码)和CIDR(无类别域间路由),把传统标准的IPv4有类网络演变成一个更为高效,更为实用的无类网络。
VLSM用于IPv4子网的划分,也就是把一个大的网络划分成多个小的子网;而CIDR则用于IPv4子网的聚合,当然主要是指路由方面的聚合,也就是路由汇总。通过CIDR可以把多个小的子网路由条目汇总成一个大网络的路由条目,以减少路由器中路由条目的数量,提高路由效率。
2.子网划分方法
我们所讲的子网划分其实就是基于VLSM可变长子网掩码的划分,子网划分又分为等长子网划分和变长子网划分。
(1)VLSM子网划分的基本思想
通过VLSM实现子网划分的基本思想很简单:就是借用现有网段的主机位的最左边某几位作为子网位,划分出多个子网。
①、把原来有类网络IPv4地址中的“网络ID”部分向“主机ID”部分借位;
②、把一部分原来属于“主机ID”部分的位变成“网络ID”的一部分(通常称之为“子网ID”)。
③、原来的“网络ID”+“子网ID”=新“网络ID”。“子网ID”的长度决定了可以划分子网的数量。
如下示例图:
(2)全0子网与全1子网
①、“全0子网”代表的是对应子网的“子网ID”部分各位都是0,是第一个子网。
②、“全1子网”代表的是对应子网的“子网ID”部分各位都是1,是最后一个子网。
③、按照RFC950参考规定,划分子网后,只有n-2个可用的子网(n表示总的子网数)。
④、后来RFC1878参考规定,划分子网后,可以有n个可用的子网(n表示总的子网数)。
RFC950参考规定:第一个子网(也就是“全0子网”)和最后一个子网(也就是“全1子网”)不可用,为的就是避免全0子网的网络地址和全1子网的广播地址分别与没有划分子网前的网络地址和广播地址相冲突。 但是在后来RFC1878规定中,该项规定已被废止了,现在的设备基本上都普遍支持RFC1878。
3.等长子网和变长子网划分
子网划分的任务包括:
①、确定子网掩码的长度。
②、确定子网下的主机可用地址范围(第一个可用IP和最后一个可用IP)。
③、确定网络地址(主机位全为0)和广播地址(主机位全为1),不能分配计算机主机用。
(1)等长子网划分
等长子网划分就是将一个有类网络等分成多个网络,也就是等分成多个子网,所有子网的子网掩码都相同。
1、C类网络子网划分示例
①、等分为两个子网
将192.168.0.0 255.255.255.0这个网络等分成2个子网,并写出每个子网的地址信息?
分析:
该网络子网掩码为/24,要划分为2个子网,要借用主机位1位作为子网位。
因为二进制数0和1按一位排列组合,只有这2种,分别为:0,1,如下图所示。
0是A子网
1是B子网
借用主机1位,所以子网掩码+1位,由原来的255.255.255.0(/24)变为255.255.255.128(/25)
结论:C类网络等分成2个子网,子网掩码往右移动1位,就能等分成2个子网,即2^1。
[最终结果:
A子网的网络地址:192.168.0.0/25,可用地址(192.168.0.1~192.168.0.126),广播地址:192.168.0.127。
B子网的网络地址:192.168.0.128/25,可用地址(192.168.0.129~192.168.0.254),广播地址:192.168.0.255。
②、等分为四个子网
同样将192.168.0.0 255.255.255.0 这个网络等分成4个子网
分析:要想分成4个子网,需要将子网掩码往右移动两位,这样第1位和第2位就变为网络位,就可以分成4个子网。因为二进制数0和1按两位排列组合,只有这4种,分别为:00,01,10,11,如下图所示。
00是A子网
01是B子网
10是C子网
11是D子网
借用主机2位,所以子网掩码+2位,由原来的255.255.255.0(/24)变为255.255.255.192(/26)
结论:C类网络等分成4个子网,子网掩码往右移动2位,就能等分成4个子网,即2^2。
最终结果:
A子网的网络地址:192.168.0.0/26,可用地址(192.168.0.1~192.168.0.62),广播地址:192.168.0.63/26。
B子网的网络地址:192.168.0.64/26,可用地址(192.168.65~192.168.0.126),广播地址:192.168.0.127。
C子网的网络地址:192.168.0.128/26,可用地址(192.168.129~192.168.0.190),广播地址:192.168.0.191。
D子网的网络地址:192.168.0.192/26,可用地址(192.168.193/26~192.168.0.254),广播地址:192.168.0.255。
③、等分为八个子网
把一个C类网络等分成8个子网,如下图所示,子网掩码需要往右移3位。这样才能划分出8个子网,主机位的第1位、第2位和第3位都变成网络位。
结论:C类网络等分成8个子网,子网掩码往右移动3位,就能等分成8个子网,即2^3。
最终结果:
子网掩码:255.255.255.224(/27)
A子网的网络地址:192.168.0.0/27,可用地址(192.168.0.1~192.168.0.30),广播地址:192.168.0.31。
B子网的网络地址:192.168.0.32/27,可用地址(192.168.33~192.168.0.62),广播地址:192.168.0.63。
C子网的网络地址:192.168.0.64/27,可用地址(192.168.65~192.168.0.94),广播地址:192.168.0.95。
D子网的网络地址:192.168.0.96/27,可用地址(192.168.97~192.168.0.126),广播地址:192.168.0.127。
E子网的网络地址:192.168.0.128/27,可用地址(192.168.129~192.168.0.158),广播地址:192.168.0.159。
F子网的网络地址:192.168.0.160/27,可用地址(192.168.161~192.168.0.190),广播地址:192.168.0.191。
G子网的网络地址:192.168.0.192/27,可用地址(192.168.193~192.168.0.222),广播地址:192.168.0.223。
H子网的网络地址:192.168.0.224/27,可用地址(192.168.225~192.168.0.254),广播地址:192.168.0.255。
2、B类网络子网划分示例
将131.107.0.0/16等分成2个子网,写出各个子网的第一个和最后一个可用的IP地址?
分析:要划分为2个子网,就要借用主机位1位作为子网位。
0是A子网
1是B子网
借用主机1位,所以子网掩码+1位,由原来的255.255.0.0(/16)变为255.255.128.0(/17)
结论:B类网络等分成2个子网,子网掩码往右移动1位,就能等分成2个子网,即2^1。
最终结果:
A子网网络地址:131.107.0.0/17,可用地址(131.107.0.1 ~ 131.107.127.254)广播地址:131.107.127.255
B子网网络地址:131.107.128.0/17,可用地址(131.107.128.1 ~ 131.107.255.254)广播地址:131.107.255.255
3、A类网络子网划分示例
将A类网络42.0.0.0/8等分成4个子网,写出各个子网的第一个和最后一个可用的IP地址?
分析:要划分为4个子网,就要借用主机位2位作为子网位
00是A子网
01是B子网
10是C子网
11是D子网
借用主机2位,所以子网掩码+2位,由原来的255.0.0.0(/8)变为255.192.0.0(/10)
结论:A类网络等分成4个子网,子网掩码往右移动2位,就能等分成4个子网,即2^2。
最终结果:
A子网的网络地址:42.0.0.0/10,可用地址(42.0.0.1 ~ 42.63.255.254),广播地址:42.63.255.255
B子网的网络地址:42.64.0.0/10,可用地址(42.64.0.1 ~ 42.127.255.254),广播地址:42.127.255.255
C子网的网络地址:42.128.0.0/10,可用地址(42.128.0.1 ~ 42.191.255.254),广播地址:42.191.255.255
D子网的网络地址:42.192.0.0/10,可用地址(42.192.0.1 ~ 42.255.255.254),广播地址:42.255.255.255
Ⅱ、变长子网划分
VLSM规定了如何在一个进行了子网划分的网络中,不同子网使用不同的子网掩码。这对于网络内部不同网段需要不同大小子网的情形来说很有效,这种划分子网的方式叫变长子网划分。
变长子网划分其实就是在等长子网的划分上,分别取不同等分子网中的某个或者多个子网。
1、变长子网划分示例
如上示例划分分析结果:
A子网网络地址:192.168.10.32,255.255.255.224(/27),可用地址(192.168.10.33 ~ 192.168.10.62),广播地址:192.168.10.63相当于取了等长子网划分为8个子网中的一个子网
B子网网络地址:192.168.10.64,255.255.255.192(/26),可用地址(192.168.10.65 ~ 192.168.10.126),广播地址:192.168.10.127相当于取了等长子网划分为4个子网中的一个子网
C子网网络地址:192.168.10.128,255.255.255.128(/25),可用地址(192.168.10.129 ~ 192.168.10.254),广播地址:192.168.10.255相当于取了等长子网划分为2个子网中的一个子网
D子网网络地址:192.168.10.0,255.255.255.252(/30),可用地址(192.168.10.1 ~ 192.168.10.2),广播地址:192.168.10.3相当于取了等长子网划分为64个子网中的第一个子网
E子网网络地址:192.168.10.4,255.255.255.252(/30),可用地址(192.168.10.5 ~ 192.168.10.6),广播地址:192.168.10.7相当于取了等长子网划分为64个子网中的第二个子网
2、变长子网划分总结
①、变长子网划分规律
如果一个子网地址块是原来网段的(1/2)^n,子网掩码就在原网段的基础上右移n位,不等长子网,子网掩码也不同。
②、点到点网络的子网掩码
每个子网是原来网络的(1/2)×(1/2)×(1/2)×(1/2)×(1/2)×(1/2),也就是(1/2)^6,子网掩码往右移动6位。
例如:11111111.11111111.11111111.11111100写成十进制子网掩码也就是255.255.255.252。
六、子网划分总结和技巧
1、确定划分子网数
子网数=2^n,n代表子网掩码往右移动的位数
例如:
要划分2个子网,子网掩码需要往右移动1位,2^1=2
要划分4个子网,子网掩码需要往右移动2位,2^2=4
要划分8个子网,子网掩码需要往右移动3位,2^3=8
…
子网数只能为2倍的关系划分。
2、确定子网划分后的地址
每个子网地址块大小(IP_block)=2^(8-n)
每个子网可用地址个数(IP_num)=2^(8-n)-2
①、子网的网络地址=从0到255,取每段地址块的首个值
②、子网的广播地址=下一个子网的网络地址-1
③、子网的可用地址=子网的网络地址到子网的广播地址区间
例如:
要划分为4个网段(2^2),子网掩码右移2位
每个子网地址块大小(IP_block)=2^(8-4)=64
每个子网可用地址个数(IP_num)=2^(8-4)-2=62
每段取值分别为:0,64,128,192
第一个子网
①、网络地址=0
②、广播地址=63
③、可用地址=1到62
第二个子网
①、网络地址=64
②、广播地址=127
③、可用地址=65到126
第三个子网
①、网络地址=128
②、广播地址=191
③、可用地址=129到190
第四个子网
①、网络地址=192
②、广播地址=255
③、可用地址=193到254
3、确定子网掩码
划分后的子网掩码CIDR=原网络的子网掩码CIDR+n,如要写成十进制:256-2^(8-n)
例如:
原来子网掩码:255.255.255.0(/24),往右移动3位,则划分为8个子网,子网掩码就变为为/27,256-2^(8-3) = 256-2^5 = 256-32 = 224
最后子网掩码结果:255.255.255.224(/27)