事情是这样. 我正在用我的一台老华为mate10做服务器, 里面运行了Nginx, springboot jar包, tomcat, 都挺稳定的. 但就是用的花生壳内网穿透app它每隔几天都会掉线一次, 掉线了又不会自动重连. 所以我就想把花生壳装在linux里面, 一个app全部搞定, 而且会更稳定些. 然后我上网看了花生壳的下载地址, linux版本的没有arm64架构的, 但是他有个树莓派版本是arm64架构的. 然后我下载了deb包, 安装也成功了, 运行时也提示成功了, 但进程里却找不到, 这下问题来了.....
进程找不到我首先是输入状态命令, phddns status, 然后发现它的sn码是空的! 这时我不知道是什么奇怪的原因, 我已经在aid linux 上踩了太多奇怪的坑, 我就想能不能把我笔记本上的花生壳sn码复制过来. 然后我先通过打开phddns bash命令找到配置目录, 把配置文件都迁移过来了, 但还是不能启动. 然后我找到phddns后面的phtunnel服务, 查到了help信息和日志, 然后我参数全部加好了发现一直卡在get info这里.
然后我拿出笔记本运行正常的日志作对比, 这下可以确定是什么原因了,如下图
aid linux 它的网卡没有没有mac地址! 而且复制过去的JSON配置文件里命名有token它还是要自己获取mac再生成...... 搞不懂这网卡是桥接还是nat手机的. 再研究下去有两条路, 一是反编译phtunnel, 看能不能让它指定token. 二是给网卡指定个mac地址, 我试了github 的macchanger, make时发现它是需要先获取mac才能改mac的. 放弃了, 可能其他内网穿透有域名服务而且可以不用mac地址? 也许我是试用版, 花生壳故意让我掉线? 会想起来掉线时域名访问不了, 但手机的花生壳还在运行, 显示是服务器异常, 但为什么没有自动重连啊? 也许我得试一下99一年的青春版.