本帖最后由 madrays 于 2024-10-14 01:30 编辑
🌎️前言
前文介绍了lucky实现IPv6内网穿透的方法,但是受限于访问端IPv6无法保证的问题,例如公司网络未开启IPv6,那么lucky的IPv6穿透是无法访问的,这时候我们就需要使用 Frp 之类的内网穿透软件来实现在无IPv6的情况下实现外网访问,本次就介绍一下frp内网穿透的方法,注意此方法需要有一台有固定公网ip的云服务器,部署分为服务端frps和客户端frpc,我们需要在云服务器上部署frps,在飞牛上部署frpc。🏜️Frps部署
首先我们在云服务根目录下创建一个docker文件夹,其中创建一个frp文件夹,接着再在其中新建两个文件,分别命名为docker-compose.yml和frps.toml,有1panel之类的话直接创建,没有的话可以使用下面的命令。
- <blockquote># 创建 docker 文件夹
复制代码
🛑docker-compose.yml配置
修改docker-compose.yml中的内容如下:
- version: '3.3'
- services:
- frps:
- restart: always
- network_mode: host
- volumes:
- - '/docker/frps/frps.toml:/etc/frp/frps.toml'
- container_name: frps
- image: snowdreamtech/frps:0.60
复制代码
🛑frps.toml配置
- bindAddr = "0.0.0.0"
- bindPort = 7000
- auth.method = "token"
- auth.token = "password"
- webServer.addr = "0.0.0.0"
- webServer.port = 7100
- webServer.user = "username"
- webServer.password = "password"
复制代码 上面的7000是服务端口,用于frps和frpc的通讯,7100是webui端口,token默认即可,password、username自行修改。
🛑启动frps
使用docker-compose up -d命令启动容器:
- cd /docker/frps
- docker-compose up -d
复制代码 尝试访问云服务器ip:7100访问frps的webui,登陆成功即可。
🏜️Frpc部署
文件管理器中找到你设置的docker所在存储空间中的appshare文件夹,这个就是应用文件,新建一个frpc文件夹,接着在frpc文件夹中新建两个文件,分别命名为docker-compose.yml和frpc.toml。
🛑docker-compose.yml配置
修改docker-compose.yml中的内容如下:
- version: '3.3'
- services:
- frpc:
- restart: always
- network_mode: host
- volumes:
- - '/vol1/@appshare/frp/frpc.toml:/etc/frp/frpc.toml'
- container_name: frpc
- image: snowdreamtech/frpc:0.60
复制代码
🛑frpc.toml配置
- serverAddr = "云服务器ip"
- serverPort = 7000
- log.to = "console"
- log.level = "trace"
- log.maxDays = 3
- log.disablePrintColor = true
- auth.method = "token"
- auth.token = "password"
- [[proxies]]
- name = "sunpanel"
- type = "tcp"
- localIP = "127.0.0.1"
- localPort = 3002
- remotePort = 3003
- [[proxies]]
- name = "项目X"
- type = "tcp"
- localIP = "127.0.0.1"
- localPort = xxx
- remotePort = xxx
复制代码
上面的7000是服务端口,用于frps和frpc的通讯,7100是webui端口,token保持默认,password、username自行修改,注意auth.token变量需要和frps配置中的变量保持一致。
🛑启动frpc
使用docker-compose up -d命令启动容器:
- cd /vol1/@appshare/frpc
- docker-compose up -d
复制代码
🛩️如果部署成功,访问服务器ip:3002即可访问到飞牛中部署的sunpanel服务了。
🏜️题外话:反向代理实现域名+Https访问
这一步需要拥有域名,国内服务器需要备案,境外服务器暂无备案限制,这个我就不多说了,有兴趣的评论区讨论吧,云服务使用宝塔、1panel等可以很方便的实现,当然使用lucky也是可以的哈哈。
🏜️题外话2:没有云服务器怎么办
这种情况解决办法当然还是有的,比方说飞牛自带的穿透,或者樱花Frp(需要1块钱认证实名)这些公共Frp,效果肯定是没有自建frp服务器好的,但是应急用用还是可以的。
目前我采用的方案就是:
优先:lucky的ipv6穿透----适用于大部分场景,公司电脑有ipv6,手机4/5G有ipv6
备用:云服务器自建的frp穿透----适用于小部分没有ipv6的场景,例如我公司wifi没有ipv6
容灾:樱花frp穿透----适用于都崩了的场景,其实没咋用过,聊胜于无留着备用了
大家对什么项目感兴趣可以留言,写写喂奶级帮新同学们指路哈
|