图解TCP/IP:IP地址

匿名 (未验证) 提交于 2019-12-03 00:08:02

IP地址的基础知识

IP地址就像是TCP/IP通信的一块基石。

IP地址的定义

IP地址(IPv4地址)由32位正整数来表示,在计算机内部以二进制方式被处理。采用一种特殊的标记方式,将32位的IP地址以每8位为一组,分成4组,每组以“.”隔开,再将每组数转换为十进制数。

通常一块网卡只设置了一个IP地址,其实一块网卡也可以配置多个IP地址。此外,一台路由器通常都会配置两个以上的网卡,因此可以设置两个以上的IP地址。

IP地址由网络和主机两部分标识组成

IP地址由“网络标识(网络地址)”和“主机标识(主机地址)”两部分组成。网络标识在数据链路的每个段配置不同的值,网络标识必须保证互相连接的每个段的地址不相重复,而相同段内相连的主机必须由相同的网络地址。IP地址的“主机标识”则不允许在同一个网段内重现出现。

IP地址具有唯一性。

究竟从第几位开始到第几位算是网络标识,又从第几位开始到第几位算是主机标识呢?有约定俗成的两种类型:以分类进行区别、以子网掩码区分。

# 网络标识同一网段内值相同,主机标识同一网段内值不能相同。 "192.168.128.10/24"中的"/24"表示从第1位开始到多少位属于网络标识。

IP地址的分类

IP地址分为四个级别,分别为A类、B类、C类、D类。它根据IP地址中从第1位到第4位的比特列对其网络标识和主机标识进行区分。

A类地址

A类IP地址是首位以"0"开头的地址。从第1位到第8位是它的网络标识,用十进制表示的话,0.0.0.0 ~ 127.0.0.0是A类的网络地址。A类地址的后24位相当于主机标识。因此一个网段内可容纳的主机地址上限为16777214个。

B类地址

B类IP地址是前两位为"10"开头的地址。从第1位到第16位是它的网络标识,用十进制表示的话,128.0.0.1 ~ 191.255.0.0是B类的网络地址。B类地址的后16位相当于主机标识。因此一个网段内可容纳的主机地址上线为65534个。

C类地址

C类IP地址是前三位为"110"开头的地址。从第1位到第24位是它的网络标识,用十进制表示的话,192.168.0.0 ~ 239.255.255.0是C类的网络地址。C类地址的后8位相当于主机标识。因此一个网段内可容纳的主机地址上线为254个。

D类地址

D类IP地址是前四位为"1110"开头的地址。从第1位到第32位是它的网络标识,用十进制表示的话,224.0.0.0 ~ 239.255.255.255是D类的网络地址。D类地址没有主机标识,常被用于多播。

关于分配IP主机地址的注意事项:要用比特位表示主机地址时,不可以全部为0或全部为1。因为全部为只有0在表示对应的网络地址或IP地址不可获知的情况下才使用,而全部为1的主机地址通常作为广播地址。

广播地址

广播地址用于在同一个链路中相互连接的主机之间发送数据包。将IP地址中的主机地址部分全部设置为1,就成为了广播地址。

广播分为本地广播和直接广播。

  • 在本网络内的广播叫做本地广播。例如网络地址为192.168.0.0/24的情况下,广播地址是192.168.0.255。因为这个广播地址的IP包会被路由器屏蔽,所以不会到达192.168.0.0/24以外的其他链路上。

  • 在不同网络之间的广播叫做直接广播。例如网络地址为192.168.0.0/24的主机向192.168.1.255/24的目标地址发送IP包。收到这个包的路由器,将数据转发给192.168.1.0/24,从而使得所有192.168.1.1~192.168.1.254的主机都能收到这个包。

IP多播

多播用于将包发送给特定组内的所有主机。多播既可以穿透路由器,又可以实现只给那些必要的组发送数据包的技术。

广播的情况下:路由器不转发广播的包 多播的情况下:路由器复制多播的包

