运行naive客户端失败用户名和密码有 逗号
Ngwind opened this issue · 12 comments
现象:
运行客户端打印"Illegal instruction"后退出了, 相同的config.json配置文件,在debian12 x64系统中可以正常运行。
系统信息:
root@OpenWrt:~# cat /etc/os-release
NAME="OpenWrt"
VERSION="23.05.4"
ID="openwrt"
ID_LIKE="lede openwrt"
PRETTY_NAME="OpenWrt 23.05.4"
VERSION_ID="23.05.4"
HOME_URL="https://openwrt.org/"
BUG_URL="https://bugs.openwrt.org/"
SUPPORT_URL="https://forum.openwrt.org/"
BUILD_ID="r24012-d8dd03c46f"
OPENWRT_BOARD="bcm27xx/bcm2711"
OPENWRT_ARCH="aarch64_cortex-a72"
OPENWRT_TAINTS=""
OPENWRT_DEVICE_MANUFACTURER="OpenWrt"
OPENWRT_DEVICE_MANUFACTURER_URL="https://openwrt.org/"
OPENWRT_DEVICE_PRODUCT="Generic"
OPENWRT_DEVICE_REVISION="v0"
OPENWRT_RELEASE="OpenWrt 23.05.4 r24012-d8dd03c46f"
(从release页面下载的)naive二进制版本:
naiveproxy-v123.0.6312.40-1-openwrt-aarch64_cortex-a72-static
naiveproxy-v128.0.6613.40-1-openwrt-aarch64_cortex-a72-static
naiveproxy-v128.0.6613.40-1-openwrt-aarch64_cortex-a72
客户端config.json配置文件:
{
"listen": "socks://127.0.0.1:1082",
"proxy": "https://******:******@***.***.top:443",
"log": "./naive.log"
}
请问是什么原因呢?有没有进一步排查的手动和建议? 谢谢!
用gdb看一下哪个instruction是illegal,来判断是否有指令集不匹配的情况
根据 https://openwrt.org/toh/raspberry_pi_foundation/raspberry_pi wiki 上最接近4b的openwrt 目标应该是 bcm27xx/bcm2711,你也许可以试试 arm_arm1176jzf-s_vfp (bcm27xx/bcm2708) 而不是cortex a72
在openwrt-mips32el和ubuntu-x64,v126.0.6478.40-2版本以及以后的版本会有Illegal instruction提示。windows也是v126.0.6478.40-2版本以及以后的版本会自动退出,之前的版本都是正常的。
openwrt-mips32el和ubuntu-x64
无法重现,需要coredump
openwrt-mips32el和ubuntu-x64
无法重现,需要coredump
我自己分析了coredump,终于找到原因了,原因是因为用户名和密码有 逗号 和 点 。用户名、密码使用逗号和点在v126.0.6478.40-2之前是可以的,v126.0.6478.40-2之后就会提示Illegal instruction