VPN理论入门及GRE、L2TP、IPsec(HCIP)

一、VPN概述

IPsec-VPN:

1、应用范围:用于分公司和总部之间。

2、作用:机密性、证书(身份认证)

VPN概述

VPN概述:VPN(Virtual Private Network)是指依靠Internet服务提供商ISP(Internet Service Provider)和网络服务提供商NSP(Network Service Provider)在公共网络中建立的虚拟专用网络.虚拟:用户通信是通过公共网络进行的,这个公共网络同时也被其他非VPN用户使用,VPN用户获得的只是一个逻辑意义上的专网。这个公共网络称为VPN骨干网Backbone。

专用网络:VPN与底层承载网络之间保持资源独立,即VPN资源不被网络中非该VPN的用户所使用。

隧道技术原理

隧道技术原理:隧道(Tunnel)类似于一座桥,可以在底层网络(比如Internet)之上构建转发通道,用户可以自行构建隧道网络,不需要底层网络的管理者(比如运营商)介入。

实现隧道的技术有很多,常见的隧道技术有: MPLS,GRE,L2TP,IPsec,VXLAN等,虽然有各种各样的隧道技术,但其基本实现思路是一致的。

VPN基本构成三要素

VPN基本构成三要素:乘客协议、封装协议、运输协议

乘客协议

用户传输数据使用的原始网络协议。

封装协议

“包装”乘客协议d对应的报文,使原始报文能够在新网络上传输。

运输协议

指被封装后的报文在新网络中传输时所使用的网络协议。

二、GRE

GRE支持组播

GRE配置步骤

[AF1]interface Tunnel 0(创建隧道)

[AF1-Tunnel0]ip address 192.168.1.1 24(隧道地址,为了让隧道UP)

[AF1-Tunnel0]tunnel-protocol gre(指定隧道协议)

[AF1-Tunnel0]source GigabitEthernet 1/0/1(可以指定源地址或者源接口,tunnel调用这个地址)

[AF1-Tunnel0]destination 11.11.11.11 (目标地址)

GRE特点

1、优点

  • 支持多种上层协议如IP和IPX
  • 支持组播

2、缺点

  • 不支持报文加密,抓包可以看到全部报文内部信息
  • 无法确定发送者身份
  • 无法对报文ip源发送者进行身份认证
  • 弱完整性验证

三、VPN

VPN的优势

安全:在远端用户、驻外机构、合作伙伴、供应商与公司总部之间建立可靠的连接,保证数据传输的安全性。这对于实现电子商务或金融网络与通讯网络的融合特别重要。

廉价:利用公共网络进行信息通讯,企业可以用更低的成本连接远程办事机构、出差人员和业务伙伴。

支持移动业务:支持驻外外VPN用户在王何时间、任何地点的移动接入,能够满足不断增长的移动业务需求。

可扩展性:由于VPN为逻辑上的网络物理网络中增加或修改节点,不影响VPN的部署。

VPN分类

1、按组网类型分类

  • 网关与网关之间
  • 主机与网关之间
  • 主机与主机之间

2、按照现实网络层次分类

  • L3VPN
  • L2VPN
  • 应用层


四、L2TP-VPN

L2TP-VPN(Layer Two Tunneling Protocal)二层隧道协议:L2TP用于承载PPP报文的隧道技术,其主要应用在远程办公场景中为出差员工远程访问企业内网资源提供接入服务。支持认证、支持承载多种三层协议。

L2TP特点

优点:

  • 灵活的身份验证机制以及高度的安全性
  • 多协议传输,多亏了ppp(ppp没有mac地址概念)
  • 支持RADIUS服务器的验证
  • 支持内部地址分配(可以拿到内部网段)NCP
  • 可靠性L2TP支持主备LNS
  • 能封装PPP协议

缺点:

  • 不支持加密

L2TP角色

有的场景用户 角色可以没有,有的时候LAC角色可以没有。

有PPPoE拨号就叫NAS,没有就叫LAC,多用户单独拨号,每一个拨号会建立一条隧道,浪费资源。

L2TP应用场景

1、L2TP应用场景——NSA-initiated VPN

2、L2TP应用场景——LAC自动拨号

3、L2TP应用场景——Client-initiated VPN

L2TP隧道和会话建立过程

在LNS和LAC对之间存在着两种类型的连接(Tunnel)连接:

