梅林固件frpc进程未运行的解决办法
事情是这样的
家里有个网件的R6400不用了,就拿回老家给老父母用了。就想着搞个远程,有时候能看看家里的网络具体使用情况。反正自己的阿里云服务器跑着frps,索性直接用frpc穿透好了。
梅林的软件中心有frpc的插件,但是配置好后总是显示进程未运行。

折腾了好久,感觉是这个插件有问题。后来想想干脆直接去frp官网下载命令行版的吧。
因为我这个梅林固件比较老,就没有下载最新版的frpc,我选择了0.30版。
先运行命令查看自己的路由器架构。
uname -a

然后在frp官网,进去后选择tags,下载对应架构的版本。



下载后放在路由器 /jffs 目录下,且记一定是/jffs目录,因为路由器使用的是临时文件系统 (tmpfs),它在每次重启时都会被清空,而只有/jffs 目录是一个持久的存储位置。

然后运行命令解压
tar -xzvf frp-0.30.tar.gz
解压完 cd 对应目录后,因为我们这个只需要客户端,把对应目录下frps删除
rm -rf frps*
然后ls会显示以下文件

接下来编辑frpc.ini配置文件
vi frpc.ini

我这里配置了远程http访问和ssh
这个 frpc 配置文件包含了三个主要部分:[common]、[web] 和 [ssh]。
[common] 部分包含了 frpc 的一般配置信息,其中指定了 frps 服务器的地址、端口以及连接所需的 token。此外,它还设置了日志级别、日志文件路径等信息。
[web] 部分定义了一个名为 web 的服务类型,使用 HTTP 协议。它将本地端口 80 映射到一个名为xxx.yyy.com 的自定义域名上。当访问 xxx.yyy.com 时,流量将被转发到本地的端口 80。
[ssh] 部分定义了一个名为 ssh 的服务类型,使用 TCP 协议。它将本地的 192.168.50.1 的端口 22 映射到远程服务器的端口 5500。当远程服务器收到连接到指定端口 5500 的请求时,会转发到路由器的端口 22。
http配置的custom_domains= xxx.yyy.com
其中yyy.com为frps服务器绑定的域名。xxx为访问该路由的子域名。
这样远程有访问时只需要输入xxx.yyy.com:7880
7880的为frps服务端配置vhostHTTPPort所对应的端口号。
配置好后,可在当前文件夹下运行试试
./frpc -c ./frpc.ini
运行后就可以用xxx.yyy.com:7880访问路由器管理界面了。
但是退出终端后,服务会停止,我们需要将该客户端运行加入到开机脚本中。
要将 frpc 添加到梅林固件的开机启动中,你可以使用以下步骤:
创建启动脚本:在路由器上创建一个启动脚本,比如 /jffs/scripts/frpc_startup.sh。
#!/bin/sh
#Change directory to where frpc is located
#cd /path_to_frpc_directory
cd /jffs/frp_0.30.0_linux_arm
# Start frpc in the background
nohup ./frpc -c ./frpc.ini > /dev/null 2>&1 &
确保将 /path_to_frpc_directory 替换为 frpc 可执行文件的实际路径。
设置脚本权限:使用 chmod 命令为脚本添加执行权限:
chmod +x /jffs/scripts/frpc_startup.sh
然后运行命令
sh /jffs/scripts/frpc_startup.sh
如果运行成功没有报错,说明脚本没有问题。
接下来编辑启动脚本:在 /jffs/scripts/post-mount 文件的最下方,添加以下内容:
/jffs/scripts/frpc_startup.sh &
这将在路由器启动时执行 frpc 启动脚本。
保存并重启路由器:保存对 /jffs/scripts/post-mount 文件的更改,并重新启动路由器,以便使更改生效。
完成后,frpc 将在路由器启动时作为服务运行。
效果如图:

作者声明本文无利益相关,欢迎值友理性交流,和谐讨论~

值友8364502195
校验提示文案
A2100
校验提示文案
值友8364502195
校验提示文案
A2100
校验提示文案