赞
踩
?最近要使用ipsec vpn 还要结合国密 而且在边缘端使用, 好像用这个库比较好~ 还有结合国密的 先弄个简单教程~
1. 背景
有关VPP以及VPP_SSWAN的内容自行百度吧。
感觉可能是第二个参考连接给的配置可能有问题,按照第一个连接的配置来。
这里同时也记载一下自己的配置。
(1) StrongSwan配置、运行及测试
https://www.cnblogs.com/shaoyangz/p/10345698.html
(2) IP 安全与 IPsec 协议,实验A :使用Strongswan 建立两台 PC 间安全通信
https://zhuanlan.zhihu.com/p/100535851
2. 环境
2.1. 版本
- $ sudo vppctl # 或者make run
- DBGvpp# show version
- vpp v23.06-release built by XXX on XXX at 2023-08-02T07:37:51
-
- $ lsb_release -r
- Release: 20.04
2.2. 拓扑
更新了下拓扑。
- +--------+ +--------+ +--------+ +--------+ +--------+
- | H1 |---| H3 |---| H4 |---| H5 |---| H2 |
- +--------+ +--------+ +--------+ +--------+ +--------+
-
-
- 复制
- # H3
- sudo ip addr add 192.168.34.3/24 dev eth2
- sudo ip addr add 192.168.13.3/24 dev eth3
- sudo ip route add 192.168.45.0/24 via 192.168.34.4 dev eth2
- sudo sysctl net.ipv4.ip_forward=1
-
- # H4
- ## H4->H3
- sudo ip addr add 192.168.34.4/24 dev eth3
- ## H4->H5
- sudo ip addr add 192.168.45.4/24 dev eth2
- sudo ip route add 192.168.25.0/24 via 192.168.45.5 dev eth2
- sudo ip route add 192.168.13.0/24 via 192.168.34.3 dev eth3
- sudo sysctl net.ipv4.ip_forward=1
-
- # H5
- sudo ip addr add 192.168.45.5/24 dev eth2
- sudo ip addr add 192.168.25.5/24 dev eth3
- sudo ip route add 192.168.34.0/24 via 192.168.45.4 dev eth2
- sudo sysctl net.ipv4.ip_forward=1
-
- # H1
- sudo ip addr add 192.168.13.1/24 dev eth2
- sudo ip route add 192.168.25.0/24 via 192.168.13.3 dev eth2
-
- # H2
- sudo ip addr add 192.168.25.2/24 dev eth2
- sudo ip route add 192.168.13.0/24 via 192.168.25.5 dev eth2

现在基本的路由的框架应该都搭起来了。不过如果并不能保证都能ping通,如果不能通,大概就是没有路由,或者地址掉了。总之,需要的是:H3 ping H5以及H1 ping H2都能通即可。后续需要使用到。
还是建议使用FRR-BGP或其他路由协议去搭建,这样自己手动配置有些麻烦。
上面仅是demo, 实际测试找俩个机器就可了
3. 安装strongSwan
先安装必须的库
- sudo apt update
- sudo apt install -y libpam0g-dev libssl-dev make gcc
使用二进制包也行,就是用sudo apt install strongswan strongswan-swanctl,还有没有需要安装的我不晓得。
考虑到我以后可能修改代码的需求,所以我得需要从源码安装。
我需要的隧道在H3=H5之间,所以只需要给他们安装strongSwan就行了。H4用于查看抓包,H1-H2用于通信。实质上应该H3\H4\H5三台机器也是可以的。
- # 下载的目标目录
- cd /usr/local/src
- # 进行源码下载
- wget --no-check-certificate https://download.strongswan.org/strongswan-5.9.6.tar.gz
- # 解压软件
- tar -zvxf strongswan-5.9.6.tar.gz
-
- # 编译安装
- cd strongswan-5.9.6
- #配置安装 --prefix=你的安装目录 其他 --enable 为使能插件
- ## 不过这里建议不要使用--prefix改变默认安装位置。不过不改的话自己就不知道安装到哪里去了
- ## /usr/local/etc/下放置了配置文件,也是可以修改的。
- ## 在配置前,可以使用./configure -h查看下帮助命令
- ./configure --prefix=/usr/local/strongswan --enable-eap-identity --enable-eap-md5 --enable-eap-mschapv2 --enable-eap-tls --enable-eap-ttls --enable-eap-peap --enable-eap-tnc --enable-eap-dynamic --enable-eap-radius --enable-xauth-eap --enable-xauth-pam --enable-dhcp --enable-openssl --enable-addrblock --enable-unity --enable-certexpire --enable-radattr --enable-swanctl --enable-openssl --disable-gmp --enable-save-keys
- make
- sudo make install
- # 这个要不要应该都行,不过都是仪式的一部分了
- sudo ldconfig

