在学习IP地址和子网划分前,必须对进制计数有一定了解,尤其是二进制和十进制之间的相互转换,对于我们掌握IP地址和子网的划分非常有帮助,可参看如下目录详文。

IP地址和子网划分学习笔记相关篇章:

1、IP地址和子网划分学习笔记之《预备知识:进制计数》

2、IP地址和子网划分学习笔记之《IP地址详解》

3、IP地址和子网划分学习笔记之《子网掩码详解》

4、IP地址和子网划分学习笔记之《子网划分详解》

5、IP地址和子网划分学习笔记之《超网合并详解》

一、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地址思维导图如下:

©著作权归作者所有:来自51CTO博客作者MrHuaZi的原创作品,如需转载,请注明出处,否则将追究法律责任  转自 http://blog.51cto.com/6930123/2112403

IP地址和子网划分学习笔记之《IP地址详解》的更多相关文章

  1. IP2——IP地址和子网划分学习笔记之《子网掩码详解》

    2018-05-04 16:21:21   在学习掌握了前面的<进制计数><IP地址详解>这两部分知识后,要学习子网划分,首先就要必须知道子网掩码,只有掌握了子网掩码这部分内容 ...

  2. 【转载】IP地址和子网划分学习笔记之《子网掩码详解》

    原文地址: https://blog.51cto.com/6930123/2112748 一.子网掩码 IP地址是以网络号和主机号来标示网络上的主机的,我们把网络号相同的主机称之为本地网络,网络号不相 ...

  3. IP地址和子网划分学习笔记之《预备知识:进制计数》

    一.序:IP地址和子网划分学习笔记开篇 只要记住你的名字,不管你在世界的哪个地方,我一定会去见你.——新海诚 电影<你的名字> 在我们的日常生活中,每个人的名字对应一个唯一的身(敏)份(感 ...

  4. 第5章 IP地址和子网划分(2)_IP地址分类和NAT技术

    3. IP地址的分类 (1)五类IP地址 (2)数轴表示法 4. 保留地址 (1)网段的地址:主机ID全0.如192.168.100.0/24,其中的192.168.10.0指的是网段. (2)广播地 ...

  5. [读书笔记]C#学习笔记三: C#类型详解..

    前言 这次分享的主要内容有五个, 分别是值类型和引用类型, 装箱与拆箱,常量与变量,运算符重载,static字段和static构造函数. 后期的分享会针对于C#2.0 3.0 4.0 等新特性进行. ...

  6. C#学习笔记二: C#类型详解

    前言 这次分享的主要内容有五个, 分别是值类型和引用类型, 装箱与拆箱,常量与变量,运算符重载,static字段和static构造函数. 后期的分享会针对于C#2.0 3.0 4.0 等新特性进行. ...

  7. jQuery学习笔记之Ajax用法详解

    这篇文章主要介绍了jQuery学习笔记之Ajax用法,结合实例形式较为详细的分析总结了jQuery中ajax的相关使用技巧,包括ajax请求.载入.处理.传递等,需要的朋友可以参考下 本文实例讲述了j ...

  8. CDN学习笔记二(技术详解)

    一本好的入门书是带你进入陌生领域的明灯,<CDN技术详解>绝对是带你进入CDN行业的那盏最亮的明灯.因此,虽然只是纯粹的重点抄录,我也要把<CDN技术详解>的精华放上网.公诸同 ...

  9. 单片机STM32学习笔记之寄存器映射详解

    我们知道,存储器本身没有地址,给存储器分配地址的过程叫存储器映射,那什么叫寄存器映射?寄存器到底是什么? 在存储器Block2 这块区域,设计的是片上外设,它们以四个字节为一个单元,共32bit,每一 ...

随机推荐

  1. FasterRCNN 提升分类精度(转)

    近年来,随着深度学习的崛起,计算机视觉得到飞速发展.目标检测作为计算机视觉的基础算法,也搭上了深度学习的快车.基于Proposal的检测框架,从R-CNN到Faster R-CNN,算法性能越来越高, ...

  2. JS字符串常用方法总结

    1.toLowerCase(): 把字符串转为小写,返回新的字符串. var str="Hello World"; var str1=str.toLowerCase(); cons ...

  3. 解决importerror no module named mysqldb

    在window中 1:在Scripts文件夹下会出现一系列和pip有关的文件,DOS中到Scripts,运行:pip install mysql-python 2:报错:Microsoft Visua ...

  4. K8s(2)-部署应用

    一旦运行了Kubernetes集群,就可以在其上部署容器化应用程序.为此,您需要创建Kubernetes Deployment配置.Deployment指示Kubernetes如何创建和更新应用程序的 ...

  5. 新唐N32905U1DN开发教程:MDK环境下工程搭建(官方提供的固件库)(转)

    前言:新唐N32905U1DN单片机不支持用户将程序烧录到内部FLASH,必须外挂FLASH存储用户程序,可以是SPI FLASH.NAND FLASH.SD卡.用户采用裸机开发的方式可使用官方提供的 ...

  6. python @staticmethod和@classmethod的作用

    一般来说,要使用某个类的方法,需要先实例化一个对象再调用方法. 而使用@staticmethod或@classmethod,就可以不需要实例化,直接类名.方法名()来调用. 这有利于组织代码,把某些应 ...

  7. Golang 笔记 3 if、switch、for、select语句

    一.if语句 Go的流程控制主要包括条件分支.循环和并发.  if语句一般由if关键字.条件表达式和由花括号包裹的代码块组成.在Go中,代码块必须由花括号包裹.这里的条件表达式是结果类型为bool的表 ...

  8. cf 893 E

    有  次询问,第  次询问包含两个数  . 求满足下面两个要求的  数组的方案数. 1.  数组由  个整数构成 2.  A与B不同当且仅当至少存在一个数  满足  .答案对  取模 数据范围:  显 ...

  9. react 路由导航栏 withRouter

    codesandbox https://codesandbox.io/s/9l6prnyxjy app.js import React, { Component, Fragment } from &q ...

  10. Java中的 内部类(吐血总结)

    1. 内部类的作用 内部类是一个独立的实体,可以用来实现闭包:能与外部类通信:内部类与接口使得多继承更完整 2. 内部类的分类 1)普通内部类 类的实例相关,可以看成是一个实例变量.内部类的类名由 “ ...