米葫芦网

关于IPv6安全网络的架构分析

热度:10℃ 发布时间:2024-11-18 04:06:56
;IPv6首先解决了IP地址数量短缺的问题,其次,对于IPv4协议中诸多不完善之处进行了较大更改。其中最为显著的就是将IPSec(IPSecurity)集成到协议内部,从此IPSec将不单独存在,而是作为IPv6协议固有的一部分贯穿于IPv6的各个部分。

IPv6的安全机制


IPv6的安全机制主要表现在以下几个方面:(1)将原先独立于IPv4协议族之外的报头认证和安全信息封装作为IPv6的扩展头置于IPv6基本协议之中,为IPv6网络实现全网安全认证和加密封装提供了协议上的保证。(2)地址解析放在ICMP (InternetControlMessageProtocol)层中,这使得其与ARP(Address Resolution Protocol)相比,与介质的偶合性更小,而且可以使用标准的IP认证等安全机制。(3)对于协议中的一些可能会给网络带来安全隐患的操作,IPv6 协议本身都做了较好的防护。例如:因为一条链路上多个接口同时启动发送邻居请求消息而带来的链路拥塞隐患,IPv6采用在一定范围内的随机延时发送方法来减轻链路产生拥塞的可能,这同时也减少了多个节点在同一时间竞争同一个地址的可能。(4)除了IPSec和IPv6本身对安全所做的措施之外,其他的安全防护机制在IPv6上仍然有效。诸如:NAT-PT(Net Address Translate- Protocol Translate)可以提供和IPv4中的NAT相同的防护功能;通过扩展的ACL(Access Control List)在IPv6上可以实现IPv4 ACL所提供的所有安全防护。另外,基于VPLS(Virtual Private LAN Segment)、VPWS(Virtual Private Wire Service)的安全隧道和VPN(Virtual Private Network)等技术,在IPv6上也可以完全实现。


当然IPSec的大规模使用不可避免地会对网络设备的转发性能产生影响,因此,需要更高性能的硬件加以保障。总的来说,IPv6极大地改善了网络安全现状。


IPv6安全网络的架构


IPv6网络的安全性主要通过3个层面实现:协议安全、网络安全和安全加密的硬件。下面以中兴通讯公司的IPv6路由器ZXR10系列为例,介绍如何在这3个层面实现IPv6网络的安全性。


协议安全


IPv6的AH(AuthenticationHeader)和ESP(EncapsulatingSecurity Payload)中的扩展头结合多样的加密算法可以在协议层面提供安全保证。如图1所示的实际组网方案,对路由协议报文采用了ESP加密封装,对于 IPv6的邻居发现、无状态地址配置等协议报文采用AH认证来保证协议交互的安全性。在AH认证方面,可以采用hmac_md5_96、 hmac_sha_1_96等认证加密算法;在ESP封装方面,经常采用的算法有3种:DES_CBC、3DES_CBC及Null 。


鉴于目前的网络环境,在实现上,默认手工提供密钥配置治理的方式。但为适应将来大规模安全网络组建要求,还要同时预留IKE(Internet密钥交换)协议接口。图1的路由器系统缺省对IPv6的PMTU(路径最大传输单元)、无状态地址自动配置以及邻居发现协议中的消息进行AH头认证。可配置使用 ESP封装或者AH认证来保证路由协议报文的安全。



在传输模式下,路由器对于报文的加密和认证可以有基于协议、源端口和源地址、目的端口和目的地址等多种模式。用户可以通过治理模块灵活地进行配置。


网络安全


IPSec隧道和传输模式的各种组合应用,可以提供网络各层面的安全保证。诸如:端到端的安全保证、内部网络的保密、通过安全隧道构建安全的VPN、通过嵌套隧道实现不同级别的网络安全等等。


端到端的安全保证


如图2所示,在两端主机上对报文进行IPSec封装,中间路由器实现对有IPSec扩展头的IPv6报文的透传,从而实现端到端的安全保证。



内部网络保密


图3所示的内部主机和互联网上其他主机进行通信时,通过配置IPSec网关来保证内部网络的安全。由于IPSec作为IPv6扩展报头不能被中间路由器而只能被目的节点解析处理,因此,IPSec网关可以通过IPSec隧道的方式实现,或者通过IPv6扩展头中提供的路由头和逐跳选项头并结合应用层网关技术来实现。其中后者实现方式更加灵活,有利于提供完善的内部网络安全,但是比较复杂。










;IPSec安全隧道实现VPN


如图4所示,在路由器之间建立IPSec安全隧道,构成安全的VPN,是最常用的安全网络组建方式。作为IPSec网关的路由器实际上就是IPSec隧道的终点和起点。为了满足转发性能的要求,需要专用的加密板卡。



隧道嵌套提供多重安全保护


如图5所示,通过隧道嵌套的方式可以获得多重的安全保护。


配置了IPSec的主机HostC通过安全隧道接入到配置了IPSec网关的路由器ZXR10T128A。该路由器作为外部隧道的终结点将外部隧道封装剥除,这时嵌套的内部安全隧道构成了对内部网络的安全隔离。ZXR10 GAR B作为内部隧道的终结点,使得Host C最终接入到部门服务器Host D中。



确保高性能转发的安全加密硬件


大量使用IPSec在提高网络安全的同时,不可避免地导致路由器转发性能和处理性能的劣化。