安装完毕,验证下版本:
- $ ipsec version
- Linux strongSwan U5.9.6/K5.15.0-78-generic
- University of Applied Sciences Rapperswil, Switzerland
- See 'ipsec --copyright' for copyright information.
4. 配置
按照那两个一开始的参考说的,现在使用的都是swanctl了,而不使用starter的方式了。
通用配置是指strongSwan的配置
ipsec.conf/ipsec.secret/ipsec.d的配置文件已经不再使用
swanctl的配置文件
** 请注意,如果按照我上面源码安装的,默认的配置文件是在/usr/local/etc中;但是我这里是在使用VPP的vpp_sswan插件安装的,改了默认配置文件地址,在/etc中。**,下面使用CONF_PREFIX替代目录。
我这里先用psk(preshared key,也就是没有使用证书以及IKE呗)测试一下。后面再学习IKE。
4.1. H3配置
打开${CONF_PREFIX}/swanctl/conf.d/h3.conf。需要使用你自己的地址。文件名不重要。
- connections {
- h2h {
- local_addrs = 192.168.34.3
- remote_addrs = 192.168.45.5
- local {
- auth = psk
- id = h3
- }
- remote {
- auth = psk
- id = h5
- }
- children {
- h2h {
- updown = /usr/libexec/ipsec/_updown iptables
- local_ts = 192.168.13.0/24
- remote_ts = 192.168.25.0/24
- rekey_time = 5400
- rekey_bytes = 500000000
- rekey_packets = 1000000
- esp_proposals = aes128gcm128-x25519
- }
- }
- version = 2
- mobike = no
- reauth_time = 10800
- proposals = aes128-sha256-x25519
- }
- }
-
- secrets {
- ike-h2h {
- id = h3
- secret = simplepsk
- }
- }

4.2. H5配置
打开${CONF_PREFIX}/swanctl/conf.d/h5.conf。需要使用你自己的地址。文件名不重要。
- connections {
- h2h {
- local_addrs = 192.168.45.5
- remote_addrs = 192.168.34.3
-
- local {
- auth = psk
- id = h5
- }
- remote {
- auth = psk
- id = h3
- }
- children {
- h2h {
- updown = /usr/libexec/ipsec/_updown iptables
- local_ts = 192.168.25.0/24
- remote_ts = 192.168.13.0/24
- rekey_time = 5400
- rekey_bytes = 500000000
- rekey_packets = 1000000
- esp_proposals = aes128gcm128-x25519
- }
- }
- version = 2
- mobike = no
- reauth_time = 10800
- proposals = aes128-sha256-x25519
- }
- }
-
- secrets {
- ike-h2h {
- id = h5
- secret = simplepsk
- }
- }