它定义了互相通信的两个实体LNS和LAC。隧道在一对LAC和LNS之间可以建立多个L2TP隧道,隧道由一个控制连接和至少一个会话 (Session)组成。L2TP首先需要建立L2TP隧道,然后在L2TP隧道上建立会话连接,最后建立PPP连接。所有的L2TP需要承载的数据信息都是在PPP连接中进行传递的。

会话(Session)连接:它复用在隧道连接之上,用于表示承载在隧道连接中的每个PPP连接过程会话是有方向的,从LAC向LNS发起的会话叫做Incoming会话,从LNS向LAC发起的会话叫做Outgoing会话。

L2TP建立目的端口是UDP的1701,需要放通。

五、IPsec

IPsec的产生背景

企业分支之间经常有互联的需求,企业互联的方式很多,可以使用广域网专线或者Internet线路部分企业从成本和需求出发会选择使用lnternet进行互联,但是存在安全风险,如何保障数据在传输时不会被窃取或者被算改?

IPsec通过将数据报文进行加密传输,达到保障企业安全互联的目的。

IPsec简介

IPsec (Internet Protocol Security,因特网协议安全协议) 是ETF (Internet Engineering Task Force)制定的一组开放的网络安全协议(标准,厂商共同支持)。它并不是一个单独的协议,而是一系列为IP网络提供安全性的协议和服务的集合。

IPsec通过加密与验证等方式,从以下几个方面保障了用户业务数据在internet中的安全传输:

  • 数据来源验证:接收方验证发送方身份是否合法(带ID)。
  • 数据加密:发送方对数据进行加密,以密文的形式在开放网络上传送,接收方对接收的加密数据进行解密后处理或直接转发(第一阶段5、6包秘钥加密)。
  • 数据完整性:接收方对接收的数据进行验证,以判定报文是否被算改(带秘钥的哈希)。
  • 抗重放:接收方拒绝旧的或重复的数据包,防止恶意用户通过重复发送捕获到的数据包所进行的攻击。

IPsec协议框架

IPsec不是一个单独的协议,而是一种公开标准的技术解决方案(协议栈)。

数据来源验证

通过安全协议、加密、验证三种结合得出签名技术

HMAC带秘钥的哈希

数据加密

EDS、3EDS、AES、SM1/SM4

数据完整性

MD5、SHA1、SHA2、SM3

抗重放

ESP、AH

比如以前的饭卡(IC卡),充了100,复制了一张饭卡也有100,这样就重放攻击了,通过IC卡加入序列号,每次刷卡修改序列号防止重复刷。【TCP、UDP都有抗重放】

TCP快重传:发1、2、3这三个包,同一个包1不停的发送,接收端会认为2和3一直没收到,一直是1,导致接收有问题,容易产生DOS。

防重放机制:序列号、时间。

IPsec协议体系架构

IPsec协议体系:

IPSec通过验证头AH (Authentication Header) 和封装安全载荷ESP (Encapsulating Security Payload)两个安全协议实现IP报文的安全保护。

IPsec安全协议AH

认证头协议AH:提供数据来源认证数据完整性校验和报文抗重放功能(通过序列号)。AH的工作原理是在每一个数据包的标准IP报头后面添加一个AH报头(AH Header)。 AH对数据包和认证密算结果的数据包后,执行同样的Hash计算并与原计钥进行Hash计算,接收方收到带有算结果比较,传输过程中对数据的何更改将使计算结果无效,这样就提供了数据来源认证和数据完整性校验。

AH字段:

Next Header协议号

指明乘客协议是谁

Payload Length长度

报文长度

RESERVED预留字段

没啥用

Security Parameter Index(SPI)安全参数索引

告诉对方我使用哪把key

Sequence Number序列号

防重放攻击

Authentication Data(Variable)认证数据

提供数据源验证(真实性),完整性校验和抗重放。

不提供数据加密功能

AH用IP协议号51来标识

IPsec安全协议ESP

  • 除提供AH的功能之外,还提供对有效载荷的加密功能。
  • ESP的工作原理是在每一个数据包的标准IP报头后面添加一个ESP报头(ESP Header),并在数据包后面追加一个ESP尾(ESP Tail和ESP Auth data)。与AH不同的是,ESP尾中ESP Authdata用于对数据提供来源认证和完整性校验,并且ESP将数据中的有效载荷进行加密后再封装到数据包中,以保证数据的机密性,但ESP没有对IP头的内容进行保护。

Securlty Parameter Index(SPI)安全索引

找秘钥,高速对端使用什么算法(机密性)

Sequence Number序列号

防重放攻击

Payload Data(Variable)身份认证

身份认证,完整性校验

Padding(0-255)Bytes填充

