树莓派OS 12上Libreswan连接PfSense时出现“interface endpoint不匹配left/right”错误求助
树莓派OS 12上Libreswan连接PfSense时出现“interface endpoint不匹配left/right”错误求助
你好,我看了你遇到的问题——在树莓派OS 12上用Libreswan搭建IPSec隧道连接PfSense时,反复弹出interface endpoint [x.x.x.x]:500/4500 does not match left(THIS) or right (THAT)的错误提示,而几乎相同的配置(启用注释掉的部分)在EdgeRouter ER-X上却能正常跑通,确实挺闹心的。我帮你梳理下问题根源和具体的解决步骤:
先明确你的配置信息
树莓端Libreswan配置(/etc/ipsec.conf)
config setup conn %default #keyexchange=ikev1 conn peer-ipsec.xxx.de-tunnel-1 left=%any leftid="xx.zapto.org" right=ipsec.xx.de rightid="%any" leftsubnet=10.130.117.0/24 rightsubnet=10.128.0.0/16 ike=aes128-sha256-modp2048 #,aes128-sha256-modp2048! #keyexchange=ikev2 reauth=no ikelifetime=28800s esp=aes128-sha256-modp2048 #,aes128-sha256-modp2048! keylife=3600s rekeymargin=540s type=tunnel compress=no authby=secret auto=route keyingtries=%forever
PfSense端配置要点
- 密钥交换版本:IKEv2
- 协议:IPv4
- 远程网关:xx.zapto.org
- 认证方式:Mutual PSK
- 本地标识符:我的IP地址(即PfSense的公网IP对应域名
ipsec.xx.de) - 对等体标识符:FQDN
xx.zapto.org - 阶段1加密:AES 128 bit + SHA256 + DH Group14
- 阶段2:本地网络
10.128.0.0/16,远程网络10.130.117.0/24,ESP协议,加密套件AES128/SHA256/PFS Group14
问题根源分析
出现interface endpoint不匹配的核心原因有两个:
- IKE版本不匹配:你当前的Libreswan配置注释掉了
keyexchange=ikev2,默认可能 fallback 到IKEv1,但PfSense明确配置的是IKEv2,协商自然失败; - 标识符配置不对:你设置的
rightid="%any"过于宽松,而PfSense的本地标识符是它自己的IP/域名,Libreswan无法匹配到正确的对等体,因此报错。
具体解决步骤
1. 强制启用IKEv2匹配PfSense
把conn %default里的注释去掉,明确指定使用IKEv2:
conn %default keyexchange=ikev2 # 取消注释,强制使用IKEv2,和PfSense保持一致
或者你也可以把这行直接写在peer-ipsec.xxx.de-tunnel-1连接块里,效果是一样的。
2. 修正rightid配置
把rightid="%any"改成PfSense的域名或者公网IP,和它的本地标识符对应:
rightid="ipsec.xx.de" # 替换原来的%any,精准匹配PfSense的本地标识符
3. 固化加密套件(可选但推荐)
你注释掉的!后缀是强制使用指定加密套件,避免协商时出现兼容问题,既然Libreswan支持,建议启用:
ike=aes128-sha256-modp2048! esp=aes128-sha256-modp2048!
这样能确保和PfSense的加密配置完全对齐,减少不必要的协商错误。
4. 重启服务并验证
修改完配置后,重启Libreswan服务:
sudo systemctl restart ipsec
然后查看连接状态:
sudo ipsec status
如果还是有问题,可以实时查看日志排查细节:
sudo journalctl -u ipsec -f
为什么EdgeRouter能正常工作?
EdgeRouter的IPSec实现(基于strongSwan或Vyatta定制版)对配置的兼容性更宽松,即使没有明确指定部分参数,也能自动协商匹配到正确的版本和标识符;但Libreswan在树莓派OS 12上的版本对配置的严谨性要求更高,必须明确写出匹配的参数才能正常建立隧道。
备注:内容来源于stack exchange,提问作者LeifSec
相关产品推荐
相关产品推荐