4.3. 说明
h2h是连接的名字,启动协商的时候需要使用到。
secrets 下是用于认证的密钥信息,本实验中使用 PSK,预共享方式。auth也要设置为psk
id就是标识,随便起,不冲突能够标识就行(当然要自己能看懂、有意义啊)
如果不配置local_ts和remote_ts字段,则对所有的ip报文加解密。如果指定上述字段,则是对指定的数据流进行加密。设置这个注意是成对的,两个配置是相反的。否则可能会报错:“Traffic Selectors Unacceptable”。不设置的情形没有测试。
5. 测试
5.1. 在H3和H5开启ipsec
- # H3 和 H5
- ## 开启ipsec
- $ sudo ipsec start
- $ sudo ipsec status
- Security Associations (0 up, 0 connecting):
- none
-
- # 启动strongswan的后台(这里后面应该是需要的,还是起来吧)
- $ sudo systemctl restart strongswan.service
- $ sudo systemctl status strongswan.service
- ● strongswan.service - strongSwan IPsec IKEv1/IKEv2 daemon using swanctl
- Loaded: loaded (/lib/systemd/system/strongswan.service; disabled; vendor preset: enabled)
- Active: active (running) since Fri 2023-08-04 15:44:01 CST; 9min ago
- Process: 12141 ExecStartPost=/usr/sbin/swanctl --load-all --noprompt (code=exited, status=0/SUCCESS)
- Main PID: 12122 (charon-systemd)
- Status: "charon-systemd running, strongSwan 5.9.6, Linux 5.15.0-78-generic, x86_64"
- Tasks: 19 (limit: 18943)
- Memory: 2.8M
- CGroup: /system.slice/strongswan.service
- └─12122 /usr/sbin/charon-systemd
-
-
- ## 加载conf文件
- $ sudo swanctl --load-all
- loaded ike secret 'ike-h2h'
- no authorities found, 0 unloaded
- no pools found, 0 unloaded
- loaded connection 'h2h'
- successfully loaded 1 connections, 0 unloaded
-
-
- # H3和H5有一个开启就行了
- $ sudo ipsec up h2h
- initiating IKE_SA h2h[2] to 192.168.45.5
- generating IKE_SA_INIT request 0 [ SA KE No N(NATD_S_IP) N(NATD_D_IP) N(FRAG_SUP) N(HASH_ALG) N(REDIR_SUP) ]
- sending packet: from 192.168.34.3[500] to 192.168.45.5[500] (240 bytes)
- received packet: from 192.168.45.5[500] to 192.168.34.3[500] (248 bytes)
- parsed IKE_SA_INIT response 0 [ SA KE No N(NATD_S_IP) N(NATD_D_IP) N(FRAG_SUP) N(HASH_ALG) N(CHDLESS_SUP) N(MULT_AUTH) ]
- selected proposal: IKE:AES_CBC_128/HMAC_SHA2_256_128/PRF_HMAC_SHA2_256/CURVE_25519
- authentication of 'h3' (myself) with pre-shared key
- establishing CHILD_SA h2h{4}
- generating IKE_AUTH request 1 [ IDi N(INIT_CONTACT) IDr AUTH SA TSi TSr N(MULT_AUTH) N(EAP_ONLY) N(MSG_ID_SYN_SUP) ]
- sending packet: from 192.168.34.3[500] to 192.168.45.5[500] (256 bytes)
- received packet: from 192.168.45.5[500] to 192.168.34.3[500] (208 bytes)
- parsed IKE_AUTH response 1 [ IDr AUTH SA TSi TSr ]
- authentication of 'h5' with pre-shared key successful
- IKE_SA h2h[2] established between 192.168.34.3[h3]...192.168.45.5[h5]
- scheduling reauthentication in 10331s
- maximum IKE_SA lifetime 11411s
- selected proposal: ESP:AES_GCM_16_128/NO_EXT_SEQ
- CHILD_SA h2h{4} established with SPIs c3d933bf_i cb582e19_o and TS 192.168.13.0/24 === 192.168.25.0/24
- connection 'h2h' established successfully
-
- # 查看ipsec状态
- $ sudo ipsec status
- Security Associations (1 up, 0 connecting):
- h2h[2]: ESTABLISHED 82 seconds ago, 192.168.34.3[h3]...192.168.45.5[h5]
- h2h{4}: INSTALLED, TUNNEL, reqid 1, ESP SPIs: c3d933bf_i cb582e19_o
- h2h{4}: 192.168.13.0/24 === 192.168.25.0/24