对称算法中块加密必须满足256、64才能算出来,不够就填充

Pad Length填充位

描述填充了多少bit

Report Handler

Authentication Data(Variable)认证数据

包发给你认证结果写进去,只有True或False

ESP封装有一个ESP Header头部,然后一个ESP Trailer中包含(Pad Length和Report Handler完整性校验值),最后是ESP Authentication认证值。

提供数据真实性、数据完整性、抗重放、数据机密性

ESP 用IP协议号50来标识

IPsec两种模式:

隧道模式:在隧道模式下,AH头或ESP头被插到原AP头之前,另外生成一个新的报文头放到AH头或ESP头之前,保1P头和负载。道模式主要应用于两台VPN网关之间或一台主机与一台VPN网关之间的通信。

隧道模式下,AH协议的完整性验证范围为包括新增1P头在内的整个1P报ESP协议验证报文的完整性检查部分包括ESP包头、原IP头、传输层协议头、数居和ESP报尾,但不包括新IP头,因此ESP协议无法保证新IP头的安全。ESP的加密部分包括传输层协议头、数据和ESP报尾。新IP头(NewIP Header) 中,源IP地址为网关A的IP地址,目的IP地址为网关B的IP地址。

传输模式:在传输模式中,AH头ESP头被插P头与传输层协议头之间,保TCP/UDP/CMP负载。传输模式不改变报文头,故道的源和目的地址必须为IP报文头中的源和目的地址,所以只适合两台主机或一台主机和一台VPN网关之间通信。

传输模式封装方式局限性在于不能NAT穿越:

(1)、AH保护整个头,NAT替换头,网络层丢包。

(2)、ESP加密虽然没保护IP头,但是TCP Header有个字段叫Checksum,这个字段会把IP和data一起做运算,NAT后IP变了校验就会出问题,就会在传输层丢包。

IPsec协议封装模式对比:

封装模式对比:

安全性:

  • 隧道模式隐藏原IP头信息,安全性更好

性能:

  • 隧道模式有一个额外的IP头,隧道模式比传输模式占用更多带宽。

具体选择哪种封装模式,需要在性能和安全之间做权衡。

IPsec安全联盟

IPSec安全传输数据的前提是在IPSec对等体(即运行IPSec协议的两个端点)之间成功建立安全联盟SA (Security Association)。

SA是通信的IPSec对等体间对某些要素的约定。我们也形象的称呼SA为隧道。

A和B建立了一个SA安全联盟=A和B建立了一条隧道!

手工配置IPsec流程:

1、协商加密算法

2、封装模式

3、完整性验证算法

4、加密秘钥是什么

5、加密的数据流(匹配感兴趣流)

6、接口调用安全策略

安全联盟的定义

安全联盟是要建立IPSec隧道的通信双方对隧道参数的约定,包括隧道两端的IP地址,隧道采用的验证方式、验证算法、验证密钥、加密算法、加密密钥、共享密钥以及生存周期等一系列参数。

SA由三元组来唯一标识,包括:安全参数索引 SPI、目的IP地址、安全协议号

安全参数索引 SPI

指导FW用什么秘钥及哪种算法解密报文及用哪种完整性算法去验证报文的完整性

安全协议号

AH:51 ESP:50

用于指导FW封装报文的方式

安全参数索引 SPI包含:验证算法、加密算法、加密秘钥。

IPSec安全联盟是为安全目的创处的单向逻圳连接,这就要求在每一个方向上都需要拥有一个PSec安全联盟。

为了在网关A和网关B之问建立IPSec隧道,需要建立两个安全联盟,其中,安全联盟1规定了对从网关A发送到网关B数据采取的保护方式,安全联盟2规定了对从网关B发送到网关A数据采取的保护方式。安全联盟1对于网关A是Outbound方向,而对于网关B则是lnbound方向。安全联盟2则相反。

IPSec SA有两种类型:手工方式创建的SA和IKE自动协商方式(isakmp) 创建的SA。二者的主要区别为:

  • 密钥生成方式不同

手工方式下:手工创建IPSec SA(隧道)所需的全部参数,包括加密算法、验证算法、加密密钥,都需要用户手工配置,也只能手工刷新。手工方式创建的IPSec SA一经创建永久存在。每一个对端都需要为之配置一个秘钥,当对端数量较多时,秘钥管理成本高且管理复杂。

