TCP/IP illustrated 阅读笔记(二) 网络地址架构

本文是TCP/IP Illustrated阅读笔记的第二部分,主要介绍了网络地址的基本结构,包括classful addressing的五类地址,unicast、multicast、broadcast和anycast地址的概念,以及子网划分的必要性和实现方式。进一步探讨了CIDR(Classless Inter-Domain Routing)如何提高IP地址利用率,并解释了路由聚合(Aggregation)在解决路由表规模问题上的作用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1、Basic IP Address Structure


1.1 classful Addressing:

这是早期的网络地方划分方式,现在已经被CIDR取代。

分为A B C D E五类,A B C都是单播地址,D是广播地址,E保留,A B C主要区别在于网络号和主机号所占的字节不同


1.2网络地址分类:

unicast address:

最普遍的ip地址,每个连接至Internet的端点都需要一个unicast address

multicast address:

一个多播地址代表一个多播组,给这个多播地址发送一个数据包,多播组内所有的成员(每个成员都有自己的ip地址),发送者是不会知道有哪些ip地址会收到这个包的。一个端口(ip地址)可以申请加入一个多播组,或者退出一个多播组

broadcast address:

本地广播地址:255.255.255.255,只会在单个子网内转发,路由器不会对这个地址进行转发

直接广播:子网号+全1的主机号,可以给别的子网发送广播消息,这个广播地址目前大部分路由器都不支持了

anycast address:

任意播(额。。。记得老师是这么称呼的,好像任意门啊,有木有),anycast的地址不是指向一个具体的host,而是对应了一个最适合的或者最近的ip地址。anycast一般用于发现提供公共服务的host(比如DNS server)

private address:

10.0.0.0/8, 172.16.0.0/12, 192.168.0.0/16 这是三个私有地址网段,这个地址在外网上是不会被路由的。

1.3 subnet:

为什么会出现子网:

原来使用的A B C的方式,如果有新的LAN(局域网,不存在NAT),需要给这个新网络分配一个网络号(A的或者B的或者C的),这样会很麻烦,为什么会很麻烦呢,书中没有明说。我自己的思路还不清晰,就不瞎说了

子网的实现方式:

原来的网络地址主要是由网络号和主机号组成,现在把主机号拆分一下,高位的(左边的)作为子网络号,右边的作为主机号。那么问题来了,以前路由器拿到一个网络地址的时候,看看地址prefix就知道这是哪类地址了,进而知道哪几位是网络号,哪几位是主机号,但是现在不行了,所以引入了一个新的机制叫做子网掩码(subnet mask),子网掩码中1都在最左边,多少个1就标识网络号(含网络类别前缀、网络号、子网号)占了多少位,这样路由器就能知道子网号是多少位、主机号是多少位了

在子网外的网络中,子网对路由器来说是不可见的,意思就是你有没有子网,外面的路由器是不知道的,只有当数据包到达当前子网的边界路由器时,子网掩码才开始产生作用,因为这个边界交换机需要根据子网号进行转发。子网还可以继续划分子网,逻辑是类似的,可以随意扩展,因为对外网来说子网是透明的,所以不需要对外网的路由器进行任何改变,是不是很方便撒

VLSM(变长子网掩码):

之前的一个网络内划分的子网的子网号都是定长的,只需要一个子网掩码就够了,但是这样划分子网的话每个子网的主机数都是相同的,是不是很不方便,尤其是当不同子网的主机数差别很大时。这个时候VLSM就开始发挥作用了,子网掩码的长度是不同的(即网路号的长度不一样)。可以根据子网内的主机数不同配置不同规模的子网

 

1.4 CIDR and Aggregation


1.4.1 CIDR (ClasslessInter-Domain Routing)

CIDR是为了解决什么问题:

B类网络已经快用完了(因为实际上很多分配的网路号中的地址利用率不高,所以挺浪费的)

CSDR的原理:

CSDR不再按之前的方式一次分配一个A、B或者C类的网络号,而是一次分配一块相邻的IP地址(不一定是整个某一个类网络),可以理解为现在的网络号不是以前固定的三种长度了,而是变长的了,这样ip地址的利用率提高了。但是因为网络号是变长的了,所以需要一种方式去告诉路由器,这个就是network prefix.这个机制和子网掩码是类似的,都是用来告诉路由器网络号的长度,不同的时 network prefix是用于标识网段(ip地址区间),而子网掩码是用来标识子网号的

1.4.2 Aggregation

Aggregation是为了解决什么问题:

不断有新加入的网络,因为地理分布是随机的,所以路由器的路由表的规模也在不断增加,影响到了路由器的性能。

Aggregation的原理:

把相邻的IP地址段地理分布上聚集(aggregate)到一起,这样路由器就可以根据地址的前缀进行转发了,假设一个ip地址需要一个路由表项,那么把1024个ip地址分配到同一个片区,那么路由器就不需要记录1024个表项,1个就够了。例子参看下图

 


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值