5.2. 在H1 ping H2
ping 192.168.25.2 -I 192.168.13.1
5.3. 在H4抓包
查看H4抓包,可以看到抓的包已经经过了ESP的处理,且使用的是隧道的地址。
- $ sudo tcpdump -nvvv -i any esp -xxx
- tcpdump: listening on any, link-type LINUX_SLL (Linux cooked v1), capture size 262144 bytes
- 15:01:06.860259 IP (tos 0x0, ttl 64, id 0, offset 0, flags [DF], proto ESP (50), length 140)
- 192.168.34.3 > 192.168.45.5: ESP(spi=0xcb582e19,seq=0x86f), length 120
- 0x0000: 0000 0001 0006 a036 9f10 4702 0000 0800
- 0x0010: 4500 008c 0000 4000 4032 69e7 c0a8 2203
- 0x0020: c0a8 2d05 cb58 2e19 0000 086f 8e3b a3f7
- 0x0030: 4220 aae0 cde9 d6d3 53c8 b01e d5a1 2695
- 0x0040: 832b e2bb 44ad bc81 5819 42dc 3295 14c2
- 0x0050: bfc8 e2e5 7ddb 257d 1481 a1f6 442d 0347
- 0x0060: 10c0 c308 adba d2f2 dc8e 8f22 478b 636d
- 0x0070: 26df c54b 612c 948a 8883 df8b fc76 d72d
- 0x0080: 8398 f606 c57c 975b 0e8a 352a 1a8c 4b8f
- 0x0090: e776 7d6b 07f9 bb3f fb95 3041
- 15:01:06.860264 IP (tos 0x0, ttl 63, id 0, offset 0, flags [DF], proto ESP (50), length 140)
- 192.168.34.3 > 192.168.45.5: ESP(spi=0xcb582e19,seq=0x86f), length 120
- 0x0000: 0004 0001 0006 a036 9f10 32ba 0000 0800
- 0x0010: 4500 008c 0000 4000 3f32 6ae7 c0a8 2203
- 0x0020: c0a8 2d05 cb58 2e19 0000 086f 8e3b a3f7
- 0x0030: 4220 aae0 cde9 d6d3 53c8 b01e d5a1 2695
- 0x0040: 832b e2bb 44ad bc81 5819 42dc 3295 14c2
- 0x0050: bfc8 e2e5 7ddb 257d 1481 a1f6 442d 0347
- 0x0060: 10c0 c308 adba d2f2 dc8e 8f22 478b 636d
- 0x0070: 26df c54b 612c 948a 8883 df8b fc76 d72d
- 0x0080: 8398 f606 c57c 975b 0e8a 352a 1a8c 4b8f
- 0x0090: e776 7d6b 07f9 bb3f fb95 3041