IKE方式下:动态创建的IPSec SA(隧道)其加密、验证的密钥是通过DH算法动态生成的,可以动态刷新,密钥管理成本低,安全性较高。我们只需要指定自己支持的算法让对方和我协商,最后协商得到统一的加密算法、验证算法即可。

  • IPSecSA生存周期不同

手工方式创建的IPSecSA一经创建永久存在

KE方式下,由数据流触发建立IPSec SA,SA的生存周期由双方配置的生存周期参数控制

IPsec加解密以及验证过程

HMAC(Keyed-Hash MessageAuthentication Code)在报文后面加上秘钥一起做Hash运算,由于秘钥只有通信双方才有,所以确定了这个Hash的值只有拥有秘钥的双方才能创造,其它人无法得出这个HMAC值,从而验证了发送者身份(验证报文完整性和身份)。

流量走隧道的两种方式:

1、ACL匹配路由走隧道

2、创建tunnel接口,使用路由方式下一跳指向tunnel接口,转发到隧道。

IKE负责自动建立和维护IKE SAS和IPSec SAs。功能主要体现在如下几个方面:

  • 对双方进行认证
  • 交换公共密钥,产生密钥资源,管理密钥
  • 协商协议参数(封装模式,加密算法,完整性验证算法,身份验证方式..)。

IKEv1和IKEv2

IKE协议分IKEv1和IKE2两个版本。V1不安全、没有抗ddos机制、慢

IKEv1

  • IKEv1使用两个阶段为IPSec进行密钥协商并建立IPSecSA。
  1. 第一阶段,通信双方协商和建立IKE本身使用的安全通道,建立一个IKESA。
  2. 第二阶段,利用这个已通过了认证和安全保护的安全通道,建立一对IPSec SA。

IKEv2

  • IKEv2则简化了协商过程。加入安全机制康DDOS、防中间人、速度快、加入ESP认证。
  • 在一次协商中可直接产生IPSec的密钥,生成IPSec SA。

IKE简介:因特网密钥交换IKE(lnternet Key Exchange) 协议建立在Internet安全联盟和密钥管理协议ISAKMP定义的框架上,是基于UDP (User Datagram Protocol)的应用层协议。它为IPSec提供了自动协商密钥(Oakley和SKEME基于DH算法实现)、建立IPSec安全联盟的服务,能够简化IPSec的使用和管理,大大简化IPsec的配置和维护工作。

Oakley和SKEME基于DH算法实现自动协商秘钥。

IKE的三个组件:

  • SKEME:提供了DH算法支持,对DH算法做了优化,防止中间人攻击(加了认证对数字签名、公开秘钥加密、对称秘钥加密)。
  • ISAKMP:定义了IKE报文格式。
  • Oakley:确认加密秘钥机制。

IKE分两个阶段实现:

  • 第一阶段为建立IKE本身使用的安全信道而相互交换SA(采用ISAKMP)--ISAKMP SA(双向)
  • 第二阶段利用第一阶段建立的安全信道交换IPSec通信中使用的SA--IPSec SA (单向)

IKEv1的三种模式:

主模式:九个报文,主模式六个报文,快速模式三个报文。

野蛮模式:六个报文,野蛮模式三个报文,快速模式三个报文。

IKEv1包:

IKEv1有主模式和野蛮模式,IKEv2没有。

野蛮模式与主模式对比:

IKEv1的过程定义了主模式(Main Mode)和野蛮模式 (Aggressive Mode)两种交换模式主模式包含三次双向交换,用到了六条信息。

  • 消息1和2用于策略交换。
  • 消息3和4用于密钥信息交换。
  • 消息5和6用于身份和认证信息交换(5和6包被秘钥加密)。

野蛮模式只用到三条信息。

  • 前两条消息1和2用于协商提议与秘钥信息交换,消息3用于响应方认证发起方。

身份保护:

  • 主模式的最后两条消息有加密,可以提供身份保护功能,而野蛮模式消息集成度过高,因此无身份保护功能。

对等体标识:

  • 主模式只能采用IP地址方式标识对等体,而野蛮模式可以采用IP地址方式或者Name方式标识对等体。

主模式域共享秘钥认证:第一阶段

野蛮模式:

与主模式相比,野蛮模式减少了交换信息的数目,提高了协商的速度,但是没有对身份信息进行加密保护。虽然野蛮模式不提供身份保护,但它可以满足某些特定的网络环境需求。

  • 当IPSec隧道中存在NAT设备时,需要启用NAT穿越功能,而NAT转换会改变对等体的IP地址,由于野蛮模式不依赖于IP地址标识身份,使得采用预共享密钥验证方法时,NAT穿越只能在野蛮模式中实现。
  • 如果发起方的IP地址不固定或者无法预先知道,而双方都希望采用预共享密钥验证方法来创建IKE SA,则只能采用野蛮模式。
  • 如果发起方已知响应方的策略,或者对响应者的策略有全面的了解,采用野蛮模式能够更快地创建IKE SA。

