文章目录
什么是IP地址
IP地址(Internet Protocol Address)是指互联网协议地址,IP地址是IP协议提供的一种统一的地址格式,它为互联网上的每一个网络和每一台主机分配一个逻辑地址,以此来屏蔽物理地址的差异
IP规定网络上所有的设备都必须有一个独一无二的IP地址,就好比是邮件上都必须注明收件人地址,邮递员才能将邮件送到。同理,每个IP信息包都必须包含有目的设备的IP地址,信息包才可以正确地送到目的地。同一设备不可以拥有多个IP地址,所有使用IP的网络设备至少有一个唯一的IP地址。
比如在qq上给好友发消息,为什么你发的消息只会给你想要的发送的人可以接收到呢?而别人却接收不到。
这是因为每个网络通信设备中只要遵守ip协议,使用了因特网,每个设备就会有自己一个独有的ip地址。比如196.168.1.1,靠这个值来区分要传输的数据该传递给谁,
ip地址的作用,怎么发送消息?
IP地址:
用来在网络中标记一台电脑,比如192.168.1.1;在本地局域网上是唯一的。’
IP路由
互联网是由许多个网络连接所形成的大型网络。如果要在互联网中传送IP信息包,除了确保网络上每个设备都有一个唯一的IP地址之外,网络之间还必须有传送的机制,才能将IP信息包通过一个个的网络传送到目的地。此种传送机制称为IP路由。 [2]
各个网络通过路由器相互连接。路由器的功能是为IP信息包选择传送的路径。换言之,必须依靠沿途各路由器的通力合作,才能将IP信息包送到目的地。在IP路由的过程中,由路由器负责选择路径,IP信息包则是被传送的对象。 [2]
IP路由说明
IP地址与IP路由是IP信息包传送的基础。此外,IP信息包传送时还有一项很重要的特性,即使用非连接式的传送方式。非连接式的传送方式是指IP信息包传送时,源设备与目的设备双方不必事先连接,即可将IP信息包送达。即源设备完全不用理会目的设备,而只是单纯地将IP信息包逐一送出。至于目的设备是否收到每个信息包、是否收到正确的信息包等,则由上层的协议(例如TCP)来负责检查。 [2]
使用非连接式的优点是过程简单化,可提高传输的效率。此外,由于IP信息包必须通过IP路由的机制,在一个个路由器之间传递,非连接式的传送方式较易在此种机制中运行。 [2]
相对于非连接式的传送方式,也有连接式的传送方式,也就是源与目的设备双方必须先建立连接,才能进一步传输数据,TCP就是使用连接式的传送方式。
点分十进制表示:32位分成了4个8位组,相邻8位组
之间用’.'分割,每个8位组转换成十进制数,从0到255
网络层IP协议格式
(1)、4位版本号:指定IP协议的版本,对于IPv4来说,就是4.
(2)、4位首部长度:IP头部的长度是多少个32bit.4bit表示最大的数字是15,因此IP头部最大长度是60字节。
(3)、8位服务类型:3位优先权字段(已经弃用),4位TOS字段,1位保留字段(必须置0)
(4)、4位TOS分别表示:最小延时,最大吞吐量,最高可靠性,最小成本。这四者相互冲突,只能选择一个。
(5)、对于ssh/telnet来说:最小延时比较重要。对于ftp来说:最大吞吐量比较重要。
16位总长度:IP数据报总体占多少字节。
(6)、16位标识(ID):唯一标识主机发送的报文。如果IP报文在数据链路层被分片了,那么每一个片里面的这个ID都是相同的。
(7)、3位标志字段:第一位保留。第二位置为1:表示禁止分片,这时候如果报文长度超过MTU(最大传输单元),IP模块就会丢弃报 文。第三位表示“更多分片”,如果分了片的话,最后一个分片置为1,其他是0.类似于一个标志位。
(8)、13位分片偏移: 是分片相对于原始IP报文开始出的偏移。其实就是在表示当前分片在原始报文中处于哪个位置。
(9)、8位生存周期:数据报到达目的地的最大报文跳数。一般是64,每次经过一个路由,TTL-=1,一直减到0还没有到达,那么就丢 弃了
(10)、8位协议:表示上层协议的类型。
(11)、16位头部校验和:使用CRC进行校验,来鉴别头部是否损坏。
32位原地址和32位目标地址:表示发送端和接收端。
IP地址包含 网络地址+主机地址,即IP地址=网络地址+主机地址
三、网段划分
网段指一个计算机网络中使用同一物理层设备(传输介质,中继器,集线器等)直接通讯的
那一部分。就是从一个IP到另一个IP 好比 从192.168.0.1到192.168.255这之间就是一个网段
1.IP地址的划分:网络号和主机号
网络号:保证相互连接的两个网段具有不同的标识。
主机号:同一网段内,主机之间具有相同的网络号,但是必须具有不同的主机号。
不同的子网其实就是把网络号相同的主机放到一起。
(1)最早期的网络划分
如果你和其他人的前三组的网络号数字相同,则表示你和另外一台电脑使用的是同一个局域网
2.特殊的IP地址
IP地址中的主机地址全部为0:是网络号,即代表这个局域网。
IP地址中的主机地址全部为1:是广播地址,用于给同一个链路中相互连接的所有主机发送数据包。
127.* 的IP地址用于本机环回测试,通常是127.0.0.1.
3.IP地址数量限制的解决
( 1)动态分配IP地址(DHCP):只给接入网络的设备分配IP地址,因此同一个MAC地址的设备,每次接入互联网中,得到的IP 地址不一定是相同的。
(2)NAT技术:进行地址替换
(3)IPv6:目前还没有推广使用。
4.私有IP地址和公网IP地址
10.* 前8位是网络号,共16,777,216个地址
172.16到172.31,共1,048,576个地址
192.168.*共65536个地址(这个范围的都是私有IP,其他的是全局IP)
一个路由器可以配置两个IP地址,WAN口IP(接外网),LAN口IP(接内网)。
IP地址的分类
(1)、A类地址:
前1字节标识网络地址部分,后3字节标识主机地址部分
最大网络数:2^7 – 2 126个
每个网络最多可容纳 2^24-2 ()台主机
第1字节用十进制表示的取值范围为"0-127"
地址范围:1.0.0.1-126.255.255.254
(0000 0001.00000000.00000000.00000000~01111110.111111111.11111111.11111110)
地址范围:1.0.0.0-126.255.255.255 (这种写法是把全0全1都算进去了,其它几类类似)
网络号范围: 1~126(0000 0001 ~ 0111 1110)
默认子网掩码:255.0.0.0 或 0xFF000000(十六进制)
具有A类地址特征的网络总数为128个
⑶ A类地址中的私有地址和保留地址:
① 10.X.X.X是私有地址(所谓的私有地址就是在互联网上不使用,而被用在局域网络中的地址)。
② 127.X.X.X是保留地址,用做循环测试用的。
(2)、B类地址:
前2字节标识网络地址部分,后2字节标识主机地址部分
最大网络数:2^14 - 1
每个网络最多可容纳 2^16-2 台主机
第1字节用十进制表示的取值范围
地址范围:128.1.0.1-191.255.255.254
网络号范围:128.1 ~ 191.255 (可用范围)
默认子网掩码:255.255.0.0 或 0xFFFF0000(十六进制)
具有B类地址特征的网络总数为214个
⑶ B类地址的私有地址和保留地址
① 172.16.0.0—172.31.255.255是私有地址
② 169.254.X.X是保留地址。如果你的IP地址是自动获取IP地址,而你在网络上又没有找到可用的DHCP服务器。就会得到其中一个IP。
(3)、C类地址:
前3字节标识网络地址部分,后1字节标识主机地址部分
每个网络最多可容纳254台主机
第1字节用十进制表示的取值范围为
地址范围:192.0.1.1-223.255.255.254
网络号段范围:192.0.1 ~ 223.255.255
子网掩码:255.255.255.0 或 0xFFFFFF00 (十六进制)
具有C类地址特征的网络总数为221个
⑶ C类地址中的私有地址:
192.168.X.X是私有地址。
保留的IP地址:
(4)、D类用作组播,
地址范围:224.0.0.1-239.255.255.254
是组播地址。该类IP地址的最前面为“1110”,所以地址的网络号取值于224~239之间。
一般用于组播用户 。
(5)、E类用作科研(差不多是个废物,因为今天有了IPv6了呀!)
是保留地址。该类IP地址的最前面为“1111”,所以地址的网络号取值于240~255之间。
不会分配给一台特别的主机
一些特殊的IP地址
0.0.0.0:保留的IP地址,表示这个主机,这个网络,Cisco路由器指定的默认路由
255.255.255.255:泛洪广播地址,指代互联网上所有的主机,为了避免广播风暴,当一台机器发出了泛洪广播地址的信息后,路由器会把信息劫持,不再转发
主机部分全为0的地址:指整个网络的地址
主机部分全为1的地址(十进制的255):对应的广播地址
127.x.x.x:环回地址,特殊地址,用于回路测试
127.0.0.1:表示localhost,本机IP地址
169.254.0.0:异常地址,不能正常通信(比如说当你启用了DHCP,但是没有从DHCP Server那里正常地拿到一个IP地址,那 么你就会发现你的接口上配置了一个169.254的地址)
子网
(1)、现在假设这样一个场景,一个数据报起目的地址是145.13.3.10(在子网 145.13.3.0中),已经到达路由器R1(145.13.0.0),那么这个路由器怎么将它转发到145.13.3.0呢?
(2)、我们并不知道目的地址是否进行了子网的划分。
这就引出了子网掩码的概念了,
(3)、子网掩码(subnet mask)又叫网络掩码、地址掩码、子网络遮罩,它是一种用来指明一个IP地址的哪些位标识的是主机所在的子网,以及哪些位标识的是主机的位掩码。
(4)、子网掩码不能单独存在,它必须结合IP地址一起使用。子网掩码只有一个作用,就是将某个IP地址划分成网络地址和主机地址两部分。
(5)、子网掩码是一个32位地址,用于屏蔽IP地址的一部分以区别网络标识和主机标识,并说明该IP地址是在局域网上,还是在远程网上。
(6)、子网掩码——屏蔽一个IP地址的网络部分的“全1”比特模式。对于A类地址来说,默认的子网掩码是255.0.0.0;对于B类地址来说默认的子网掩码是255.255.0.0;对于C类地址来说默认的子网掩码是255.255.255.0。
(7)、 通过子网掩码,就可以判断两个IP在不在一个局域网内部。
(8)、子网掩码可以看出有多少位是网络号,有多少位是主机号
(9)、子网掩码也是32位,由一串1和0组成,子网掩码中的1对应于IP地址中的网络号位置+子网网络号位置,子网掩码中的0对应与IP地址中现在的主机号位置。
(10)、我们只要将IP地址和子网掩码进行“与”运算,如果进行子网的划分,就立刻得出要找的子网的网络地址,如果没有进行子网划分(有默认的子网掩码),则直接能够得出该IP地址的网络地址出来。
(11)、引入一个额外的子网掩码(subnet mask)来区分网络号和主机号。
(12)、子网掩码也是一个32位的正整数,通常用一串‘0’来结尾。
(13)、将IP地址和子网掩码进行“按位与”操作,得到的结果就是网络号。
(14)、网络号和主机号的划分与这个IP地址是A类,B类,还是C类无关。
子网掩码划分子网的例子:
化成相应的IP地址。
IP地址和子网掩码的一种简洁的表示方法:比如,140.252.20.68 / 24,表示:IP地址为:140.252.20.68.子网掩码的高24位为网络号(高24位全为1),也就是255.255.255.0
A类地址的默认子网掩码是255.0.0.0
B类地址的默认子网掩码是255.255.0.0
C类地址的默认子网掩码是255.255.255.0
网关
网关(Gateway)又称网间连接器、协议转换器。默认网关在网络层上以实现网络互连,是最复杂的网络互连设备,仅用于两个高层协议不同的网络互连。网关的结构也和路由器类似,不同的是互连层。网关既可以用于广域网互连,也可以用于局域网互连
网关实质上是一个网络通向其他网络的IP地址。
比如有网络A和网络B,网络A的IP地址范围为“192.168.1.1~192. 168.1.254”,子网掩码为255.255.255.0;网络B的IP地址范围为“192.168.2.1~192.168.2.254”,子网掩码为255.255.255.0。
在没有路由器的情况下,两个网络之间是不能进行TCP/IP通信的,即使是两个网络连接在同一台交换机(或集线器)上,TCP/IP协议也会根据子网掩码(255.255.255.0)判定两个网络中的主机处在不同的网络里。
而要实现这两个网络之间的通信,则必须通过网关。如果网络A中的主机发现数据包的目的主机不在本地网络中,就把数据包转发给它自己的网关,再由网关转发给网络B的网关,网络B的网关再转发给网络B的某个主机。
所以说,只有设置好网关的IP地址,TCP/IP协议才能实现不同网络之间的相互通信。那么这个IP地址是哪台机器的IP地址呢?网关的IP地址是具有路由功能的设备的IP地址,具有路由功能的设备有路由器、启用了路由协议的服务器(实质上相当于一台路由器)、代理服务器(也相当于一台路由器)。
IP地址的表示方法
IP地址就是给英特网上的每个主机(路由器)的每个接口分配一个在全世界范围内是唯一的32位的标识符。其组成第一个字段是网络号,第二个字段是主机号。一个主机号在前面的网络号所指明的网络范围内必须是唯一的,所以一个IP地址在整个网络中都是唯一的。目前分为A、B、C、D、E 五类IP地址。
在A、B、C 三类地址中灰色的部分即为网络号,网络号的前三位是类别位,分别是0,10,110。也就是说我们可以凭借这个类别位置来判断网络类别。
32位的总长度,由于A、B、C 三类网络号的长度的不同,导致A、B、C 类地址的主机号字段的字节数分别为3、2、1(一个字节8位)。
D 类地址的网络号为1110,用于多播(一对多通讯)。
E 类地址的网络号为1111,保留以后使用。
因此我们一般使用的就是ABC三类网络地址,IP地址是32位的二进制代码,为了提高可读性,把32位的IP地址中的每8位用等效的十进制表示出来(点分十进制),于是我们日常生活中常见的IP地址就出现了。 例如:IP地址,128.11.3.31,转化为二进制为 100000000 00001011 00000011 00011111 ,可以看出类别位为 10,可以判断为一个B类地址。
常用IP地址的指派范围
网络号指派范围
-
A类地址网络号占用一个字节,但是由于有一位是类别位,只有7位可供使用,但是由于规定,网络字段全0是个保留字段表示本网络,而127(01111111)是另外一个保留字段,作为本地软件的环回测试。我们常见的127.0.0.1表示本机,原因也是出自这里。所以A类地址可以指派的网络号个数为(27-2).
-
B类网络地址网络号有两个字节,前两位为10已经固定,只剩下14位可用,由于这14位无论怎么取值都不会使得网络号为全0或者全1,单实际上规定,规定B类最小网络地址为128.1.0.0。因此B类地址可指派的网络号个数为(214-1).
-
C类地址有3个字节的网络字段号,前三位固定110,只有剩下21位可用,同样C类地址可指派的最小网络地址也是192.0.1.0。因此C类地址可指派的网络号个数为(221-1).
-
D 类地址的网络号为1110,用于多播(一对多通讯)。
-
E 类地址的网络号为1111,保留以后使用。
总结IP指派范围
综上网络号和主机号的指派描述可知,IP地址空间共有232个地址。
所有A类地址共有(27-2)∗(224-2)个,大约231,占50%;
所有B类地址共有(214-1)∗(216-2)个,大约230,占25%;
所有C类地址共有(221-1)∗(28-2)个,大约229,占12.5%;
网络类别 | 最大可分配网络数 | 首个可分配网络号 | 最后一个可分配网络号 | 每个网络中最大主机数 |
---|---|---|---|---|
A | 126(27-2) | 1 | 126 | 16777214 |
B | 16383(214-1) | 128.1 | 191.255 | 65534 |
C | 2097151(221-1) | 192.0.1 | 223.255.255 | 254 |
IP地址和硬件地址
从层次角度来看,硬件地址是数据链路层和物理层使用的地址(常称作MAC地址),而IP地址是网络层和以上各层使用的地址,是一种逻辑地址。在网络层我们进行数据报文从IP1传输到IP2,无论我们中间经过多少次转发,从网络层来看,源地址始终是IP1,目的地址始终是IP2。但是从数据链路层来看,显然就不是这样了,这些是物理地址,很有可能从源节点经过多次中间节点的物理地址的转变才能到达目的节点。
而IP地址和物理地址的之间的转化则需要依靠两个重要的协议ARP(地址解析协议),RARP(逆地址解析协议)。IP地址通过ARP转化成物理地址,物理地址可以通过RARP转化成相应的IP地址。