6. 问题记录
使用swanctl --load-all,有时候无法连接上,即便使用了ipsec start也不行,会显示
- connecting to 'unix:///var/run/charon.ctl' failed: Connection refused
- failed to connect to stroke socket 'unix"//var/run/charon.ctl'
具体原因不知道,怎么解决也不知道。
可以使用下面的这个命令,
$ sudo /usr/libexec/ipsec/charon
但是这个命令启动之后,可能还是无法解决问题,查看journalctl -xe会找到
charon too long to start... - kill kill
这个时候就只能等着了,等过一会儿它自己就好了。怀疑是我配置有问题,但是不知道到底哪里有问题。所以每次修改了配置重启都很痛苦。
最后排查发现,可能就是差了一个sudo systemctl restart strongswan.service,所以还是把这个服务给启动吧,然后上述解决步骤应该就不需要了。
以上原文: https://blog.51cto.com/basilguo/6963463
/# 直接下载 可能木有~~
试试能不能从 pool/universe/s/strongswan/ 下载 就不用编译了~http://ftp.sjtu.edu.cn/ubuntu/pool/universe/s/strongswan/
原版的命令安装
直接yum 和apt也可
/# 编译
[有点恶心啊 编译报错] <编译带国密版本-- 关闭也不行 > ===但是我 docker 18.04 没有问题~~ 桌面版本报的这个错~~
../../libtool: eval: line 7963: unexpected EOF while looking for matching `"'
../../libtool: eval: line 7964: syntax error: unexpected end of file
Makefile:1744: recipe for target 'libstrongswan.la' failed
make[5]: *** [libstrongswan.la] Error 2
make[5]: Leaving directory '/media/root/Disk21/strongswan-master/src/libstrongswan'
Makefile:2057: recipe for target 'install-recursive' failed
make[4]: *** [install-recursive] Error 1
make[4]: Leaving directory '/media/root/Disk21/strongswan-master/src/libstrongswan'
Makefile:2214: recipe for target 'install' failed
make[3]: *** [install] Error 2
make[3]: Leaving directory '/media/root/Disk21/strongswan-master/src/libstrongswan'
Makefile:536: recipe for target 'install-recursive' failed
make[2]: *** [install-recursive] Error 1
make[2]: Leaving directory '/media/root/Disk21/strongswan-master/src'
Makefile:593: recipe for target 'install-recursive' failed
make[1]: *** [install-recursive] Error 1
make[1]: Leaving directory '/media/root/Disk21/strongswan-master'
Makefile:890: recipe for target 'install' failed
make: *** [install] Error 2
//# x86编译, 按代码里的指南~~ 已完成
//# arm 交叉编译, 有一丢丢不一样~~ 已完成
//# 带国密版本的代码库
https://github.com/zhangke5959/strongswan
https://github.com/highland0971/strongswan-gmalg-merge
感谢大佬的代码
//# 配置可是太烦了
参考1 https://help.aliyun.com/zh/vpn/configure-strongswan?utm_content=g_1000230851
//# 关于使用 ( 我主要是在arm中 ,所以总结的问也是arm中的 )
命令:
charon ( ipsec start看不出个对错 , 所以用这个起看下 )
应该这俩个导致启动失败, 其实都是一个原因arm没tun, 但一般内核是有的就是没开启 需要重新编译一下了, 每个平台不一样 ,所以自己搞吧 <最后更新了系统内核okay了, strongswan正常启动了>
//1 ( 建个文件去就行,不过正常应该自己能生成啊 不用手动建,建完了 后面还是报错 )
00[LIB] failed to open /dev/net/tun: No such file or directory
00[KNL] failed to create TUN device//2 ( 系统里没tun的问题上面也是~~ )
00[LIB] failed to configure TUN device: Inappropriate ioctl for device
00[KNL] failed to create TUN device
ipsec start
之前都用这个命令
ipsec status
成功 :
Security Associations (0 up, 0 connecting):
none
不成功 : 无返回
swanctl --load-all
没启动成功时:
connecting to 'unix:///var/run/charon.vici' failed: Connection refused
Error: connecting to 'default' URI failed: Connection refused
ipsec up xxx
[ 背景是自己连自己测试 ] < 错误细节看 var/log/syslog >
错误1:
控制台
received NO_PROPOSAL_CHOSEN notify, no CHILD_SA built
failed to establish CHILD_SA, keeping IKE_SA
log
[ESP] xxxxx
看出算法不对
解决
秘钥协商不对 , 好纳闷 不明觉厉 修改配置( proposals 都删了 想使用默认也不行 ) 换个算法 , 用3des吧 果然这个问题过了
esp_proposals =3des-sha1
proposals =3des-sha1-modp1536
或
esp_proposals =aes128-sha1
proposals = aes128-sha256-modp3072,aes128-sha1-modp2048
再或 这俩结合
错误2:
控制台
failed to install SAD entry: already installed
failed to install SAD entry: already installed
unable to install inbound and outbound IPsec SA (SAD) in kernel
failed to establish CHILD_SA, keeping IKE_SA
parsed INFORMATIONAL response 2 [ D ]
log
[ESP] error: IPsec SA is not inbound
[ESP] failed to install SAD entry: already installed
[IKE] unable to install inbound and outbound IPsec SA (SAD) in kernel
[IKE] failed to establish CHILD_SA, keeping IKE_SA
但是 ipsec statusall 看着好像成功了, 看来1台机器有点费劲 <好像就不能这样啊,1台自己连自己>
Connections:
h2h: 192.168.0.232...192.168.0.232 IKEv2
h2h: local: uses pre-shared key authentication
h2h: remote: uses pre-shared key authentication
h2h: child: 192.168.0.0/24 === 192.168.0.0/24 TUNNEL
Security Associations (2 up, 0 connecting):
xxxx 省略
两台机器的测试 - 连接是成了
看是否真用到了ipsec传输哈 - 用 tcpdump -i ipsec0 看下能接收到数据就是连通
错误1: ssh崩了 关了ipsec ssh恢复~~ 不知道哪里配置错误 <因为我俩个ip一个网段下的 一个 0.1 一个0.2>[ 这个太恶心了 只有在arm时这样, linux时可以正常 ]
错误2: 错误描述: 用strongswan建立ipsec连通后,互Ping内网地址不通
[ 原因 应该还是路由没配好 影响了 所有流量都加密所以不行,应该是配置错误 ]
---- linux 成功,带国密, ssh正常
国密国际密码都可以一个版本都可以跑
用ping测试 ( 两边都通正确, 配置错误时ping不通但另一边也可收到 )
tcpdump -i ipsec0 虚拟网卡看未加密数据, 连接成功
tcpdump -i enp6s18 port 4500 主网卡看加密数据, 证明真的通了 (主网卡的名都变了)
注意1: 一定要给虚拟网卡设置ip 和加路由 ,在启动后,up前
也可以在/opt/ss-gmalg/libexec/ipsec/_updown (脚本文件)中加 , 要是不会 就手动吧~ 只不过重启ipsec就没了~
ifconfig ipsec0 172.16.0.2 netmask 255.255.255.0 或 ip addr add 172.16.0.1/24 dev ipsec0
ip r a 172.16.0.1 dev ipsec0 ( 经测试应该没用 ,否则iptables save应该有东西)
注意2:
虚拟ip的网段哦~
local_ts = 192.168.25.0/24
remote_ts = 192.168.13.0/24
---- arm 不带国密正常,ssh也不影响拉,带国密的待研究
国密报错: load插件时 并没有gmalg
日志 configured DH group CURVE_SM2 not supported
最后通过配置修改,可以了 但是国密能用国际密就不行了(暂时俩种分开编译使用),插件显示有,但好多算法用不了
--- 说到这里来个算法汇总描述
- encryption: AES_CBC[aes] AES_ECB[aes] 3DES_CBC[des] DES_CBC[des] DES_ECB[des] RC2_CBC[rc2] CAMELLIA_CBC[openssl]
- CAST_CBC[openssl] BLOWFISH_CBC[openssl] NULL[openssl]
- integrity: HMAC_MD5_96[openssl] HMAC_MD5_128[openssl] HMAC_SHA1_96[openssl] HMAC_SHA1_128[openssl]
- HMAC_SHA1_160[openssl] HMAC_SHA2_256_128[openssl] HMAC_SHA2_256_256[openssl] HMAC_SHA2_384_192[openssl]
- HMAC_SHA2_384_384[openssl] HMAC_SHA2_512_256[openssl] HMAC_SHA2_512_512[openssl] CAMELLIA_XCBC_96[xcbc]
- AES_XCBC_96[xcbc] AES_CMAC_96[cmac]
- aead: AES_GCM_16[openssl] AES_GCM_12[openssl] AES_GCM_8[openssl] CHACHA20_POLY1305[openssl]
- hasher: HASH_SHA1[sha1] HASH_MD5[md5] HASH_SHA2_224[sha2] HASH_SHA2_256[sha2] HASH_SHA2_384[sha2]
- HASH_SHA2_512[sha2] HASH_MD4[md4] HASH_SHA3_224[openssl] HASH_SHA3_256[openssl] HASH_SHA3_384[openssl]
- HASH_SHA3_512[openssl] HASH_IDENTITY[openssl]
- prf: PRF_KEYED_SHA1[sha1] PRF_HMAC_MD5[openssl] PRF_HMAC_SHA1[openssl] PRF_HMAC_SHA2_256[openssl]
- PRF_HMAC_SHA2_384[openssl] PRF_HMAC_SHA2_512[openssl] PRF_FIPS_SHA1_160[fips-prf] PRF_AES128_XCBC[xcbc]
- PRF_CAMELLIA128_XCBC[xcbc] PRF_AES128_CMAC[cmac]
- xof: XOF_MGF1_SHA1[mgf1] XOF_MGF1_SHA224[mgf1] XOF_MGF1_SHA256[mgf1] XOF_MGF1_SHA384[mgf1]
- XOF_MGF1_SHA512[mgf1] XOF_SHAKE128[openssl] XOF_SHAKE256[openssl]
- drbg: DRBG_CTR_AES128[drbg] DRBG_CTR_AES192[drbg] DRBG_CTR_AES256[drbg] DRBG_HMAC_SHA1[drbg]
- DRBG_HMAC_SHA256[drbg] DRBG_HMAC_SHA384[drbg] DRBG_HMAC_SHA512[drbg]
- dh-group: ECP_256[openssl] ECP_384[openssl] ECP_521[openssl] ECP_224[openssl] ECP_192[openssl] ECP_256_BP[openssl]
- ECP_384_BP[openssl] ECP_512_BP[openssl] ECP_224_BP[openssl] MODP_3072[openssl] MODP_4096[openssl]
- MODP_6144[openssl] MODP_8192[openssl] MODP_2048[openssl] MODP_2048_224[openssl] MODP_2048_256[openssl]
- MODP_1536[openssl] MODP_1024[openssl] MODP_1024_160[openssl] MODP_768[openssl] MODP_CUSTOM[openssl]
- CURVE_25519[openssl] CURVE_448[openssl]

ifconfig
看看链接成功了吗 , 成功 rx tx 都有数据哦~~
//# 使用模式
直接下载命令安装的 应该是不带tun的 用内核态的xfm的 ,自己编译的话国密版本的 应该是默认带了--enable-libipsec 这个就是用了tun 但性能肯定不如xfm哈~
//# 单片机上的vpn
顺便问一下单片机上的ipsec还有wireguard有人搞过吗?
======
-------
Taobao 天皓智联 whaosoft aiot
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。