总结:

IKE作用:

IKE负责自动建立和维护IKE SAS和IPSec SAs。功能主要体现在如下几个方面:

  • 对双方进行认证(主模式5&6包HASH_I/R)。
  • 交换公共密钥,产生密钥资源,管理密钥。
  • 协商协议参数(封装,加密,验证.....)。

主模式九个报文(IKE阶段六个【协商IKE-SA】,快速模式三个【协商IPsec-SA】),野蛮模式六个报文(IKE阶段三个【协商IKE-SA】,快速模式三个【协商IPsec-SA】)。

两个安全联盟SA,IKE安全联盟SA和IPsec安全联盟SA。

IKE主模式和野蛮模式区别:

IKEv1建立IKESA的过程定义了主模式(Main Mode) 和野蛮模式(Aggressive Mode)两种交换模式。

主模式包含三次双向交换,用到了六条信息:

  • 消息1和2用于策略交换,协商提议;SA
  • 消息3和4用于密钥信息交换;ke nonce
  • 消息5和6用于身份和认证信息交换;id hash

野蛮模式只用到三条信息:

  • 前两条消息1和2用于协商提议。
  • 消息3用于响应方认证发起方。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/239304.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

一文读懂Java中的设计模式——代理模式,以翻译场景举例,特别通俗易懂!

代理模式概念 在代理模式(Proxy Pattern)中,一个类代表另一个类的功能。这种类型的设计模式属于结构型模式。在代理模式中,我们创建具有现有对象的对象,以便向外界提供功能接口。目的:为其他对象提供一种代…

01-基于粤嵌GEC6818实现屏幕的显示固定颜色进行自动切换

基于GEC6818实现屏幕颜色的切换 本文使用开发板GEC6818,实现屏幕显示特定颜色并且进行自动切换的功能。 文章目录 基于GEC6818实现屏幕颜色的切换一、 初始化开发板--(开发板是新的则可以省略很多步骤)1.1 **删除文件和文件夹**1.2 **查看磁盘…

【送书福利-第三十一期】《区块链安全理论与实践(安全技术经典译丛)》

😎 作者介绍:我是程序员洲洲,一个热爱写作的非著名程序员。CSDN全栈优质领域创作者、华为云博客社区云享专家、阿里云博客社区专家博主、前后端开发、人工智能研究生。公粽号:程序员洲洲。 🎈 本文专栏:本文…

手把手教你基于 FastGPT 搭建个人知识库

前言 大家好,我是潇潇雨声。我发现在使用 GPT 时,尽管它能够生成一些小红书文案和日志,但内容常常显得空洞缺乏深度。今天我想分享一个解决这个问题的方法,那就是基于开源项目 FastGPT[1]。 我们可以通过向 GPT 提供一些有针对性的…

Python---搭建Python自带静态Web服务器

1. 静态Web服务器是什么? 可以为发出请求的浏览器提供静态文档的程序。 平时我们浏览百度新闻数据的时候,每天的新闻数据都会发生变化,那访问的这个页面就是动态的,而我们开发的是静态的,页面的数据不会发生变化。 …

Floyd求最短路(Floyd算法)

参考:约会怎么走到目的地最近呢?一文讲清所有最短路算法问题-CSDN博客 有4个城市8条路,公路上的数字表示这条公路的长短,并且路是单向的,现在要求我们求出任意两个城市之间的最短路程,也就是求任意两个点之…

蓝桥杯2019年10月青少组Python程序设计省赛真题

