前言:网络层它承担着网络间的数据传输和路由选择等核心任务,通过在传输层协议的基础上添加了路由和转发等功能,使得数据能够在全球范围内的互联网中自由流动。在这篇博客中,我们将深入探讨网络层的工作原理和具体实现,了解其对于现代计算机网络应用的重要性和影响。
主要任务是实现网络互连,进而实现数据包在各网络之间的传输
因特网(lnternet)是目前全世界用户数量最多的互联网,它使用TCP/IP协议栈。
由于TCP/IP协议栈的网络层使用网际协议IP,它是整个协议栈的核心协议,因此在TCP/IP协议栈中网络层常称为网际层。
综上所述,我们通过学习TCP/IP协议栈的网际层来学习网络层的理论知识和实践技术。
对比方面 | 虚电路服务 | 数据报服务 |
---|---|---|
思路 | 可靠通信应当由网络来保证 | 可靠通信应当由用户主机来保证 |
连接的建立 | 必须建立网络层连接 | 不需要建立网络层连接 |
终点地址 | 仅在连接建立阶段使用(需要进行路由选择),每个分组使用短的虚电路号(VCID),不需要为每条虚电路预分配带宽。 | 每个分组都有终点的完整地址 |
分组的转发 | 属于同一条虚电路的分组均按照同一路由进行转发 | 每个分组可走不同的路由 |
当结点出故障时 | 所有通过出故障的结点的虚电路均不能工作 | 出故障的结点可能会丟失分组,一些路由可能会发生变化 |
分组的顺序 | 总是按发送顺序到达终点 | 到达终点时不一定按发送顺序 |
服务质量保证 | 可以将通信资源提前分配给每一个虚电路,容易实现 | 很难实现 |
由于TCP/IP体系结构的因特网的网际层提供的是简单灵活、无连接的,不可靠的数据报服务,因此本章主要围绕网际层如何传送IP数据报这个主题进行讨论。
IP地址是TCP/IP体系结构网际层所使用的地址
IP地址是Internet上的主机和路由器所使用的的地址,由两部分信息构成:
MAC地址不具备区分不同网络的功能,而IP地址可以通过网络号做到
【2018年 题37】路由器R通过以太网交换机S1和S2连接两个网络,R的接口、主机H1和H2的lP地址与MAC地址如下图所示。若H1向H2发送一个IP分组P,则H1发出的封装P的以太网帧的目的MAC地址、H2收到的封装P的以太网帧的源MAC地址分别是
A.00-a1-b2-c3-d4-62 00-1a-2b-3c-4d-52
B.00-a1-b2-c3-d4-62 00-1a-2b-3c-4d-61
C.00-1a-2b-3c-4d-51 00-1a-2b-3c-4d-52
D.00-1a-2b-3c-4d-51 00-a1-b2-c3-d4-61
解析:
地址解析协议ARP
协议属于TCP/IP
体系结构的网际层,其作用是已知设备所分配到的IP
地址,使用ARP
协议可以通过该IP地址获取到设备的MAC
地址。
IP
地址与MAC
地址的对应关系,即地址解析。ARP
高速缓存表为空,假设此时B
知道C
的IP
地址,准备发送信息,但是由于不知道C
的MAC
地址,因此无法封装数据帧,所以此时会广播一个ARP请求报文(封装在MAC帧中,目的地址为广播地址FF-FF-FF-FF-FF-FF
),内容如下:
IP
地址是:xxx
;我的MAC
地址是:XXX
;我想知道C
主机的MAC
地址是多少?这个广播帧会被该广播域的所有主机收到;A
主机收到后交由上层处理,发现B
问的不是他,所以不予理会;C
收到后交由上层处理,发现这个IP
地址正是自己,因此首先将B的MAC地址和IP地址的对应关系记录到自己的高速缓存表中,接着返回给ARP响应报文(封装在单播MAC帧中,目的地址为B
的MAC地址),其中包含自己的MAC
地址。【网络协议详解】——IPv4
同一个网络之间的主机可以直接通信,不同网络之间的主机通信需要路由器中转。
接下来的举例忽略数据链路层的过程。
IP数据报的发送和转发过程包含以下两部分:
主机发送IP数据报
IP
地址与子网掩码相与得到自身的网络号1
,再将目的IP
地址与自身子网掩码相与得到网络号2
。若两个网络号相等,则说明处在同一个网络)
路由器转发IP数据报
中继器和集线器工作在物理层,既不隔离冲突域也不隔离广播域。
网桥和交换机(多端口网桥)工作在数据链路层,可以隔离冲突域,不能隔离广播域。
路由器工作在网络层,既隔离冲突域,也隔离广播域,有效抑制广播风暴。
【2012年题37】下列关于IP路由器概念的描述中,正确的是()
Ⅰ 运行路由协议,设置路由表
Ⅱ 监测到拥塞时,合理丢弃lP分组
Ⅲ 对收到的IP分组头进行差错校验,确保传输的IP分组不丢失
Ⅳ 根据收到的IP分组的目的IP地址,将其转发到合适的输出线路上
A.仅Ⅲ、Ⅳ
B.仅Ⅰ、Ⅱ、Ⅲ
C.仅Ⅰ、Ⅱ、Ⅳ
D.Ⅰ、Ⅱ、Ⅲ、Ⅳ
【解析】
IP路由器工作在TCP/IP体系结构的网际层(或称IP层),TCP/IP体系结构的网际层并不负责可靠传输,也就是不能确保传输的IP分组不丢失。
IP路由器对收到的IP分组头进行差错校验,当发现错误时会丢弃该IP分组并向源主机发送ICMP差错报告报文(类型为参数错误)。
因此选C。
【2015年题47】某网络拓扑如下图所示,其中路由器内网接口、DHCP服务器、WWW服务器与主机1均采用静态IP地址配置,相关地址信息见图中标注;主机2~ 主机N通过DHCP服务器动态获取IP地址等配置信息。
(3)若主机1的子网掩码和默认网关分别配置为255.255.255.0和111.123.15.2,则该主机是否能访问WWW服务器?是否能访问Internet?请说明理由。
主机1可以访问WWW服务器。从IP地址与子网掩码配置以及物理连接方面看,主机1和WWW服务器在同一网络中。
主机1不能访问Internet,因为它的默认网关错误配置成了DHCP服务器的IP地址,DHCP服务器不具备路由器的功能,无法将IP分组转发到Internet。正确的配置应该指定为路由器该接口的IP地址。
静态路由配置是指用户或网络管理员使用路由器的相关命令给路由器人工配置路由表。
使用静态路由配置可能出现以下导致产生路由环路的错误
路由条目的类型:
特殊的静态路由条目
聚合了不存在网络:
通过增加黑洞路由解决这一问题:
如果之前的故障消失了,则R1又自动地得出了其接口0的直连网络的路由条目,并将人工配置的针对该网络的黑洞路由条目设置为失效状态。
静态路由选择 | 动态路由选择 |
---|---|
由人工配置的网络路由、默认路由、特定主机路由、黑洞路由等都属于静态路由 | 路由器通过路由选择协议自动获取路由信息 |
这种人工配置方式简单、开销小。但不能及时适应网络状态(流量、拓扑等)的变化 | 比较复杂、开销比较大。能较好地适应网络状态的变化 |
一般只在小规模网络中采用 | 适用于大规模网络 |
因特网所采用的的路由选择协议主要特点:
自治系统(AS):由同一个技术管理机构管理、使用统一选路策略的一些路由器的集合。
每个自治系统都有唯一的编号,这个编号是由因特网地址分配组织(IANA)分配的。
自治系统的编号范围为1~65535
,其中:
1~64511
是注册的因特网编号64512~65535
是私有网络编号。内部网关协议IGP(如路由信息协议RIP或最短路径优先OSPF)
外部网关协议EGP(如边界网关协议BGP)
IGP 与EGP 的区别有以下两点:
注:此处网关含义与路由器相同。
常见的路由选择协议:
【网络协议详解】——RIP协议
【网络协议详解】——OSPF协议
【网络协议详解】——BGP协议
专用(私有)地址:
10.0.0.0~10.255.255.255(10/8地址块)
172.16.0.0~172.31.255.255(172.16/12地址块)
192.168.0.0~192.168.255.255(192.168/16地址块)
IP隧道技术:
如下图所示,同一机构内不同部门的内部网络所构成的虚拟专用网VPN又称为内联网VPN。
有时一个机构的VPN需要有某些外部机构(通常就是合作伙伴)参加进来。这样的VPN就称为外联网VPN。
在外地工作的员工需要访问公司内部的专用网络时,只要在任何地点接入到因特网,运行驻留在员工PC中的VPN软件,在员工的PC和公司的主机之间建立VPN隧道,即可访问专用网络中的资源。这种VPN称为远程接入VPN。
虽然因特网采用了无分类编址方式来减缓IPv4地址空间耗尽的速度,但由于因特网用户数目的激增,特别是大量小型办公室网络和家庭网络接入因特网的需求不断增加,IPv4地址空间即将面临耗尽的危险仍然没有被解除。
1994年提出了一种网络地址转换NAT(Network Address Translation)的方法再次缓解了IPv4地址空间即将耗尽的问题。
(静态或动态)NAT能使大量使用内部专用地址的专用网络用户共享少量外部全球地址来访问因特网上的主机和资源。
在因特网中的所有路由器,对目的地址是专用(私有)地址的数据报一律不进行转发。RFC1918指明的专用该地址是:
(1)10.0.0.0到10.255.255.255(或记为10/8,它又称为24位块)
(2)172.16.0.0到172.31.255.255(或记为172.16/12,它又称为20位块)
(3)192.168.0.0到192.168.255.255(或记为192.168/16,它又称为16位块)
该转换方法存在一个问题:如果NAT路由器具有N个全球IP地址,那么至多只能有N个内网主机能够同时和因特网上的主机通信。(1个私有IP地址对1个公有IP地址)
由于绝大多数的网络应用都是使用运输层协议TCP或UDP来传送数据,因此可以利用运输层的端口号和IP地址一起进行转换。
这样,用一个全球IP地址就可以使多个拥有本地地址的主机同时和因特网上的主机进行通信。这种将端口号和IP地址一起进行转换的技术叫作网络地址与端口号转换NAPT(Network Address and Port Translation)。
不可以由外网主机主动与内网主机进行通信,对于一些P2P网络应用,需要外网主机主动与内网主机进行通信,在通过NAT时会遇到问题,需要网络应用自己使用一些特殊的NAT穿越技术来解决问题。
由于NAT对外网屏蔽了内网主机的网络地址,能为内网的主机提供一定的安全保护。
NAT技术实验:
实验背景:为了方便同学们访问图书馆资源,学校图书馆架设了一个FTP服务器,方便师生在家里通过Internet访问下载教学资源,同时申请了公网地址102.3.1.3/24
作为该服务器的对外地址,原公网地址调整为102.3.1.1/24
。同时教学办公楼、图书馆、南区学生宿舍、英东楼北区学生宿舍也有访问Internet的需求,但私有地址不能用在公网上,需要进行NAT地址转换。
请分别使用静态NAT、NAPT技术使得上述需求得以满足。本次实验在IP组网规划的那次实验基础上完成。
实验拓扑:
实验步骤:
1、配置Server1的IP地址等信息
2、完成出口路由器R1的静态NAT配置,以及ISP撤销上次配的静态路由
[ISP]int g0/0/1
[ISP-GigabitEthernet0/0/1]ip add 102.3.2.254 24
[ISP]undo ip route-static 172.16.0.0 20 102.3.1.1 # 撤销上次配的静态路由
[ISP-Serial4/0/0]ip add 102.3.1.2 24
[R1-Serial2/0/0]ip add 102.3.1.1 24
[R1-Serial2/0/0]nat static global 102.3.1.3 inside 172.16.14.189
3、配置Client1的IP地址及ISP接口地址(即Client1的网关地址)
4、验证Client1是否可以访问Server1的ftp服务器
在ISP的串口上启动抓包软件;双击Server1,打开服务器信息选项卡,选择FTPServer,配置好文件根目录为自己主机某个文件夹,点启动。
5、双击Client1,打开客户端信息选项卡,选择FtpClient,服务器地址输入Server1的外网地址,文件传输模式设为PORT,点击登录,查看是否登录成功,如看到服务器文件列表中文件与前一步所设文件夹内的内容一致,则成功登录,
思考题1:此时并未设置ISP上新增网段的路由,为何Client1可以访问Server1?
A:此时完成了静态 NAT,对Client1而言,访问的IP是102.3.1.3。对ISP而言,这个IP是它的直连网段(s0/0/0口所在网段)可达;对R1而言,前一个实验已经部署了默认路由,可达。
思考题2:为何删了ISP上的静态路由仍然可以连通呢?
A:此时完成了NAPT,对ISP而言,两边的网段
是102.3.1.0/24和102.3.2.0/24,都是它的直连网段,均可达;对R1而言,前一个实验已经部署了默认路由,可达。
思考题3:观察此时PC1-PC5访问Client1的数据包,如果Client1主动发起流量访问PC1,能否成功,为什么?
A:不能成功,因为没有做 NAPT之前,PC1的地址ISP路由不可达。Client1主动发起流量时,PC1没有做 NAPT。
IPv6时代来临:IPv6是什么?
【网络协议详解】——IPv6协议
【单选题】一个C类网络至少需要划分为5个子网,每个子网最多20台主机,则适用的子网掩码是()。
A、255.255.255.192
B、255.255.255.240
C、255.255.255.248
D、255.255.255.224
【单选题】某单位分配了一个B类地址,计划将内部网络分成35个子网,将来要增加16个子网,每个子网中的主机数目接近800台,可行的掩码方案为( )。
A、255.255.248.0
B、255.255.252.0
C、255.255.254.0
D、255.255.255.0
【单选题】主机A发送IP数据报给主机B,途中经过了2个路由器,则在IP数据报的发送过程中使用ARP的次数是
A、1
B、2
C、3
D、4
【判断题】OSPF协议与RIP协议一样采用分类的IP地址,所以宣告网络时不需要指明子网掩码。
【单选题】不考虑NAT,在Internet中,IP数据报从源主机到目的主机可能需要经过多个网络和路由器,在整个传输过程中,IP数据报首部中的
A、源IP地址和目的IP地址都不会发生变化
B、源IP地址有可能发生变化而目的IP地址不会发生变化
C、源IP地址不会发生变化而目的IP地址有可能发生变化
D、源IP地址和目的IP地址都有可能发生变化
【单选题】为了减少IPv4地址的浪费,对于两个路由器之间的一条点对点链路,子网掩码应配置为
A、255.255.128.0
B、255.255.192.0
C、255.255.255.0
D、255.255.255.252
答案:1.D(解析:C类子网的掩码是255.255.255.0,要求的子网数转换为二进制5=101,占了三位,因而最后一个字节为11100000=224)
2.B(解析: 2 n ≥ 800 , 2 m ≥ 51 , m + n = 16 2^n \geq 800, 2^m\geq 51, m+n=16 2n≥800,2m≥51,m+n=16 248=11111000,252=11111100,254=11111110,255=11111111)
3.C(解析:ARP协议只能逐链路(或网络)使用。若源主机与目的主机之间有n个路由器,则使用ARP的次数为n+1。)
4.×(解析:OSPF采用划分子网的IP地址和CIDR地址,宣告网络时需要指明子网掩码。)
5.A(解析:源lP地址和目的IP地址始终保持不变;源MAC地址和目的MAC地址逐链路改变。)
6.D(解析:两个路由器之间的点对点链路,这种场景里只涉及两个路由器的两个接口需要进行区分,也就意味着只需要2个IP地址,所以我们分配IP地址时,这个链路所属的网络就只需要2个路由器接口IP地址+1个网络地址+1个广播地址=4个IP地址,所以主机号需要2位,网络号的位数=32位-2位=30位。根据子网掩码的定义,网络位全部取“1”,主机位取“0”,用点分十进制表示出来就是255.255.255.252)
OK,以上就是本期知识点“网络层”的知识啦~~ ,感谢友友们的阅读。后续还会继续更新,欢迎持续关注哟~
如果有错误❌,欢迎批评指正呀~让我们一起相互进步
如果觉得收获满满,可以点点赞支持一下哟~
❗ 转载请注明出处
作者:HinsCoder
博客链接: 作者博客主页