IPsec-VPN中文解释
网络括谱图
IPSec-VPN 配置思路
1 配置IP地址
FWA:IP地址的配置
[FW1000-A]interface GigabitEthernet 1/0/0
[FW1000-A-GigabitEthernet1/0/0]ip address 10.1.1.1 24 //配置IP地址
[FW1000-A]interface GigabitEthernet 1/0/2
[FW1000-A-GigabitEthernet1/0/2]ip address 2.2.2.1 24
FWB:IP地址配置
[FW1000-B]interface GigabitEthernet 1/0/3
[FW1000-B-GigabitEthernet1/0/3]ip address 10.1.2.1 24
[FW1000-B]interface GigabitEthernet 1/0/4
[FW1000-B-GigabitEthernet1/0/4]ip add
[FW1000-B-GigabitEthernet1/0/4]ip address 2.2.3.1 24
INTERNET-SW1:将接口开成三层接口
[INTERENT-SW]interface GigabitEthernet 1/0/1
[INTERENT-SW-GigabitEthernet1/0/1]port link-mode route //交换机的模式是三层
[INTERENT-SW-GigabitEthernet1/0/1]ip address 2.2.2.2 24
[INTERENT-SW-GigabitEthernet1/0/1]quit
[INTERENT-SW-GigabitEthernet1/0/3]port link-mode route
[INTERENT-SW-GigabitEthernet1/0/3]ip address 2.2.3.2 24
2 防火墙的接口加入指定的防火墙区域
(Local
Turst
Untrust
DMZ
Management)
FWA:配置思路
[FW1000-A]security-zone name Trust //进入对应的区域
[FW1000-A-security-zone-Trust]import interface GigabitEthernet 1/0/0
//将接口加入到指定的区域
[FW1000-B-security-zone-Trust]quit
[FW1000-A]security-zone name Untrust
[FW1000-A-security-zone-Untrust]import interface GigabitEthernet 1/0/2
[FW1000-A-security-zone-Untrust]
FWB配置思路
[FW1000-B]security-zone name Trust
[FW1000-B-security-zone-Trust]import interface GigabitEthernet 1/0/3
[FW1000-B-security-zone-Trust]quit
[FW1000-B]security-zone name Untrust
[FW1000-B-security-zone-Untrust]import interface GigabitEthernet 1/0/4
3 防火墙的接口默认是封 ping的需要解ping
FWA配置思路
[FW1000-A-GigabitEthernet1/0/0]manage ping outbound //出口流量解ping
[FW1000-A-GigabitEthernet1/0/0]manage ping inbound //入口流量解ping
[FW1000-A-GigabitEthernet1/0/0]quit
[FW1000-A-GigabitEthernet1/0/2]manage ping outbound
[FW1000-A-GigabitEthernet1/0/2]manage ping inbound
FWB配置思路
[FW1000-B]interface GigabitEthernet 1/0/4
[FW1000-B-GigabitEthernet1/0/4]manage ping outbound
[FW1000-B-GigabitEthernet1/0/4]manage ping inbound
[FW1000-B-GigabitEthernet1/0/4]quit
[FW1000-B]interface GigabitEthernet 1/0/3
[FW1000-B-GigabitEthernet1/0/3]manage ping outbound
[FW1000-B-GigabitEthernet1/0/3]manage ping in
[FW1000-B-GigabitEthernet1/0/3]manage ping inbound 0/3]
4 防火墙配置静态路由
FWA配置:
[FW1000-A]ip route-static 10.1.2.0 24 2.2.2.2
//配置静态路由 ip route-static 目标地址 掩码 下一条
[FW1000-A]ip route-static 2.2.3.1 24 2.2.2.2
FWB配置:
[FW1000-B]ip route-static 10.1.1.0 24 2.2.3.2
[FW1000-B]ip route-static 2.2.2.1 24 2.2.3.2
5 配置IPsec隧道策略
配置安全策略放行Untrust与Local安全域之间的流量,用于设备之间可以建立IPsec隧道。
FWA
security-policy ip //进入防火墙的策略
rule name ipseclocalout //给规则命名字
source-zone local //源区域是 local
备注:local区域是指防火墙上的所有对应的接口
destination-zone untrust //目标区域是 不信任区域 指定的是公网区域
备注: untrust 指定的是外网区域,通常指定的是不可信认的区域
source-ip-host 2.2.2.1 //源接口的IP地址
destination-ip-host 2.2.3.1 //目标接口的IP地址
action pass //使用 "action pass" 可以覆盖这一默认行为,允许特定的流量通过。
Quit //退出
rule name ipseclocalin
source-zone untrust
destination-zone local
source-ip-host 2.2.3.1
destination-ip-host 2.2.2.1
action pass
quit
6 配置安全策略从信任的区域到不信任的区域 trust-untrust
rule name trust-untrust
source-zone trust
destination-zone untrust
source-ip-subnet 10.1.1.0 24
destination-ip-subnet 10.1.2.0 24
action pass
quit
解释:
规则名称:"trust-untrust",这是该规则的标识名称,方便管理和识别。
源安全域:"trust",表示数据包的发送方所在的网络区域被划分为 "trust" 安全域,通常代表内部网络或受信任的网络。
目的安全域:"untrust",表示数据包的接收方所在的网络区域被划分为 "untrust" 安全域,通常代表外部网络或不受信任的网络。
源IP地址范围:"10.1.1.0 24",指定了允许发送数据包的源IP地址范围,即10.1.1.0到10.1.1.255(子网掩码为255.255.255.0)。
目的IP地址范围:"10.1.2.0 24",指定了允许接收数据包的目的IP地址范围,即10.1.2.0到10.1.2.255。
动作:"action pass",定义了当数据包符合上述条件时,防火墙将执行的动作,这里是 "pass",即允许数据包通过。
退出命令:"quit",用于退出当前的安全策略配置模式。
rule name untrust-trust
source-zone untrust
destination-zone trust
source-ip-subnet 10.1.2.0 24
destination-ip-subnet 10.1.1.0 24
action pass
quit
quit
7 配置ACL 规则
配置ACL规则(高级ACL)
acl advanced 3101
rule permit ip source 10.1.1.0 0.0.0.255 destination 10.1.2.0 0.0.0.255
quit
解释:
rule permit:表示这是一个允许(permit)规则。
ip:指定该规则适用于IP数据包。
source 10.1.1.0 0.0.0.255:指定源IP地址范围为10.1.1.0到10.1.1.255(子网掩码为255.255.255.0,即24位掩码)。
destination 10.1.2.0 0.0.0.255:指定目的IP地址范围为10.1.2.0到10.1.2.255(同样是一个24位掩码的子网)。
8 配置IPsec安全提议,协商封装报文使用的各种安全协议
ipsec transform-set tran1
encapsulation-mode tunnel
protocol esp
esp encryption-algorithm aes-cbc-128
esp authentication-algorithm sha1
quit
解释:
- 创建IPSec转换集: ipsec transform-set tran1 命令创建了一个名为 tran1 的IPSec转换集,这是一组安全参数,用于定义IPSec隧道的加密和认证方法。
- 设置封装模式: encapsulation-mode tunnel 指定了封装模式为隧道模式,这意味着原始数据包将被完全封装在新的IPSec数据包中,包括源IP和目的IP地址。
- 选择协议: protocol esp 选择了ESP协议,它是IPSec的两个主要协议之一,用于在IP层提供数据的加密和认证。
- 加密算法: esp encryption-algorithm aes-cbc-128 设置了加密算法为AES-CBC-128,即采用128位密钥的高级加密标准(AES)的密码块链(CBC)模式,这是一种常用的、安全性较高的加密方法。
- 认证算法: esp authentication-algorithm sha1 设置了认证算法为SHA-1,即安全哈希算法1,用于验证数据的完整性和来源,防止数据在传输过程中被篡改。
- 退出命令模式: quit 命令用于退出当前的配置模式,返回到上一级命令行界面。
9 配置IPsec安全策略,建立IPsec隧道,保护需要防护的数据流
ipsec policy map1 10 manual
security acl 3101
transform-set tran1
remote-address 2.2.3.1
sa spi outbound esp 12345
sa spi inbound esp 54321
sa string-key outbound esp simple abcdefg
sa string-key inbound esp simple gfedcbasa
quit
- 创建IPSec安全策略: ipsec policy map1 10 manual 创建了一个名为 map1 的IPSec安全策略,序列号为10,并且是手动模式(manual),这意味着IPSec安全关联(SA)需要手动建立。
- 引用访问控制列表(ACL): security acl 3101 指定了该IPSec安全策略将使用编号为3101的ACL来确定哪些流量需要通过IPSec进行保护。
- 指定IPSec转换集: transform-set tran1 指定了该IPSec安全策略将使用名为 tran1 的转换集,该转换集定义了加密和认证算法等安全参数。
- 配置对端IP地址: remote-address 2.2.3.1 指定了IPSec隧道的对端IP地址为2.2.3.1。
- 配置安全关联(SA)的SPI值:
- sa spi outbound esp 12345 为出站(outbound)的ESP协议配置了一个SPI(Security Parameters Index)值为12345。
- sa spi inbound esp 54321 为入站(inbound)的ESP协议配置了一个SPI值为54321。
- 配置SA的密钥:
- sa string-key outbound esp simple abcdefg 为出站SA配置了一个简单的字符串密钥“abcdefg”。
- sa string-key inbound esp simple gfedcbasa 为入站SA配置了一个简单的字符串密钥“gfedcbasa”。
10 在接口上应用IPsec安全策略,对接口上的流量进行保护
interface gigabitethernet 1/0/2
ipsec apply policy map1
quit
- interface gigabitethernet 1/0/2
这条命令用于进入名为GigabitEthernet 1/0/2的网络接口配置模式。这个接口可以是物理接口,也可以是逻辑接口,用于连接网络设备和其他设备,如路由器、交换机或终端设备。 - ipsec apply policy map1
这条命令将名为map1的IPSec安全策略应用到GigabitEthernet 1/0/2接口上。这意味着所有通过该接口的、符合策略map1中定义的ACL(访问控制列表)规则的数据流都将被IPSec保护。这包括数据的加密、认证等安全操作,
11 配置IPsec隧道策略
配置安全策略放行Untrust与Local安全域之间的流量,用于设备之间可以建立IPsec隧道。
security-policy ip
rule name ipseclocalout
source-zone local
destination-zone
source-ip-host 2.2.3.1
destination-ip-host 2.2.2.1
action pass
quit
rule name ipseclocalin
source-zone untrust
destination-zone local
source-ip-host 2.2.2.1
destination-ip-host 2.2.3.1
action pass
quit
12 配置安全策略
配置安全策略 trust-untrust untrust-trust
rule name trust-untrust
source-zone trust
destination-zone untrust
source-ip-subnet 10.1.2.0 24
destination-ip-subnet 10.1.1.0 24
action pass
quit
rule name untrust-trust
source-zone untrust
destination-zone trust
source-ip-subnet 10.1.1.0 24
destination-ip-subnet 10.1.2.0 24
action pass
quit
quit
13 配置ACL规则
acl advanced 3101
rule permit ip source 10.1.1.0 0.0.0.255 destination 10.1.2.0 0.0.0.255
quit
14 配置IPsec安全提议,协商封装报文使用的各种安全协议
ipsec transform-set tran1
encapsulation-mode tunnel
protocol esp
esp encryption-algorithm aes-cbc-128
esp authentication-algorithm sha1
quit
15 配置IPsec安全策略,建立IPsec隧道,保护需要防护的数据流
ipsec policy usel 10 manual
security acl 3101
transform-set tran1
remote-address 2.2.2.1
sa spi outbound esp 54321
sa spi inbound esp 12345
sa string-key outbound esp simple gfedcba
sa string-key inbound esp simple abcdefg
quit
16 在接口上应用IPsec安全策略,对接口上的流量进行保护
interface gigabitethernet 1/0/
ipsec apply policy usel
quit
17 查看配置
<FW1000-A>display ipsec tunnel //查看隧道管理
Tunnel ID: 0
Status: Active
SA's SPI:
outbound: 12345 (0x00003039) [ESP]
inbound: 54321 (0x0000d431) [ESP]
Tunnel:
local address: 2.2.2.1
remote address: 2.2.3.1
Flow:
as defined in IPv4 ACL 3101
<FW1000-A>
<FW1000-A>display ipsec statistics
IPsec packet statistics:
Received/sent packets: 0/0
Received/sent bytes: 0/0
Received/sent packet rate: 0/0 packets/sec
Received/sent byte rate: 0/0 bytes/sec
Dropped packets (received/sent): 0/0
Dropped packets statistics
No available SA: 0
Wrong SA: 0
Invalid length: 0
Authentication failure: 0
Encapsulation failure: 0
Decapsulation failure: 0
Replayed packets: 0
ACL check failure: 0
MTU check failure: 0
Loopback limit exceeded: 0
Crypto speed limit exceeded: 0
<FW1000-A>display ipsec policy //查看ipsec的框架
-------------------------------------------
IPsec Policy: map1
Interface: GigabitEthernet1/0/2
-------------------------------------------
-----------------------------
Sequence number: 10
Mode: Manual
-----------------------------
Security data flow: 3101
Remote address: 2.2.3.1
Transform set: tran1
Inbound AH setting:
AH SPI:
AH string-key:
AH authentication hex key:
Inbound ESP setting:
ESP SPI: 54321 (0x0000d431)
ESP string-key: ******
ESP encryption hex key:
ESP authentication hex key:
Outbound AH setting:
AH SPI:
AH string-key:
AH authentication hex key:
Outbound ESP setting:
ESP SPI: 12345 (0x00003039)
ESP string-key: ******
ESP encryption hex key:
ESP authentication hex key:
<FW1000-A>display ipse transform-set // 显示IPsec安全提议的信息
IPsec transform set: tran1
State: complete
Encapsulation mode: tunnel
ESN: Disabled
PFS:
Transform: ESP
ESP protocol:
Integrity: SHA1
Encryption: AES-CBC-128
<FW1000-B>display ipsec sa //显示SA 相关信息
-------------------------------
Interface: GigabitEthernet1/0/4
-------------------------------
-----------------------------
IPsec policy: usel
Sequence number: 10
Mode: Manual
-----------------------------
Tunnel id: 0
Encapsulation mode: tunnel
Path MTU: 1428
Tunnel:
local address: 2.2.3.1
remote address: 2.2.2.1
Flow:
as defined in ACL 3101
[Inbound ESP SA]
SPI: 12345 (0x00003039)
Connection ID: 4294967297
Transform set: ESP-ENCRYPT-AES-CBC-128 ESP-AUTH-SHA1
No duration limit for this SA
[Outbound ESP SA]
SPI: 54321 (0x0000d431)
Connection ID: 4294967296
Transform set: ESP-ENCRYPT-AES-CBC-128 ESP-AUTH-SHA1
No duration limit for this SA
<FW1000-B>
<FW1000-A>display ipsec sa
-------------------------------
Interface: GigabitEthernet1/0/2
-------------------------------
-----------------------------
IPsec policy: map1
Sequence number: 10
Mode: Manual
-----------------------------
Tunnel id: 0
Encapsulation mode: tunnel
Path MTU: 1428
Tunnel:
local address: 2.2.2.1
remote address: 2.2.3.1
Flow:
as defined in ACL 3101
[Inbound ESP SA]
SPI: 54321 (0x0000d431)
Connection ID: 4294967297
Transform set: ESP-ENCRYPT-AES-CBC-128 ESP-AUTH-SHA1
No duration limit for this SA
[Outbound ESP SA]
SPI: 12345 (0x00003039)
Connection ID: 4294967296
Transform set: ESP-ENCRYPT-AES-CBC-128 ESP-AUTH-SHA1
No duration limit for this SA
<FW1000-A>
相关文章:

IPsec-VPN中文解释
网络括谱图 IPSec-VPN 配置思路 1 配置IP地址 FWA:IP地址的配置 [FW1000-A]interface GigabitEthernet 1/0/0 [FW1000-A-GigabitEthernet1/0/0]ip address 10.1.1.1 24 //配置IP地址 [FW1000-A]interface GigabitEthernet 1/0/2 [FW1000-A-GigabitEthernet1/0/2]ip a…...

Ubuntu 22.04 源码下载、编译
Kernel/BuildYourOwnKernel - Ubuntu Wikihttps://wiki.ubuntu.com/Kernel/BuildYourOwnKernel 一、查询当前系统内核版本 rootubuntu22:~# uname -r 5.15.0-118-generic 二、查询本地软件包数据库中的内核源码信息 rootubuntu22:~# apt search linux-source Sorting... Do…...

【深度学习实战—11】:基于Pytorch实现谷歌QuickDraw数据集的下载、解析、格式转换、DDP分布式训练、测试
✨博客主页:王乐予🎈 ✨年轻人要:Living for the moment(活在当下)!💪 🏆推荐专栏:【图像处理】【千锤百炼Python】【深度学习】【排序算法】 目录 😺〇、仓库…...

基于SpringBoot+WebSocket实现地图上绘制车辆实时运动轨迹图
实现基于北斗卫星的车辆定位和轨迹图的Maven工程(使用模拟数据),我们将使用以下技术: Spring Boot:作为后端框架,用来提供数据接口。Thymeleaf:作为前端模板引擎,呈现网页。Leaflet…...