为了消除这些影响,通常使用ASIC(专用集成电路)实现加密处理,或者通过网络处理器来实现加密处理和转发。以中兴通讯的高端路由器为例,对报文的加密和转发使用专门的网络数据加密接口板,该板由安全处理器和CPLD(可编程逻辑器件)构成主要处理单元。其中,安全处理器完成所要求的IPSec功能,包括对数据进行加/解密、认证、数字签名等;支持DES(数据加密标准)、3DES、AES(先进加密标准)等通用加密算法;支持MD5 (MessageDigestAlgorithm5)、SHA(Secure Hash Algorithm)等散列算法;支持RSA(Rivest Shamir Adleman)签名。性能达到IPSec加密速度(以3DES+MD5/SHA1计)不低于200Mbit/s,签名速度不低于60次/s。


其他安全措施


IPSec提供了网络数据和信息内容的有效性、一致性以及完整性的保证,但是,网络受到的安全威胁是来自多层面的,包括物理层、数据链路层、网络层、传输层和应用层等各个部分。


通常,物理层的威胁来自于设备的不可靠性,诸如板卡的损坏、物理接口的电器特性和电磁兼容环境的劣化等。对这样的安全隐患,可以通过配置冗余设备、冗余线路、安全供电、保障电磁兼容环境以及加强安全治理来防护。


在物理层以上层面,存在的安全隐患主要有来自于针对各种协议的安全威胁,以及意在非法占用网络资源或者耗尽网络资源的安全隐患,诸如双802.1Q封装攻击、广播包攻击、MAC洪泛、生成树攻击等二层攻击,以及虚假的ICMP报文、ICMP洪泛、源地址欺骗、路由振荡等针对三层协议的攻击。


在应用层,主要有针对HTTP、FTP/TFTP、TELNET以及通过电子邮件传播病毒的攻击。对于这些攻击,可以采用的防护手段包括:通过AAA、 TACACS+、RADIUS等安全访问控制协议,控制用户对网络的访问权限,防患针对应用层的攻击;通过MAC地址和IP地址绑定、限制每端口的MAC 地址使用数量、设立每端口广播包流量门限、使用基于端口和VLAN的ACL、建立安全用户隧道等来防范针对二层的攻击;通过路由过滤、对路由信息的加密和认证、定向组播控制、提高路由收敛速度以减轻路由振荡影响等措施,来加强三层网络的安全性。


综上所述,安全的网络是众多安全技术的综合,而IPv6IPSec机制是其中重要的组成部分,提供了协议层面上的一致性解决方案,这也是IPv6相比IPv4的重大优越性。


同时,为了构建安全网络,还应该采取其他安全措施。(1)结合AAA认证、NAT-PT、二/三层MPLSVPN、基于ACL标准的访问列表和静态扩展访问列表、防分片包攻击等来实现安全预防。(2)通过路由过滤、静态路由、策略路由和路由负荷分担来实现安全路由。(3)通过SSHv2 (SecureShell第2版)、SNMPV3(简单网络治理协议第3版)、EXC,提供进程访问安全、线路访问安全。(4)通过分级治理、定制特权级治理等手段来实现网络的安全治理。(5)通过完善的告警、日志和审计功能实现网络时钟的安全。(6)提供访问列表和要害事件的日志、路由协议事件和错误记录等,供网络治理人员进行故障分析、定位和统计。



网友评论
评论
发 布

更多软件教程
  • 软件教程推荐
更多+
Greenfoot设置中文的方法

Greenfoot设置中文的方法

Greenfoot是一款简单易用的Java开发环境,该软件界面清爽简约,既可以作为一个开发框使用,也能够作为集成开发环境使用,操作起来十分简单。这款软件支持多种语言,但是默认的语言是英文,因此将该软件下载到电脑上的时候,会发现软件的界面语言是英文版本的,这对于英语基础较差的朋友来说,使用这款软件就会...

07-05

Egret UI Editor修改快捷键的方法

Egret UI Editor修改快捷键的方法

Egret UI Editor是一款开源的2D游戏开发代码编辑软件,其主要功能是针对Egret项目中的Exml皮肤文件进行可视化编辑,功能十分强大。我们在使用这款软件的过程中,可以将一些常用操作设置快捷键,这样就可以简化编程,从而提高代码编辑的工作效率。但是这款软件在日常生活中使用得不多,并且专业性...

07-05

KittenCode新建项目的方法

KittenCode新建项目的方法

KittenCode是一款十分专业的编程软件,该软件给用户提供了可视化的操作界面,支持Python语言的编程开发以及第三方库管理,并且提供了很多实用的工具,功能十分强大。我们在使用这款软件进行编程开发的过程中,最基本、最常做的操作就是新建项目,因此我们很有必要掌握新建项目的方法。但是这款软件的专业性...

07-05

Thonny设置中文的方法

Thonny设置中文的方法

Thonny是一款十分专业的Python编辑软件,该软件界面清爽简单,给用户提供了丰富的编程工具,具备代码补全、语法错误显示等功能,非常的适合新手使用。该软件还支持多种语言,所以在下载这款软件的时候,有时候下载到电脑中的软件是英文版本的,这对于英语基础较差的小伙伴来说,使用这款软件就会变得十分困难,...

07-05

最新软件下载