网络互联与IP地址

目录

网络互联概述

网络的定义与分类

网络的定义

  • 所谓网络互联就是把分散分布的各个小网连接起来,以构成更大规模的网络系统,实现网络间的数据通信、资源共享和协同工作。
  • 基本上来说,所谓计算机网络就是利用通信线路和通信设备把计算机连接起来的计算机集合。
  • 计算机网络的目的是实现资源共享(可以是打印机、文件、数据库或某个程序)、实时通信(如QQ、电子邮件或视频会议)等

网络的分类

  • 按照网络所覆盖的范围分类
分类 定义 特点 覆盖范围
局域网(Local Area Network,LAN) 通常指在一个较小的地理范围内存在的网络(如:一个房间、一栋建筑物或者一个单位内) 通常由一个单位或个人所拥有,网络中传输速率很高(10~1000Mbps),通常很少在局域网内对用户收费。 直径1km以下
城域网(Metropolitan Area Network,MAN) 通俗地讲就是分布在一个城市里的网络 有时城域网也归类到广域网中 1~10km
广域网(Wide Area Network,WAN) 是指分布在不同城市、国家或州的网络 数据需要传输的距离远,因此线路铺设费用高 10km以上
  • 一个计算机网络可以分为:资源子网和通信子网两部分。
    资源子网中主要是各种计算机 ,可以是常见的PC,也可以是大型的服务器(通常服务器是服务的提供者,而PC等则是资源的使用者)
    通信子网中包含各种通信设备 (常见的通信设备有集线器、交换机、路由器,还有电信部门中的各种广域网设备)和通信线路 (最常见的通信线路就是双绞线和光纤,电话线也可以是通信线路的一部分)。

OSI模型和DoD模型

  • 目前有各种各样的网络协议,常见的有TCP/IP、IPX/SPX、NetBEUI、AppleTalk等,不过最重要的是要记住计算机间只有使用同一网络协议才能通信。
  • 网络协议是指为了实现计算机间的通信而设计的一组规则。(网络协议3要素:语法、语义、语序)
  • 网络协议分层使得网络协议的各层功能相互独立又相互依赖;各层完成各自的功能,上层不需要知道下层是如何工作的,一层的变化不影响另一层的功能;下层为上层服务,上层依赖下层完成其功能。
  • ISO(International Organization for Standardization,国际标准化组织)制定了大家普遍接受的网络协议七层模型(Open System Interconnect,即OSI模型,开放式互联模型)。
  1. 物理层:这是整个OSI参考模型的最底层,它的任务就是提供网络的物理连接。物理层建立在物理介质上,它提供的是机械和电气接口,主要包括电缆、物理端口和附属设备,如双绞线、同轴电缆、接线设备(如网卡等)、RJ-45 接口、串口和并口等都是工作在这个层次的。
  2. 数据链路层:数据链路层建立在物理传输能力的基础上,以帧为单位传输数据,它的主要任务就是进行数据封装和建立数据链接。具体地讲,数据链路层的功能包括建立与释放数据链路连接,构成数据链路的数据单元,分裂数据链路连接、定界与同步,以及检测和恢复流量控制和差错等方面。
    封装的数据信息中,地址段含有发送节点和接收节点的地址,控制段用来表示数据链接的类型,数据段含实际要传输的数据,差错控制段用来检测传输中帧出现的错误。
  3. 网络层:网络层属于OSI中的较高层次。从它的名字可以看出,它解决的是网络与网络之间的通信问题,而不是同一网段内部的事。网络层的主要功能是提供路由,即选择到达目标主机的最佳路径,并沿该路径传送数据包。
  4. 传输层:传输层解决的是数据在网络之间的传输质量问题,它属于较高层。传输层用于提高网络层服务质量,提供可靠的端到端的数据传输。
  5. 会话层:会话层利用传输层来提供会话服务。会话可能是一个用户通过网络登录到一台主机,或一个正在建立的用于传输文件的会话。会话层的功能主要有会话连接到传输连接的映射、数据传送、会话连接的恢复和释放、会话管理、令牌管理和活动管理。
  6. 表示层:表示层用于数据的表示方式,如用于文本文件的ASCII和EBCDIC等。如果通信双方使用不同的数据表示方法,它们就不能互相理解。表示层就是用于屏蔽这种不同之处。表示层的功能主要有数据语法转换、语法表示,数据加密和数据压缩。
  7. 应用层:这是OSI参考模型的最高层,它解决的也是最高层次,即程序应用过程中的问题,它直接面对用户的具体应用。应用层包含用户应用程序执行通信任务所需要的协议和功能,如电子邮件和文件传输等。在这一层中,TCP/IP协议中的FTP、SMTP、POP 等协议得到了充分应用。
  • TCP/IP有自己的四层模型,即DoD模型。

    在DoD模型中,应用层涵盖了OSI模型的应用层、表示层、会话层;传输层、网络互联层与OSI模型中的传输层、网络层一一对应;网络访问层则涵盖了OSI模型中的数据链路层和物理层。

网络拓扑结构

  • 所谓网络拓扑结构是指计算机是以何种方式连接在一起的。
  • 常见的局域网拓扑结构主要有三种:总线型、星型、环型。

总线型拓扑结构


所有的计算机连接在同一根总线上,如同有线电视。总线型结构中,使用的传输介质通常是同电缆(粗缆或者细缆)。