嵌入式入门小工程
此代码基于s3c2440 1.点灯 //led.c void init_led(void) {unsigned int t;t GPBCON;t & ~((3 << 10) | (3 << 12) | (3 << 14) | (3 << 16));t | (1 << 10) | (1 << 12) | (1 << 14) | (1 << 16);GPBCON t; }void le…...

hackmyvm靶场--zon
环境 攻击机kali 靶机 未知 主机探测 因为在同一个局域网内使用ARP协议探测存活主机 靶机为192.168.56.128 端口探测 常见的80和22端口 那么一定是寻找web漏洞拿shell了 后台扫描 后台扫描常用dirsearch和gobuster,有时候小字典可能不太行,可以尝试换个大点…...
atcoder abc372 启发式合并, dp
A delete 代码: #include <bits.stdc.h>using namespace std;int main() {string s;cin >> s;for(auto t: s) if(t ! .) cout << t; } B 3 ^ A 思路:三进制转换,可以参考二进制,先把当前可以加入的最大的3的…...

CentOS Stream 9部署MariaDB
1、更新系统软件包 sudo dnf update 2、安装MariaDB软件包(替代mysql) sudo dnf install mariadb-server 3、安装MariaDB服务 sudo systemctl enable --now mariadb 4、检查MariaDB服务状态 sudo systemctl status mariadb 5、配置MariaDB安全性 sudo my…...

