一、IP 地址
- IP 协议有两个版本,IPv4 和 IPv6
- IP 地址(IPv4 地址)是一个 4 字节,32 位的正整数,通常使用 “点分十进制” 的字符串进行表示,例如 192.168.0.1,用点分割的每一个数字表示一个字节,范围是 0 ~ 255
- IP 地址由 “网络标识(网络地址)” 和 “主机标识(主机地址)” 两部分组成,例如 192.168.128.10/24,其中的 “/24” 表示从第 1 位开始到多少位属于网络标识,那么,剩余位就属于主机标识了,但是,究竟从第几位开始到第几位算是网络标识,又是从第几位开始到第几位算是主机标识呢?网段划分
二、MAC 地址
三、地址的唯一性和层次性
- 唯一性:在同一个通信网络中不允许有两个相同地址的通信主体(通信传输中,发送端和接收端可以被视为通信主体)存在
- 层次性:当地址的总数越来越多时,便于高效地从中找出通信的目标地址
MAC 地址和 IP 地址在标识一个通信主体时虽然都具有唯一性,但是它们当中只有 IP 地址具有层次性
MAC 地址由设备的制造厂商针对每块网卡进行分别指定,人们可以通过制造商识别号、制造商内部产品编号以及产品通用编号来确保 MAC 地址的唯一性,然而,人们无法确定哪家厂商的哪个网卡被用到了哪个地方,虽然 MAC 地址中的制造商识别号、产品标号以及通用编号等信息在某种程度上也具有一定的层次性,但这对寻找地址来讲,并没有起到任何作用,所以不能算作有层次的地址,正因如此,虽然 MAC 地址是真正负责最终通信的地址,但在实际寻址过程中,IP 地址却必不可少
那么,IP地址又是怎样实现分层的呢?IP 地址 = 网络号 + 主机号
网络传输中,每个节点(节点是主机和路由器的统称,主机的定义是指 “配置有 IP 地址,但是不进行路由控制的设备” ,既配有 IP 地址又具有路由控制能力的设备叫做 “路由器”)会根据分组数据的地址信息,来判断该报文应该由哪个网卡发出去,为此,各个地址会参考一个发出接口列表,在这一点上,MAC 寻址和 IP 寻址是一样的,只不过 MAC 寻址中所参考的是地址转发表,而 IP 寻址中所参考的是路由控制表(注意,地址转发表和路由控制表并不需要在网络中的各节点上手动进行设置,而是由这些节点自动生成,其中,地址转发表根据自学自动生成,而路由控制表则是根据路由协议自动生成),MAC 地址转发表中记录的是实际的 MAC 地址本身,而路由控制表中记录的 IP 地址则是集中了之后的网络号
IP 数据报被转发到途中某个路由器时,正是利用目标 IP 地址的网络标识进行路由,因为即使不看主机标识,只要一见到网络标识就能判断出是否为该网段内的主机