IP地址就是给英特网上的每一个主机(或路由器)的每一个接口分配一个全世界唯一的32位的标识符。
IP地址的编址方法的三个历史阶段:
1.分类的IP地址
2.子网的划分
3.构成超网
IP地址的特点
(1)每一个IP地址都由网络号和主机号两部分组成。从这个意义上来说,IP地址是一种分等级的地址结构。分两个等级的好处是:
第一:
IP地址管理机构在分配IP地址时,只分配网络号(第一级),而剩下的主机号(第二级)则由得到该网络的单位自行分配。这样就方便了IP地址的管理。
第二:
路由器仅根据目的主机所连接的网络号来转发分组(而不考虑目的主机号),这样就可以使路由表中的项目数大幅度减小,从而减小了路由表所占的存储空间以及查找路由表的时间。
(2)实际上IP地址时标志一个主机(或路由器)和一条链路的接口。当一个主机同时连接到两个网络上时,该主机就必须同时具有两个响应的IP地址,其网络号必须是不同的。这种主机称为多归属主机。由于一个路由器至少连接到两个网络,因此一个路由器至少应当有两个不同的IP地址。
(3)按照英特网的观点,一个网络是指具有相同网络号net-id的主机集合,因此,用转发器或网桥连接起来的若干局域网仍为一个网络,因为这些局域网都具有相同的网络号。具有不同网络号的局域网必须使用路由器互连。
(4)在IP地址中,所有分配到网络号的网络(不管是范围很小的局域网,还是可能覆盖很大地理范围的广域网)都是平等的。
(1)在同一局域网上的主机或路由器的IP地租中的网络号必须是一样的。
(2)用网桥(它只在链路层工作)互连的网段依然是一个局域网,只能有一个网络号
(3)路由器总是具有两个或两个以上的IP地址,即路由器的每一个接口都有一个不同网络号的IP地址。
IP地址和硬件地址的区别
从层次的角度看,物理地址是数据链路层和物理层使用的地址,而IP地址是网络层和以上各层使用的地址,是一种逻辑地址(之所以称IP地址是逻辑地址是因为IP地址是使用软件实现的)
在发送数据时,数据从高层下到低层,然后才到通信链路上传输。使用IP地址的IP数据报交给数据链路层,就被封装为MAC帧。MAC帧在传送时使用的源地址和目的地址都是硬件地址,这两个硬件地址都写在MAC帧首部。
下面这张图可以帮我理解:
IP地址放在IP数据报的首部,而硬件地址则放在MAC帧首部。在网络层和网络层以上使用的是IP地址。而数据链路层及以下使用的是硬件地址。如上图所示:当IP数据报放入数据链路层的MAC帧以后,整个IP数据报就成为MAC帧的数据,因而在数据链路层看不见数据报的IP地址。
(1)在IP层抽象的互联网上只能看见IP数据报。虽然IP数据报要经过多个路由器,但在它的首部中的源地址和目的地址始不变。
(2)虽然在IP数据报 首部有源站IP地址,但是路由器只根据目的站的IP地址的网络号进行路由器选择
(3)在局域网的链路层,只能看见MAC帧。IP数据报被封装在MAC帧中。MAC帧在不同网络上传送时,其MAC帧首部中的源地址和目的地址都要发生变化。
(4)尽管互连在一起的网络的硬件地址,体系各不相同,但IP层抽象的互联网却屏蔽了下层这些很复杂的细节。只要我们在网络层上讨论问题,就能够使用这些统一的,抽象的IP地址研究主机和主机或路由之间的通信。
地址解析协议
网络层使用的是IP地址,但实际网络在链路上传送数据帧时,最终还是必须使用该网络的硬件地址。但是IP地址和下面的网络硬件地址之间由于格式不同而不存在简单的映射关系。此外,在一个网络上可能经常会有新的主机加进来,或撤走一些主机。更换网络适配器也会使主机的硬件地址改变。地址解析协议ARP解决这个问题的方法是在在主机ARP告诉缓存区中存放一个从IP地址到硬件地址的映射表,并且这个映射表还经常动态更新。
每一个主机都设有一个ARP 告诉缓存表,里面有本局域网上各主机和路由器的IP地址到硬件地址的映射表。这些都是该主机目前知道的一些地址。举例说明,主机怎样知道IP地址对应的硬件地址:
当主机A要向本局域网上的某个主机B发送IP数据报时,就先在其ARP告诉缓存中查看有无主机B的IP地址,如果有,就在ARP查出对应的硬件地址,再把这个硬件地址写入MAC帧,然后通过局域网把该MAC帧发往此硬件地址。
评论
查看更多