【Leetcode:997. 找到小镇的法官 + 入度出度】
🚀 算法题 🚀 🌲 算法刷题专栏 | 面试必备算法 | 面试高频算法 🍀 🌲 越难的东西,越要努力坚持,因为它具有很高的价值,算法就是这样✨ 🌲 作者简介:硕风和炜,…...

大数据Flink(一百二十三):五分钟上手Flink MySQL连接器
文章目录 五分钟上手Flink MySQL连接器 一、创建数据库表 二、创建session集群 三、源表查询 四、窗口计算 五、结果数据写回数据库 五分钟上手Flink MySQL连接器 MySQL Connector可以将本地或远程的MySQL数据库连接到Flink中&#x…...
SYN Flood攻击原理,SYN Cookie算法
SYN Flood是一种非常危险而常见的Dos攻击方式。到目前为止,能够有效防范SYN Flood攻击的手段并不多,SYN Cookie就是其中最著名的一种。 1. SYN Flood攻击原理 SYN Flood攻击是一种典型的拒绝服务(Denial of Service)攻击。所谓的拒绝服务攻击就是通过进…...
计组(蒋)期末速成笔记1
蒋本珊计组期末不挂科复习笔记 第1章 概论 第2章 数据的机器层次表示 第3章 指令系统 第4章 数值的机器运算 第5章 存储系统和结构 第6章 中央处理器 第7章 总线 第1章 概论 蒋本珊计组期末不挂科复习笔记知道你快考试了,莫慌! 第1章 概论1.1 冯诺依曼计…...
mysql学习教程,从入门到精通,SQL 更新数据(UPDATE 语句)(17)
1、SQL 更新数据(UPDATE 语句) SQL UPDATE 需要指定要更新的表、要修改的列以及新值,并且通常会通过WHERE子句来指定哪些行需要被更新。下面是一个简单的示例,说明如何使用UPDATE语句。 假设我们有一个名为employees的表…...