多播使用D类地址。如果从首位开始到第4位是"1110",就可以认为是多播地址。而剩下的28位可以成为多播的组编号。从224.0.0.0到239.255.255.255都是多播地址的可用范围。其中从224.0.0.0到224.0.0.255的范围不需要路由控制,在同一个链路内也能实现多播,而在这个范围之外设置多播地址会给全网所有组内成员发送多播的包。

对于多播,所有主机(路由器以外的主机和终端主机)必须属于224.0.0.1的组,所有的路由器必须属于224.0.0.2的组。

利用IP多播实现通信,除了地址外还需要IGMP(Internet Group Management Protocol)等协议的支持。

子网掩码

新的组合方式:由一个叫做“子网掩码”的识别码通过子网网络地址细分出比A类、B类、C类更小粒度的网络。这种方式实际上就是将原来A类、B类、C类等分类中的主机地址部分用作子网地址,可以将原网络分为多个物理网络的一种机制。

子网掩码用二进制方式表示的话也是一个32位的数字,对应IP地址网络标识部分的位全部为“1”,对应IP地址主机标识的部分则全部为“0”。子网掩码必须是IP地址的首位开始连续的“1”。

对于子网掩码,有两种表示方式:

  • 将IP地址与子网掩码的地址分别用两行来表示

  • 在每个IP地址后面追加网络地址的位数用"/"隔开

# 子网掩码可以灵活指定网络标识的长度 IP地址:     172.      20.     100.      52         10101100 00010100 01100100 00110100  子网掩码:   255.     255.     255.      192         11111111 11111111 11111111 11000000  网络地址:   172.      20.     100.        0         10101100 00010100 01100100 00000000  多播地址:   172.      20.     100.       63         10101100 00010100 01100100 00111111 

CIDR与VLSM

采用任意长度分割IP地址的网络标识和主机标识,这种方式叫做CIDR(Classless Inter-Domain Routing, 无类型域间选路)。由于BGP(Border Gateway Protocol, 边界网关协议)对应了CIDR,所以不受IP地址分类的限制自由分配。CIDR更有效地利用了当前IPv4地址,同时通过路由集中降低了路由器的负担。

# 应用CIDR技术将203.183.224.1到203.183.225.254的地址合为同一个网络。  网络地址标识  IP主机地址标识 

VLSM(Variable Length Subnet Mask, 可变长子网掩码)是一种可以随机修改组织内各个部门的子网掩码长度的机制,可以通过域间路由协议为RIP2以及OSPF实现。

有了CIDR和VLSM技术,确实相对缓解了全局IP地址不够用的问题。

全局地址与局部地址

新技术:不要求为每一台主机或路由器分配一个固定的IP地址,而是在必须的时候只为相应数量的设备分配唯一的IP地址。

私有网络的IP地址范围如下所示:

  • 10.0.0.0~10.255.255.255(10/8) -> A类

  • 172.16.0.0~172.31.255.255(172.16/12) -> B类

  • 192.168.0.0~192.168.255.255(192.168/16) -> C类

全局IP地址基本上要在整个互联网范围内保持唯一,但私有地址不需要。只要在同一个域里保证唯一即可,在不同的域里出现相同的私有IP不会影响使用。

私有IP地址结合NAT技术已成为限制解决IP地址分配问题的主流方案。NAT技术能够互换私有IP与全局IP地址,这样配有私有地址的主机与配有全局地址的互联网主机实现了通信。

全局地址由谁决定

在世界范围内,全局IP由ICANN(Internet Corporation for Assigned Names and Numbers, 互联网名称与数字地址分配机构)进行管理。

普遍采用的一种方式是:在LAN中设置私有地址,通过少数设置全局IP地址的代理服务器结合NAT的设置进行互联网通信。这样IP地址个数就不限于LAN中主机个数而是由代理服务器和NAT的个数决定。

(最近更新:2019年09月18日)

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!