🥊作者:一只爱打拳的程序猿,Java领域新星创作者,CSDN、阿里云社区优质创作者。
🤼专栏收录于:计算机网络原理
本博文讲解网络层重点协议之IP协议,主要讲解IP地址的组成、IP地址的分类、IP地址的管理、路由选择。这也是一名程序猿需要了解的知识,话不多说让我们进入IP地址的学习。
目录
1、IP协议
1.1 认识IP地址
1.2 IP地址的组成
1.3 IP地址的分类
2、IP地址管理
1.1 动态分配
1.2 NAT机制
3、路由选择
1、IP协议
1.1 认识IP地址
IP协议是网络层的重点协议。简单来讲,IP协议由IP地址来表示的,IP地址是使用 4 个 8 位整数共 32 位整数、并用点分十进制的形式组成的。
如 11000000.10101000.00000000.00000000 =》192.168.0.0。如同192.168.0.0这样的一串数据就是IP地址。
1.2 IP地址的组成
IP地址是由网络号与主机号组成,前 24 位为网络号,后 8 位为主机号。
网络号:标识网段,保证互相连接的两个网段具有不同的标识。
主机号:标识主机,同意网段内可有相同的网络号,但不能有相同的主机号。
具体来说,网络号是通过子网掩码与IP地址进行逻辑与运算得到的。举个例子,假设有一个IPv4地址为192.168.0.1,子网掩码为255.255.255.0。那么,在进行与运算后,得到的网络号就是192.168.0.0。在这个例子中,192.168.0是网络号,1是主机号。
子网掩码:在家庭网络中通常为255.255.255.0,其他网络则是由网管搭建或大型公司搭建就不一样了。
在同一局域网内,两个不同的设备网络号相同、主机号不同,在连网的时候通过路由器完成连接。
WAN接口,全称为广域网接口(Wide Area Network Interface),是指连接广域网的接口。广域网是指跨越较大地域范围的网络,例如Internet。WAN接口通常用于连接本地网络与广域网之间的设备,用于实现与外部网络的通信。常见的WAN接口类型包括以太网、光纤、电缆调制解调器(Cable Modem)和数字用户线路(Digital Subscriber Line,DSL)等。
LAN接口,全称为局域网接口(Local Area Network Interface),是指连接局域网的接口。局域网是指较小范围内的网络,例如家庭、办公室或校园内的网络。LAN接口通常用于连接本地网络中的设备,用于实现内部网络之间的通信。常见的LAN接口类型包括以太网、Wi-Fi等。
1.3 IP地址的分类
IP地址分为ABCDE五类:
A类地址:以0开头,范围从1.0.0.0到126.0.0.0。A类地址适用于大型网络,可以容纳约16,777,216个主机。
B类地址:以10开头,范围从128.0.0.0到191.255.0.0。B类地址适用于中等规模的网络,可以容纳约65,536个主机。
C类地址:以110开头,范围从192.0.0.0到223.255.255.0。C类地址适用于小型网络,可以容纳约256个主机。
D类地址:以1110开头,范围从224.0.0.0到239.255.255.255。D类地址用于多播(multicast)通信。
E类地址:以11110开头,范围从240.0.0.0到255.255.255.255。E类地址保留用于特殊目的,例如用于实验和研究。
以上的五类分类通常是出现在教科书中的,现在广泛使用的是无类别域间路由(CIDR)技术,不再严格按照这些分类,大家只需要了解即可。
子网掩码:
255.0.0.0:用于划分A类地址。第一个8位块全是1,后面三个8位块全是0。这表示第一个8位块用于网络标识,后面三个8位块用于主机标识。可以容纳约16,777,216个主机。
255.255.0.0:用于划分B类地址。前两个8位块全是1,后面两个8位块全是0。这表示前两个8位块用于网络标识,后面两个8位块用于主机标识。可以容纳65,536个主机。
255.255.255.0:用于划分C类地址。前三个8位块全是1,最后一个8位块全是0。这表示前三个8位块用于网络标识,最后一个8位块用于主机标识。可以容纳256个主机。
特殊的IP地址:
127.0.0.1:这是本地回环地址,也称为"localhost"。它用于在本地主机上测试网络服务和应用程序,可以用来访问本机上运行的网络服务,如Web服务器。
0.0.0.0:这是未指定地址,用于标识当前主机上的所有网络接口。它通常用于路由器和其他网络设备上,表示所有网络接口都可用。
255.255.255.255:这是广播地址,用于一次性向网络中的所有主机发送数据包。当需要将数据包发送给同一网络中的所有主机时,可以使用广播地址。
注意,IPv6已经逐渐被引入,并提供了更大的地址空间。IPv6不采用分类,而是使用固定长度为128位的地址来表示。
2、IP地址管理
IP地址是由 32 位整数来表示的,因此最多能表示 42亿9千万个地址。但满足世界上所有电脑是不够的,因此我们可以通过 动态分配IP地址 和 NAT机制 来管理IP地址。
1.1 动态分配
为了合理分配IP地址,会给上网的设备分配IP地址,没有上网的设备不分配IP地址如关机的设备等,此时就能剩下大量的IP地址了。
动态分配没有增长IP地址,只是通过给需要上网的设备分配IP地址,缓解了IP地址的不足,因此只能一定程度上解决IP地址不够问题。
但随着IP地址的不足,IPv6已经陆续引入到现实使用当中,如支付宝。
1.2 NAT机制
NAT名为网络地址转换(Network Address Translation),它是一种将私有IP地址转换为公共IP地址的技术。
NAT机制把IP地址分为两大类:内网IP地址、外网IP地址。
内网IP地址:10.*、172.16.*-172.31.*、192.168.*,如10.1.1.2、172.16.1.2等。
外网IP地址:其余所有的IP地址
外网IP必须唯一,内网IP可以出现重复(尤其是在不同的局域网中)如:我在网上购物我家小区的地址是唯一的,而购物的我或者其他住户地址是不唯一的。
一个局域网内IP地址也称为内网IP,因此各个设备的网络号相同,主机号不同。内网IP如何访问外网IP呢,我们可以通过路由器来完成访问,路由器就是一个NAT设备。
网络通信是按照源IP地址与目的IP地址来进行发送的,因此内网IP地址(源IP)向外网IP地址(目的IP)发送。
由于各个设备的IP地址不同,路由器会将主机等设备的源IP地址转换为路由器的IP地址作为源IP地址来进行发送,再根据各个设备的端口号来返回相应信息。如下图所示:
因此,内网无法直接访问外网,外网无法直接方法内网,而是通过路由器等设备来完成相互访问。 路由器会根据各个设备的特殊标识(端口号等)来确定数据返回相应的设备。
NAT背景下的通信:
外网设备访问外网设备,不需要任何 NAT,可直接访问。
内网设备访问其他内网设备,不允许。
外网设备访问内网设备,不允许。
内网设备访问外网设备,需要通过内网设备路由器来完成相互访问。
3、路由选择
我们在使用高德地图时,只需要输入出发地点和目的地,系统就能很好给我们分配乘车路线,那是因为这些地点都在算法中存在了。
但在互联网中我们进行网络交互时,路由器无法把整个网络环境给记录下来。但路由器记录了附近的网络,附近的网络又记录了其他的网络,这样一步步就能组成互联。
因此,在进行互联网交互前的寻找连接路径实际上类似于现实生活中的问路,一步步的把整个路线给走完,这样的过程就是路由选择。
解释路由表:
每个路由器都维护一个路由表,其中包含关于其他网络和路由的信息。路由表记录了目标网络的网络地址、下一跳的路由器和出接口等信息。
本篇博文到这里就结束了,感谢点赞、收藏、评论、关注!