1:有n个人围成一个圈,按顺序排好号然后从第一个人开始报数(从1到3报数),报到3的人退出圈子,然后继续从1到3报数,直到最后留下一个人游戏结束,问最后留下的是原来第几号输人描迹:输人一个正整数n 输出描迹:输出最后留下的是原来的第几号 [样例输人] [样例输出] 2: 3、 […

ACM32G1x3有那些优势?适用于那些产品上?

ACM32G1x3优势 • 320KB 程序Flash64KB SRAM,跑RTOS程序开发更加方便 • 从外挂Flash通过DMA搬运图片数据到PSRAM,无需打断程序运行 • 120MHz M33内核,处理性能佳 • 集成2路CAN接口,适合工控等需要CAN接口的场景 • QS…

[JS设计模式]Flyweight Pattern

Flyweight pattern 享元模式是一种结构化的设计模式,主要用于产生大量类似对象而内存又有限的场景。享元模式能节省内存。 假设一个国际化特大城市SZ;它有5个区,分别为nanshan、futian、luohu、baoan、longgang;每个区都有多个图…

代码随想录刷题题Day20

刷题的第二十天,希望自己能够不断坚持下去,迎来蜕变。😀😀😀 刷题语言:C Day20 任务 ● 理论基础 ● 77. 组合 1 回溯算法理论基础 1.1 回溯法 回溯法是一种搜索的方式,是递归的副产品&#x…

海外媒体发稿:雅虎全球发稿推广脱颖而出的10种方法-华媒舍

雅虎全球发稿是一项重要的推广手段,能够帮助企业和个人提升品牌知名度和曝光率。在众多的发稿中脱颖而出并不容易。本文将为您介绍10种让您的雅虎全球发稿在众多文章中脱颖而出的方法,帮助您取得更好的效果。 1. 深入研究目标受众 在撰写雅虎全球发稿前…

Python to_numeric函数参数解读与最佳实践!

更多资料获取 📚 个人网站:ipengtao.com Python中的to_numeric函数是pandas库提供的一个强大而灵活的工具,用于将数据转换为数字类型。本文将深入探讨to_numeric函数的各种参数和用法,通过丰富的示例代码帮助大家更全面地理解和运…

基于thinkphp+vue的大学生校园生活服务平台sb00r

大学生一体化服务平台可以提高大学生综合服务信息管理问题的解决效率,优化大学生综合服务信息处理流程,保证大学生综合服务信息数据的安全,它是一个非常可靠,非常安全的应用程序。 运行环境:phpstudy/wamp/xammp等 开发语言&#…

CAS机制

Java中提供了很多原子操作类来保证共享变量操作的原子性。这些原子操作的底层原理都是使用了CAS机制。在使用一门技术之前,了解这个技术的底层原理是非常重要的,所以本篇文章就先来讲讲什么是CAS机制,CAS机制存在的一些问题以及在Java中怎么使…

鸿蒙应用开发初体验 HelloWorld

9 月 25 日,华为常务董事、终端 BG CEO、智能汽车解决方案 BU 董事长余承东华为秋季全场景新品发布会上介绍了鸿蒙系统的最新进展:HarmonyOS 4 发布后,短短一个多月升级用户已经超过 6000 万,成为史上升级速度最快的 HarmonyOS 版…

WebGL开发三维解剖学应用

开发基于 WebGL 的三维解剖学应用通常涉及以下步骤。这些步骤包括创建三维模型、整合交互性、优化性能等,希望对大家有所帮助。北京木奇移动技术有限公司,专业的软件外包开发公司,欢迎交流合作。 1.三维模型创建: 首先&#xff0…

智能优化算法应用:基于白冠鸡算法3D无线传感器网络(WSN)覆盖优化 - 附代码

智能优化算法应用:基于白冠鸡算法3D无线传感器网络(WSN)覆盖优化 - 附代码 文章目录 智能优化算法应用:基于白冠鸡算法3D无线传感器网络(WSN)覆盖优化 - 附代码1.无线传感网络节点模型2.覆盖数学模型及分析3.白冠鸡算法4.实验参数设定5.算法结果6.参考文…

vue proxy代理 和 Nginx 配置跨域

vue.config.js文件中配置的代理: devServer: {port: 9095,// open: true, // 配置项目在启动时自动在浏览器打开proxy: {/yh: { // /api是代理标识,一般是每个接口前的相同部分target: "http://192.168.5.58:8002", // 请求地址,一…

4.3【共享源】克隆实战开发之截屏(一)

一,Screen截屏介绍 Screen的截屏是指从源读取像素,然后复制到缓冲区。然后可以根据需要操纵缓冲区;它可以简单地写入文件,也可以在其他窗口或显示器中使用。 Screen API从源中读取像素,并将其复制到提供的缓冲区中以捕获截屏。缓冲区可以是pixmap或窗口缓冲区,但必须设…

众和策略:美股全线上涨 中概股大涨

当地时间12月21日,欧洲股市全线下跌,英国富时100指数、法国CAC40指数、德国DAX指数均小幅下跌。美国通胀降温,美股商场三大指数尾盘飙升,纳斯达克指数、标普500指数均涨逾1%,大型科技股多数上涨,特斯拉涨近…