【吊打面试官系列-MySQL面试题】MyISAM 表格将在哪里存储,并且还提供其存储格式?
大家好,我是锋哥。今天分享关于【MyISAM 表格将在哪里存储,并且还提供其存储格式?】面试题,希望对大家有帮助; MyISAM 表格将在哪里存储,并且还提供其存储格式? 每个 MyISAM 表格以三种格式存储…...
常用的图像增强的算法之间的联系和区别
Unsharp Mask (USM)、拉普拉斯算子、直方图均衡化和伽马增强是图像处理中常见的技术,但它们在原理、作用和应用场景上有显著不同。以下是对这些方法的详细比较: 1. Unsharp Mask (USM) 原理:USM 是通过对图像进行模糊处理(如高斯…...

SpringBoot+Vue考试系统免费分享
源码说明: 这是一个开源的SpringBoot与Vue开发的在线考试系统。经过站长测试,系统稳定可用,允许重复考试。 环境: 需要安装的环境包括Node.js v14.21.3、JDK8、Maven以及MySQL 5.7。 前端部署教程: 执行 npm inst…...
音视频入门基础:FLV专题(1)——FLV官方文档下载
一、FLV简介 Flash Video(简称FLV),是一种网络视频格式,用作流媒体格式,它的出现有效地解决了视频文件导入Flash后,使导出的SWF文件体积庞大,不能在网络上有效使用等缺点。 一般FLV文件包在SW…...

使用c#制作一个小型桌面程序
封装dll 首先使用visual stdio 创建Dll新项目,然后属性管理器导入自己的工程属性表(如果没有可以参考visual stdio 如何配置opencv等其他环境) 创建完成后 系统会自动生成一些文件,其中 pch.cpp 先不要修改,pch.h中先导入自己需…...

Clip studio paint百度云下载:附安装包+教程
首先补一个介绍,Clip Studio Paint(即CSP):这是一款专业的绘画和漫画创作软件,拥有丰富的绘画工具,适合漫画创作者使用。其界面友好,工具齐全,能够满足漫画创作中的各种需求。 用过…...

从Yargs源码学习中间件的设计
yargs中间件介绍 yargs 是一个用于解析命令行参数的流行库,它能帮助开发者轻松地定义 CLI(命令行接口),并提供参数处理、命令组织、help文本自动生成等功能。今天我们来学习一下它对中间件的支持。 中间件的API详细信息࿰…...

VB.net复制Ntag213卡写入UID
本示例使用的发卡器:https://item.taobao.com/item.htm?ftt&id615391857885 一、读取旧Ntag卡的UID和数据 Private Sub Button15_Click(sender As Object, e As EventArgs) Handles Button15.Click轻松读卡技术支持:网站:Dim i, j As IntegerDim cardidhex, …...

UE5 学习系列(三)创建和移动物体
这篇博客是该系列的第三篇,是在之前两篇博客的基础上展开,主要介绍如何在操作界面中创建和拖动物体,这篇博客跟随的视频链接如下: B 站视频:s03-创建和移动物体 如果你不打算开之前的博客并且对UE5 比较熟的话按照以…...

关于iview组件中使用 table , 绑定序号分页后序号从1开始的解决方案
问题描述:iview使用table 中type: "index",分页之后 ,索引还是从1开始,试过绑定后台返回数据的id, 这种方法可行,就是后台返回数据的每个页面id都不完全是按照从1开始的升序,因此百度了下,找到了…...
蓝桥杯 2024 15届国赛 A组 儿童节快乐
P10576 [蓝桥杯 2024 国 A] 儿童节快乐 题目描述 五彩斑斓的气球在蓝天下悠然飘荡,轻快的音乐在耳边持续回荡,小朋友们手牵着手一同畅快欢笑。在这样一片安乐祥和的氛围下,六一来了。 今天是六一儿童节,小蓝老师为了让大家在节…...
MySQL中【正则表达式】用法
MySQL 中正则表达式通过 REGEXP 或 RLIKE 操作符实现(两者等价),用于在 WHERE 子句中进行复杂的字符串模式匹配。以下是核心用法和示例: 一、基础语法 SELECT column_name FROM table_name WHERE column_name REGEXP pattern; …...

如何在最短时间内提升打ctf(web)的水平?
刚刚刷完2遍 bugku 的 web 题,前来答题。 每个人对刷题理解是不同,有的人是看了writeup就等于刷了,有的人是收藏了writeup就等于刷了,有的人是跟着writeup做了一遍就等于刷了,还有的人是独立思考做了一遍就等于刷了。…...
2023赣州旅游投资集团
单选题 1.“不登高山,不知天之高也;不临深溪,不知地之厚也。”这句话说明_____。 A、人的意识具有创造性 B、人的认识是独立于实践之外的 C、实践在认识过程中具有决定作用 D、人的一切知识都是从直接经验中获得的 参考答案: C 本题解…...
WebRTC从入门到实践 - 零基础教程
WebRTC从入门到实践 - 零基础教程 目录 WebRTC简介 基础概念 工作原理 开发环境搭建 基础实践 三个实战案例 常见问题解答 1. WebRTC简介 1.1 什么是WebRTC? WebRTC(Web Real-Time Communication)是一个支持网页浏览器进行实时语音…...
django blank 与 null的区别
1.blank blank控制表单验证时是否允许字段为空 2.null null控制数据库层面是否为空 但是,要注意以下几点: Django的表单验证与null无关:null参数控制的是数据库层面字段是否可以为NULL,而blank参数控制的是Django表单验证时字…...
uniapp 实现腾讯云IM群文件上传下载功能
UniApp 集成腾讯云IM实现群文件上传下载功能全攻略 一、功能背景与技术选型 在团队协作场景中,群文件共享是核心需求之一。本文将介绍如何基于腾讯云IMCOS,在uniapp中实现: 群内文件上传/下载文件元数据管理下载进度追踪跨平台文件预览 二…...