环境
一、有公网IP、nas主机(需要穿透里面的服务)、安卓手机、frps-0.58.1、frpc-0.59.0(群晖NAS套件)、安卓版frpc-0.56.0,路由器frpc-0.27 和 frpc-0.58.1
二、两端frpc必须要有一端nat网络类型不是非对称nat
开始
有公网的主机上配置frps.toml
bindPort = 7000
nas主机端frpc.toml配置
serverAddr = "x.x.x.x"
serverPort = 7000
# 如果默认的 STUN 服务器不可用,可以配置一个新的 STUN 服务器
# natHoleStunServer = "xxx"
[[proxies]]
name = "p2p_ssh"
type = "xtcp"
# 只有共享密钥 (secretKey) 与服务器端一致的用户才能访问该服务
secretKey = "abcdefg"
localIP = "127.0.0.1"
localPort = 22
安卓端frpc
serverAddr = "x.x.x.x"
serverPort = 7000
# 如果默认的 STUN 服务器不可用,可以配置一个新的 STUN 服务器
# natHoleStunServer = "xxx"
[[visitors]]
name = "p2p_ssh_visitor"
type = "xtcp"
# 要访问的 P2P 代理的名称
serverName = "p2p_ssh"
secretKey = "abcdefg"
# 绑定本地端口以访问 SSH 服务
bindAddr = "127.0.0.1"
bindPort = 6000
# 如果需要自动保持隧道打开,将其设置为 true
# keepTunnelOpen = false
所有服务启动后,且日志提示成功,安卓手机访问127.0.0.1:6000,这个时候再去看安卓frpc日志会提示STUN服务器查询失败,下面是奇葩的解决方法
打开手机热点,对你没看错,就是打开手机热点,其余啥也不用操作,然后再去访问正常就可以了,我也不知道这是啥情况,还望知道的大佬科普一下
问题2:又遇到一个问题,将frpc部署到路由器上出现xtcp无法使用问题,放回nas上正常。后面刷了路由器固件nas上的xtcp也无法连接了,后面还原固件版本恢复。这样看来和路由器也是有关系的
由于环境限制,教程比较粗糙,后期有时间会再细化