优点:安装简便,节省线缆。某一节点的故障一般不会影响到整个网络的通信。

缺点:只要有一段线路发生故障,整个网络就会瘫痪,而且故障点排查很困难;某一节点发出的信息可以被所有其他节点收到,安全性低;当网络的规模发生变化时,增减计算机机要先新开网络;同轴电缆制作较为麻烦,随着集线器和双绞线价格的降低,总线型网络已经基本不再使用。

星型拓扑结构


在星型结构中,所有的计算机都连接到一个中央设备上。

优点:一台计算机所使用的线路如果有故障不会影响到其他计算机,故障排除也容易得多;容易在网络中增加新的节点;通信数据必须经过中心节点中转,易于实现网络监控,而且由于有集中点,管理也集中了,工作量要小得多。

缺点:中央点的设备故障将会导致整个网络的瘫痪;由于需要中央点设备,成本较高,不过像集线器这样的设备价格很低,一般用户都能够承受。

星型结构有一些变种,如树型拓扑结构就是由星型结构构成。(树型结构实际上是一种层次化的星型结构)

优点:能够快速将多个星型网络连接在一起,易于扩充网络规模。

缺点:层级越高的节点故障导致的网络问题越严重。

环型拓扑结构


环型拓扑结构中所有的计算机连成一个封闭的环,信号的传输是以接力棒的形式进行的。

优点:节省线缆,成本低;采用令牌的方式使得网络中没有冲突存在,因此适合于网络负载比较大的场合。

缺点:增加新的节点比较麻烦,必须先中断原来的环,才能插入新节点以形成新环;所有的计算机共享一个环路,数据必须经过所有的节点,因此一个节点发生故障会导致整个网络的故障。

传输介质

同轴电缆

同轴电缆的中央是一条单根的铜导线;在铜线外是塑料绝缘层;绝缘层外有一层铜导线编制的金属网,金属网不仅是电路中的一条导线,而且起着屏蔽作用,有助于减少外部干扰;最外一层是防护套,起着保护作用。

同轴电缆有粗缆和细缆之分。粗缆就是通常所说的10Base-5,细缆就是 10Base-2,它们的传输速率都是10Mbps,粗缆的传输距离是500m,细缆的传输距离是185m。同轴线制作起来相对比较麻烦;价格中等;屏蔽性能好;但由于需要接地,并且线的直径较大,安装起来不是很容易;传输速率仅仅为10Mbps。所以现在的网络已经基本上不使用同轴电缆了。

双绞线


  • 双绞线中的线是双双绞在一起的,在绝缘材料里共有 4 对双绞线,同一对线中的两芯线在同一电流回路中,任何时候电流的大小相等方向相反。双绞可以减小这一对线对另一对线的电磁干扰,同时也可以减少别的线对产生的电磁干扰对自己的影响。正因为这样,在制作双绞线时,保证正确的线序是至关重要的。
    双绞线有屏蔽双绞线(Shielded Twisted Pair,STP)和非屏蔽双绞线(Unshielded Twisted Pair,UTP)之分。由于屏蔽双绞线(STP)价格高,线体积大,需要接地,安装不便,速率也不比非屏蔽双绞线高,所以STP现在已经不是很常用了,而 UTP则相当普及。

双绞线的分类:

  • 按照等级分:常用的有3类、5类、6类。
等级 速率/Mbps 传输距离/m 常见用途
3 10 100 10Base-T
5 100 100 100Base-TX
6 1000 100 1000Base-T
  • 按照网线类型分:网络线有直通线和交叉线之分。

    简单来说,直通网线和交叉网线的主要区别在于线缆两端端接时采用的线序标准不同。直通网线的两端均采用T-568A线序标准或T-568B线序标准,而交叉网线的一端采用T-568A线序标准另一端采用T-568B线序标准。

    T568A排线顺序从左到右依次为:白绿、绿、白橙、蓝、白蓝、橙、白棕、棕。
    T568B排线顺序从左到右依次为:白橙、橙、白绿、蓝、白蓝、绿、白棕、棕。

区别:

  • 直通就是网络线两头线序的排列是相同的,一一对应;而交叉线则是线的一端的1、2芯对应另一端的3、6芯。
  • 直通网线和交叉网线的应用范围并不相同:直通网线常用来连接不同的设备,交叉网线用来连接相同的设备。
网线类型 常见应用
直通线 计算机与集线器、计算机和交换机、路由器和集线器、路由器和交换机之间的连接
交叉线 计算机与计算机、集线器和集线器、交换机和交换机、路由器和计算机之间的连接

光纤

  • 光纤是利用光的全反射原理,用光来传输数据的。
  • 光纤由纤芯、包层和涂敷层三部分构成。
    纤芯:光纤的中心部分,折射率高于包层,光波主要在纤芯中传输。
    包层:环绕纤芯的区域,折射率低于纤芯,以提供反射面或光隔离。
    涂覆层:光纤的最外层结构,能够保护光纤表面不受潮湿气体和外力擦伤,赋予光纤提高抗微弯性能,降低光纤的微弯附加损耗功能。
  • 光纤的分类:
    光缆的分类 { 按应用场合分 { 室内光缆 室外光缆 按传输性能分 { 单模光缆 多模光缆 按加强筋和护套等是否含金属材料分 { 金属光缆 非金属光缆 按护套形式分 { 塑料护套 综合护套 铠装光缆 按敷设方式分 { 架空 直埋 水下光缆 按成缆结构方式分 { 层绞式 骨架式 束管式 叠带式 光缆的分类\begin{cases} 按应用场合分 \begin{cases} 室内光缆 \\ 室外光缆 \\ \end{cases} \\ 按传输性能分 \begin{cases} 单模光缆 \\ 多模光缆 \\ \end{cases} \\ 按加强筋和护套等是否含金属材料分 \begin{cases} 金属光缆 \\ 非金属光缆 \\ \end{cases} \\ 按护套形式分 \begin{cases} 塑料护套 \\ 综合护套 \\ 铠装光缆 \\ \end{cases} \\ 按敷设方式分 \begin{cases} 架空 \\ 直埋 \\ 水下光缆 \\ \end{cases} \\ 按成缆结构方式分 \begin{cases} 层绞式 \\ 骨架式 \\ 束管式 \\ 叠带式 \\ \end{cases} \\ \end{cases} 光缆的分类⎩ ⎨ ⎧按应用场合分{室内光缆室外光缆按传输性能分{单模光缆多模光缆按加强筋和护套等是否含金属材料分{金属光缆非金属光缆按护套形式分⎩ ⎨ ⎧塑料护套综合护套铠装光缆按敷设方式分⎩ ⎨ ⎧架空直埋水下光缆按成缆结构方式分⎩ ⎨ ⎧层绞式骨架式束管式叠带式

  • 光纤通信的优缺点

    优点:

    (1)频带宽、通信容量大

    (2)损耗低、中继距离长

    (3)保密性能好

    (4)抗电磁干扰

    缺点:

    (1)光纤怕弯曲,容易折断

    (2)光纤连接困难

    (3)光纤通信过程中怕水、怕冰

  • 光纤 VS 铜线

    一般我们可以通过电缆和光纤两种方式来接入网络,而我们所说的电缆就是通过铜线来传播电信号,而光纤主要是传播光信号。

    传播速度:光纤( ≈ 2.3 × 1 0 8 m / s ≈2.3×10^8m/s ≈2.3×108m/s)<铜线( ≈ 2 × 1 0 8 m / s ≈2×10^8m/s ≈2×108m/s)

    传输时延:光纤(电->光->电)<铜线

    传输距离:光纤(单模光纤最大传输距离可达100km)>铜线(不超过100m)

    信号质量:光纤>铜线

    价格:光纤>铜线

介质访问控制方式

  • 当多台计算机连接在同一传输介质上时,不可避免地会产生冲突,必须有一种机制来解决这种冲突,这就是介质访问控制的目的。
  • 介质访问控制是OSI中第二层(数据链路层/MAC子层)完成的功能,有两种介质访问控制方法。

CSMA/CD

  • CSMA/CD(Carrier Sense Multiple Access/Collision Detection)意为带冲突检测的多路访问,其工作原理可以概括为 "先听后发、边听边发、冲突停止、等待重发"。
  • 计算机在开始发送数据前,先检查线路上是否有载波信号存在,如果有就先放弃,过一段时间再尝试重发;如果线路空闲,计算机就开始发送信号,在发送的过程中为了保证信号正确,还一边监听是否有冲突产生;一旦产生冲突,计算机就停止发送信号,随机等待一段时间重新开始尝试发送信号。
  • 在CSMA/CD中,计算机实际上是执行竞争原则,计算机何时能够"抢"到传输介质将是无法预计的。
  • 优缺点:
    优点:原理比较简单,技术上易实现,网络中各工作站处于平等地位 ,不需集中控制,不提供优先级控制。
    缺点:网络负载增大时,发送时间增长,发送效率急剧下降。

令牌

  • 和CSMA/CD不一样,使用令牌控制介质的访问时,计算机在访问介质前要先得到一个令牌。
  • 令牌在一个封闭的环中按照一个特定的方向旋转,如果计算机没有数据发送时,令牌就直接传给下一计算机;如果有数据要发送,计算机就把令牌拿下,把数据发送出去,等到确认对方计算机已经收到后,把令牌交给下一计算机。每台计算机拿到令牌后可以发送数据的时间是有限的,以防止某台计算机长期占住令牌。令牌的机制实际上就是轮流机制,由于网络中始终只有一个令牌存在,因此网络中不会有冲突存在
  • 当网络中的计算机数量一定时,每台计算机等待令牌的最大时间是可以预测的,今牌介质访问控制方式在IBM的令牌环网(Token Ring)中采用。
  • 优缺点:
    优点:在一般情况下,这一类网络不会出现冲突问题。
    缺点:令牌可能损坏或丢失,以致所有的站点都在等待并不存在的令牌。相反地,网络中也有可能出现两个或多个令牌,导致站点在错误的时间发送数据。而上述问题往往是源自硬件的错误,尤其是网卡。

网络设备

理解集线器、交换机与路由器

通信子网中,有各种各样的网络设备,包括网卡、集线器、交换机、路由器等。通常来说,网卡、集线器、交换机主要用于构建局域网;而路由器则不仅可以用于局域网,更多的是用于广域网中。

网卡

  • 网卡(Network Interface Card,NIC)也称为网络适配器,是计算机和传输介质连接的传输接口,它把计算机要发送的数据转换成不同传输介质上所需要的信号。
  • 所有的网卡都有一个地址称为MAC地址。MAC地址是共48位的二进制位,或是12位的十六进制位 ,它被写在卡上的一块只读存储器ROM中。 在网络上的每一个计算机都必须拥有一个独一无二的MAC地址,没有任何两块被生产出来的网卡拥有同样的地址。这是因为电气电子工程师协会(IEEE)负责为网络接口控制器(网卡)销售商分配唯一的MAC地址。
  • MAC地址分成两个部分,例如:0x0080c81c2996(12位的十六进制位)中的0080c8为网卡生产厂家的编号,1c2996为网卡的编号。MAC地址是网卡用来判断数据是否发送给自己的重要依据,网卡只会把目的MAC地址为自己的MAC地址的数据(广播或组播帧也会接收)接收下来交给网络层处理。
  • 由于网卡负责帧的发送和接收,介质访问控制也是通过网卡来实现的,所以说网卡是OSI七层中的第二层(即数据链路层)设备。
  • 网卡的分类:
    网卡的分类 { 按速率分 { 10 M b p s 100 M b p s 1000 M b p s 按总线类型分 { I S A 总线(已基本不用了) P C I 总线 P C M C I A 总线(主要用在笔记本电脑上) 按所接的介质类型分 { 双绞线 光纤 无线网卡 网卡的分类\begin{cases} 按速率分 \begin{cases} 10Mbps \\ 100Mbps \\ 1000Mbps \\ \end{cases} \\ 按总线类型分 \begin{cases} ISA总线(已基本不用了) \\ PCI总线 \\ PCMCIA总线(主要用在笔记本电脑上) \\ \end{cases} \\ 按所接的介质类型分 \begin{cases} 双绞线 \\ 光纤\\ 无线网卡 \\ \end{cases} \\ \end{cases} 网卡的分类⎩ ⎨ ⎧按速率分⎩ ⎨ ⎧10Mbps100Mbps1000Mbps按总线类型分⎩ ⎨ ⎧ISA总线(已基本不用了)PCI总线PCMCIA总线(主要用在笔记本电脑上)按所接的介质类型分⎩ ⎨ ⎧双绞线光纤无线网卡

集线器

  • 集线器也称为Hub,主要功能是对接收到的信号进行再生整形放大,以扩大网络的传输距离,同时把所有节点集中在以它为中心的节点上(使用集线器构成的网络物理上是星型拓扑结构)。它工作于OSI参考模型第一层,即"物理层"。
  • 之所以这样说是因为它只是简单地将某个端口收到的信号(即0和1物理层信号)从其他所有的端口复制出去,并不关心0和1的含义。
  • 正因为如此,如果有一台计算机发送信号,其他接口上所有计算机(甚至连在其他集线器上的计算机)将能够同时接收到信号。

计算机A发送信号,左边的Hub不仅把信号传给计算机B和计算机C,还传给了右边的Hub;右边的Hub收到信号后,又会把信号传给计算机 D和计算机E。这也意味着A发送信号时,其他的计算机(包括B、C、D、E)在此刻不能同时发送信号,如果它们也同时发送信号就会发生冲突。

所以说集线器连接起来的网络在同一个冲突域(Collsion Domain)中,即集线器不能隔离冲突域。

  • 用集线器构建起来的网络在任何时候只能有一台计算机在发送数据,这样网络如果有多台计算机则每一台计算机发送数据的机会就被平均了,所以集线器连接的计算机是共享同一网络带宽的。正是因为Hub的这个特点,所以Hub并不适合于构建大型网络,如果网络中有1000台计算机,即使采用100Mbps设备,每台计算机的带宽仅为100Kbps,这样的性能没有谁可以接受。
  • 集线器与网卡、网线等传输介质一样,属于局域网中的基础设备,采用CSMA/CD介质访问控制机制。

交换机

  • 用集线器组成的网络是星型结构,有着很好的维护性,然而不足的是计算机共享网络带宽。为了解决带宽的不足可以用交换机代替集线器,交换机远比集线器智能。
  • 交换机工作在数据链路层,是OSI七层的第二层设备。交换机能够识别帧的内容,交换机是依赖于一张MAC地址与端口的映射表(称为 CAM表,即Context AddresMap表)来进行工作的。
  • 数据中包含了目的MAC和源MAC,源MAC就是发送数据帧的计算机的网卡地址,目的MAC就是接收数据的计算机的网卡地址,因此可以用这些MAC地址表示发送者和接收者。交换机刚开机时,这张MAC地址与端口的映射表是空的;当计算机A想发送数据给B时,数据的目的MAC为B的MAC,源MAC为A的MAC,交换机并不知道计算机B是接在哪个端口上,所以数据会从端口2,3,4发送出去以保证计算机B能够接收到;然而由于交换机是从端口1收到 A 发送的数据,即在中的源MAC是A的MAC 地址,所以交换机就把A的MAC记录在端口1上;当其他计算机(例如计算机B)要发送数据给A时,数据的目的MAC为A的MAC,源MAC为B的MAC交换机已经知道A的MAC在端口1了,所以这时数据只会从端口1发送出去,而不会从端口3、4发送出去;同时由于交换机是从端口2收到 B发送的数据,交换机也会往表中添加一条记录,指明B的MAC在端口2上,下次计算机A发送数据给B时数据只会从端口2发送出去了,而不是像以前一样从其他所有的端口发送出去。
  • 交换机的工作原理实际上是:当一台计算机发送过一次数据帧时,就被交换机记录了;如果有其他的计算机向这台计算机发送数据时,数据只会从特定端口转发出去,而不会从其他端口转发。从以上的分析中知道,如果交换机已经完成了MAC地址与端口映射表的建立,计算机A发送数据给B时,端口3、4并无数据存在,这就意味着计算机C可以同时发送数据给D、A和C不会因为同时发送数据而产生冲突,即它们不在同一冲突域。这一点和集线器有着很大的不同,交换机所接的计算机可以独占网络的带宽。交机的这个特性可以概括为:交换机可以隔离冲突域,交换机的每一个端口就是一个小冲突域。
  • MAC地址与端口的映射表中的记录实际上是有一定的时效性的,通常为300s,如果一条记录在300s内没有得到更新,记录就会被删除。这样的好处是防止CAM表被迅速占满,同时也是为了使得计算机从一个端口移动到另一端口上后还可以正常工作。
  • 当交换机收到目的MAC为0xFFFFFFFFFFFF(广播地址)的数据顿时,它会把该数据帧从所有的端口转发出去,也就是说交换机不能隔离广播域(Broadcast Domain)。不幸的是在以太网中,经常会有目的MAC为0xFFFFFFFFFFFF的数据存在,ARP就是一个例子,因此如果拓扑结构中是用交换机来构成大型网络的,则在网络中只要一台计算机发送一个广播包,其他的计算机就不得不接收;如果网络中的计算机数量较多,网络中就会充斥着大量的广播包,从而影响正常的数据帧的传输。因此大型的网络仅仅采用交换机来构建也是不合适的。

路由器

  • 路由器天生可以隔断广播域(当然也就隔离了冲突域),因此一个网络中的广播就被限制在本地,不会扩散到另一个网络中。
  • 路由器隔离了广播,却带来了新的问题两个网络因为路由器的隔离而不能直接互相通信了,因此路由器还需要把它们连接起来。路由器是网络互联的关键设备,路由器的作用是把数据包从一个网络经过合理的路径选择转发到另一个网络上。路由器依靠路由表来进行工作,路由表类似我们熟悉的地图。由于路由器根据网络地址来工作,所以路由器是OSI中的第三层设备,即网络层设备。

总结

网络设备的主要特性

设备类型 OSI层 能否隔离冲突域 能否隔离广播域 依赖的地址
集线器 物理层 × ×
交换机 数据链路层 × MAC地址
路由器 网络层 IP 地址

IP地址

  • 每种网络协议都有自己的网络层地址,IP 地址是TCP/IP协议的网络层地址。每台计算机的网卡都有自己的MAC地址,并且全世界的所有网卡的MAC地址是惟一的,那么能否就只用网卡 MAC来确定标识计算机呢?答案是不行!这是因为网卡的MAC地址编址是平面的,也就是说网卡的MAC是没有规律的,编号相邻的两个网卡,一个可能在美国,而另一个可能在日本,发送数据的计算机如何能够找到它们呢? 要解决这个问题就是采用统一编址方案的层次型的地址。
  • IP地址的出发点非常明确,它是用逻辑地址来标识计算机,如同电话号码。更重要的是IP地址的编址方法要合理,使得发送者发送出的数据能够传送到接收方,即IP地址要提供寻址能力。

我们先来看看电话号码。电话号码是由区号和市内电话号码组成的,当拨打010-12345678时,由于电话号码编址是有规律的,010表示北京的电话,所以程控交换机就把呼叫转到北京;北京市的程控交换机知道自己所管辖区域的电话所在,会把呼叫转到号码为12345678的市内电话上,这个过程实际上就是寻址的过程。

  • 如同电话由区号和市内的电话号码组成一样,IP地址也由两部分组成:网络地址和主机地址。网络地址相当于电话号码的区号,而主机地址则相当于市内的电话号码。
  • IP地址和电话号码不同的是IP地址采用32位固定长度的二进制位地址。为了表示方便,人们采用点分十进制法,即把32位IP地址分成4个字节,字节之间用点分开,然后将每个字节单独转换成十进制。(10000000.00001011.00000011.00011111->128.11.3.31)

A、B、C类IP地址

已经知道IP地址由网络地址和主机地址组成,那么哪一部分是网络地址,哪一部分是主机地址呢?在没有采用子网掩码前,人们采用了一种很有技巧(或者说是很繁琐)的方法来解决这一问题,即对IP地址进行分类,IP地址被分为 A、B、C、D、E类。

分类 前导位 网络地址/主机地址 网络数量 主机数量 地址范围 第一个字节范围
A类 0(占一位) 前8位/后24位 2 7 − 1 2^7-1 27−1 (网络地址不能全为0或1) 2 24 − 2 2^{24}-2 224−2 1.0.0.1~127.255.255.255 起始:00000001.00000000.00000000.00000001 终止:01111111.11111111.11111111.111111110 1~127
B类 10(占两位) 前16位/后16位 2 14 2^{14} 214 2 16 − 2 2^{16}-2 216−2 128.0.0.1~191.255.255.254 起始:10000000.00000000.00000000.00000001 终止:10111111.11111111.11111111.111111110 128~191
C类 110(占三位) 前24位/后8位 2 21 2^{21} 221 2 8 − 2 2^8-2 28−2 192.0.0.1~223.255.255.254 起始:11000000.00000000.00000000.00000001 终止:11011111.11111111.11111111.111111110 192~223

子网内主机数量-2的原因:因为主机号全为0的是网络地址,不可用,主机号全为1的是广播地址,也不可以分配给主机,所以要减去网络地址和广播地址。

特殊地址形式

  • 特殊的IP地址包括:受限广播(limited broadcasting)地址、直接广播(directed broadcasting)地址、"这个网络上的特定主机"地址与回送地址(loopback address)。
  1. 受限广播地址
    受限广播地址又称有限广播地址,该地址形式唯一,即:32位全为1的IP地址(255.255255.255)。此地址用来将一个分组以广播方式发送给本网络中的所有主机(本网内成员向全网广播)。路由器会将其广播功能限制在本网内部,以减少网络负荷。
  2. 直接广播地址
    直接广播地址的形式是一个有效的网络号和一个全1的主机号,用来使路由器将一个来自其他网络的分组以广播方式发送给特定网络上的所有主机。例如,主机199.15.123.24要以广播方式发送一个分组给221.25.123.0 的特定网络中的所有主机,则需要使用直接广播地址 221.25.123.255。
  3. "这个网络上的特定主机"地址
    "这个网络上的特定主机"地址用于同一网络内部某个主机或某个路由器向另一个主机发送分组。"这个网络上的特定主机"地址的形式为一个全0的网络号和一个确定的主机号。这样的分组只能在本网内部由主机号对应的主机接收。例如,主机199.158.26.25要向本网络内的IP地址为199.158.26.115的主机发送一个分组,则目的地址应为0.0.0.115。
  4. 回送地址
    A类IP地址中的127.0.0.0是一个保留地址,它即回送地址。用于网络软件测试和本地进程间通信使用。"Ping"应用程序可以发送一个将回送地址作为目的地址的分组,以测试IP软件能否接收或发送一个分组。一个客户进程可以使用回送地址来发送一个分组给本机的另一个进程,用来测试本地进程之间的通信状况。

子网与子网掩码

  • IP 地址的分类,已经解决了IP地址中的网络地址和主机地址的分界问题,然而随着网络的迅速发展,新的问题又产生了。以A类地址为例,一个A类网络中可以有 2 24 − 2 = 16777214 2^{24}-2=16777214 224−2=16777214个主机,这样的网络太大了,根本无法管理,更重要的是同一网络中的主机太多,太多的广播包会使得网络效率大大降低。于是人们想到了子网的划分,即把一个大的网络划分成小的网络。

这仍然和电话号码很类似,例如北京电信把北京划分成很多分局,电话号码12345678中的 123用来表示分局。

  • IP地址的子网划分也是如此,从主机位中借位来进行子网划分,这样就形成了 "网络号+子网号+主机号"的三层结构。
    子网号也不能全部为0或全部为1
  • 这里有一个重要问题没有解决,就是进行子网划分后,如何表示从主机位中借了多少位。或者说划分子网后,哪些位是网络位,哪些位是主机位? 人们采取子网掩码来解决这一问题。所谓的子网掩码是和IP地址一一对应的32位二进制数,如果掩码中的某位为1,则和该位对应的 IP地址就是网络位;如果掩码中的某位为0,则和该位对应的IP地址就是主机位。

CIDR(无域间路由技术)

  • 无域间路由的思想是:不按标准的地址分类规则分配剩余的IP地址,而是以可变大小的块方法进行分配。
  • 无域间路由技术的两个特点:
  1. 无类域间路由使用"网络前缀(network-prefix)",形成新的无分类的二级地址结构,即<网络前缀 >,<主机号>。它取代了传统标准分类的IP地址与划分子网概念的"网络号+主机号"的结构,也不再使用子网的概念,所以三级结构的IP地址又重新回到了二级结构,然而它又不同于标准的IP地址的分类方法,因此是一种无分类的二级地址结构。

无类域间路由地址还可以采用"斜线记法",即在IP地址后面加一个斜线"/"然后写上网络前缀所占的比特数。例如,表示前21位为网络前缀,后11位是主机号,则记为:201.113.22.0/21。

  1. 无类域间路由将网络前缀相同的连续的IP地址组成一个"CIDR地址块"块。起始地址与块地址数就可以表示一个CIDR地址块。块起始地址是指地址块中数值最小的那个地址。例如,当201.113.22.0/21表示的是一个地址块时,它的起始地址是201.113.22.0,地址块中的地址数是 2 11 2^{11} 211。网络前缀表示对应21位的网络号是确定的,所以可以由获得这个地址块的机构分配的主机地址数有 2 32 − 21 = 2 11 2^{32-21}=2^{11} 232−21=211个。

A类、B类与C类IP 地址中,主机号全为1的地址为广播地址,无类域间路由中的广播地址采用同一原则。例如,网络 135.35.0.0/16的广播地址就是将16位的主机号置1,即135.35.255.255;网络135.35.0.0/28 的广播地址应该是将4位的主机号置1,即 135.35.0.15。

子网划分实例

例1:某企业申请C类IP地址203.74.205.0,现要划分4个子网,请确定子网掩码以及每个子网的IP地址范围。

  1. 确定子网位的位数

2 n − 2 ≥ 4 2^n-2≥4 2n−2≥4,得 n = 3 n=3 n=3(此时可划分6个子网,题目只需4个)

  1. 确定掩码
子网划分: 1 1 0 网络地址(21位) 子网地址(3位) 主机地址(5位)

掩码:11111111.11111111.11111111.11100000(点分十进制表示:255.255.255.224)

  1. 确定子网的IP地址范围

将C类IP地址写成点分十进制:203.74.205.0->11001011.01001010.11001101.00000000

由于子网位不能全部为0,所以第一个子网就是指子网为001的子网,而主机位(还剩下5位)从00001到11110

子网1:11001011.01001010.11001101.00100001~11001011.01001010.11001101.00111110(203.74.205.33 - 203.74.205.62)

子网2:11001011.01001010.11001101.01000001~11001011.01001010.11001101.01011110(203.74.205.65 - 203.74.205.94)

子网3:11001011.01001010.11001101.01100001~11001011.01001010.11001101.01111110(203.74.205.97 - 203.74.205.126)
注意:通常来说,子网位不能全部为0,然而有的路由器在使用专门命名后是允许子网位全部为0的,这样可以减少IP地址的浪费。

例2:如果将172.0.35.128/25划分3个子网,其中第一个子网能容纳55台主机,另外两个子网分别能容纳25台主机,要求网络地址从小到大依次分配给3个子网,这3个子网的掩码分别为255.255.255.192、255.255.255.224和255.255.255.224,可用的IP地址段分别为172.0.35.129 - 172.0.35.190、172.0.35.193 - 172.0.35.222和172.0.35.225- 172.0.35.254。

  1. 确定主机位的位数

第一个子网: 2 n − 2 ≥ 55 2^n-2≥55 2n−2≥55,得 n = 6 n=6 n=6(此时可容纳62台主机,题目只需55台)

第二个和第三个子网: 2 n − 2 ≥ 25 2^n-2≥25 2n−2≥25,得 n = 5 n=5 n=5(此时可容纳30台主机,题目只需25台)

  1. 确定掩码

    将C类IP地址写成点分十进制:172.0.35.128->10101100.00000000.00100011.10000000

    掩码:11111111.11111111.11111111.10000000(点分十进制表示:255.255.255.128)

  2. 确定子网的IP地址范围

第一个子网:网络位24位,子网位2位,主机位6位

10101100.00000000.00100011.10000001~10101100.00000000.00100011.10111110(172.0.35.129 - 172.0.35.190)

子网掩码:11111111.11111111.11111111.11000000(点分十进制表示:255.255.255.192)
第二个子网:网络位24位,子网位3位,主机位5位

10101100.00000000.00100011.11000001~10101100.00000000.00100011.11011110(172.0.35.193 - 172.0.35.222)

子网掩码:11111111.11111111.11111111.11100000(点分十进制表示:255.255.255.224)
第三个子网:网络位24位,子网位3位,主机位5位

10101100.00000000.00100011.11100001~10101100.00000000.00100011.11111110(172.0.35.225- 172.0.35.254)

子网掩码:11111111.11111111.11111111.11100000(点分十进制表示:255.255.255.224)

VLSM(可变长子网掩码)

可变长子网掩码的主要作用是将IP网段进行分割,达到节省IP地址空间的目的。

某公司,有A、B、C、D四个部门,每个部门需要20个IP地址,该公司申请了一个C类地址块192.168.134.0/24,请给出合理的子网划分方案?

不使用VLSM方法划分

  1. 确定子网位的位数

2 n − 2 ≥ 4 2^n-2≥4 2n−2≥4,得 n = 3 n=3 n=3(此时可划分6个子网,题目只需4个)

  1. 确定掩码

    将C类IP地址写成点分十进制:192.168.134.0->11000000.10101000.10000110.00000000

    掩码:11111111.11111111.11111111.00000000(点分十进制表示:255.255.255.0)

  2. 确定子网的IP地址范围

第一个子网:网络位24位,子网位3位,主机位5位

11000000.10101000.10000110.00100001~11000000.10101000.10000110.00111110(192.168.134.33 - 172.0.35.62)

子网掩码:11111111.11111111.11111111.11100000(点分十进制表示:255.255.255.224)
第二个子网:网络位24位,子网位3位,主机位5位

11000000.10101000.10000110.01000001~11000000.10101000.10000110.01011110(192.168.134.65 - 172.0.35.94)

子网掩码:11111111.11111111.11111111.11100000(点分十进制表示:255.255.255.224)
第三个子网:网络位24位,子网位3位,主机位5位

11000000.10101000.10000110.01100001~11000000.10101000.10000110.01111110(192.168.134.97 - 172.0.35.126)

子网掩码:11111111.11111111.11111111.11100000(点分十进制表示:255.255.255.224)
第四个子网:网络位24位,子网位3位,主机位5位

11000000.10101000.10000110.10000001~11000000.10101000.10000110.10011110(192.168.134.129 - 172.0.35.158)

子网掩码:11111111.11111111.11111111.11100000(点分十进制表示:255.255.255.224)

部门 A部门 B部门 C部门 D部门
子网区间 192.168.134.33 - 172.0.35.62 192.168.134.65 - 172.0.35.94 192.168.134.97 - 172.0.35.126 192.168.134.129 - 172.0.35.158
子网掩码 255.255.255.224 255.255.255.224 255.255.255.224 255.255.255.224

上面就是根据网络数量划分的子网,每个子网里面有5个主机位,那么每个网络里面的可用IP地址数量是 2 5 − 2 = 32 − 2 = 30 2^5-2=32-2=30 25−2=32−2=30。
但是现在每个部门只需要20个IP地址就足够,现在经过划分之后,每个部门有30个IP地址,所以造成了浪费。如果现在公司由于发展成立一个新的E部门,该部门也需要20个IP地址。就需要重新划分,造成工作量的增加,所以第一种可扩展性不好,也不推荐用这种方法,第二种方案使用VLSM子网划分

使用VLSM方法划分

某公司,A,B,C,D四个部门,A部门需要100个IP地址,B部门需要50个IP地址,C和D部门需要25个IP地址,现在公司申请了一个C类地址块192.168.147.0/24,请给出合理的子网划分方案?

  1. 确定掩码

    将C类IP地址写成点分十进制:192.168.147.0/24->11000000.10101000.10010011.00000000

    掩码:11111111.11111111.11111111.00000000(点分十进制表示:255.255.255.0)

  2. 根据主机数量进行划分:第一次子网划分 (给A部门分配IP)

    根据主机数量进行划分,A需要100个IP地址, 2 n − 2 ≥ 100 2^n-2≥100 2n−2≥100,得 n = 7 n=7 n=7,所以需要7个主机位。

    子网1:11000000.10101000.10010011.0|0000000(192.168.147.0/25)

    子网2:11000000.10101000.10010011.1|0000000(192.168.147.128/25)

    掩码:11111111.11111111.11111111.1|0000000

根据上面的分法,子网1和子网2的可用IP地址数量都为126个,所以拿其中一个分配给A部门,则可满足A部门的需求。这里就把子网1分配给A部门(192.168.147.0/25)。

  1. 第二次子网划分(给B部门分配IP)
    根据主机数量进行划分,B需要50个IP地址, 2 n − 2 ≥ 50 2^n-2≥50 2n−2≥50,得 n = 6 n=6 n=6,所以需要6个主机位。
    由于上面给A部门分配完之后,还剩下一个网络192.168.147.128/25,因此在子网2的基础上继续划分。
    子网2:11000000.10101000.10010011.1|0000000(192.168.147.128/25)
    ->在子网2的基础上进行细分:
    子网3:11000000.10101000.10010011.10|000000(192.168.147.128/26)
    子网4:11000000.10101000.10010011.11|000000(192.168.147.192/26)
    掩码:11111111.11111111.11111111.11|000000

根据上面的分法,子网3和子网4的可用IP地址数量都为62个,所以拿其中一个分配给B部门,则可满足B部门的需求。这里就把子网3分配给A部门(192.168.147.128/26)。

  1. 第三次子网划分(给C和D部门分配IP)
    根据主机数量进行划分,C、D需要25个IP地址, 2 n − 2 ≥ 25 2^n-2≥25 2n−2≥25,得 n = 5 n=5 n=5,所以需要5个主机位。
    由于上面给B部门分配完之后,还剩下一个网络192.168.147.192/26,因此在子网4的基础上继续划分。
    子网4:11000000.10101000.10010011.11|000000(192.168.147.192/26)
    ->在子网4的基础上进行细分:
    子网5:11000000.10101000.10010011.110|00000(192.168.147.192/27)
    子网6:11000000.10101000.10010011.111|00000(192.168.147.224/27)
    掩码:11111111.11111111.11111111.111|00000

根据上面的分法,子网5和子网6的可用IP地址数量都为30个,均可满足C、D部门的需求。这里就把子网5分配给C部门(192.168.147.192/27),把子网6分配给D部门(192.168.147.224/27)。

部门 A部门 B部门 C部门 D部门
子网区间 192.168.147.1 - 192.168.147.126 192.168.147.129 - 192.168.147.190 192.168.147.193 - 192.168.147.222 192.168.147.225 - 192.168.147.254
子网掩码 255.255.255.128 255.255.255. 192 255.255.255. 224 255.255.255. 224

CIDR与VLSM的区别

CIDR是把几个标准网络合成一个大的网络;VLSM是把一个标准网络分成几个小型网络(子网)

CIDR是子网掩码往左边移了;VLSM是子网掩码往右边移了

相关推荐
小蜗牛慢慢爬行4 分钟前
有关异步场景的 10 大 Spring Boot 面试问题
java·开发语言·网络·spring boot·后端·spring·面试
MARIN_shen9 分钟前
Marin说PCB之POC电路layout设计仿真案例---06
网络·单片机·嵌入式硬件·硬件工程·pcb工艺
m0_748240021 小时前
Chromium 中chrome.webRequest扩展接口定义c++
网络·c++·chrome
終不似少年遊*1 小时前
华为云计算HCIE笔记05
网络·华为云·云计算·学习笔记·hcie·认证·hcs
蜜獾云1 小时前
docker 安装雷池WAF防火墙 守护Web服务器
linux·运维·服务器·网络·网络安全·docker·容器
小林熬夜学编程2 小时前
【Linux网络编程】第十四弹---构建功能丰富的HTTP服务器:从状态码处理到服务函数扩展
linux·运维·服务器·c语言·网络·c++·http
Hacker_Fuchen2 小时前
天融信网络架构安全实践
网络·安全·架构
上海运维Q先生2 小时前
面试题整理15----K8s常见的网络插件有哪些
运维·网络·kubernetes
ProtonBase3 小时前
如何从 0 到 1 ,打造全新一代分布式数据架构
java·网络·数据库·数据仓库·分布式·云原生·架构
fantasy_arch12 小时前
CPU性能优化-磁盘空间和解析时间
网络·性能优化