前言
通常我们在外边,想访问内网的终端设备,比如在家的电脑,树莓派等设备,但是我们是无法直接连接到这些设备的,因为这些设备都是内网设备。
想要连接就需要NAT(Network Address Translation,网络地址转换)。想要实现这一个功能,可以有许多方法,比如说frp、花生壳、ssh等实现。
这篇文章介绍一下用frp实现内网穿透。想要实现这功能,需要有一个有公网IP的服务器。
步骤
frp官网介绍
frp 是一个可用于内网穿透的高性能的反向代理应用,支持 tcp, udp 协议,为 http 和 https 应用协议提供了额外的能力,且尝试性支持了点对点穿透。
1 安装
我们可以在frp的github上下载release包
目前最新版本是0.33.0,本次测试环境,阿里云服务器需要下载frp_0.33.0_linux_amd64.tar.gz,客户端我们用树莓派测试,需要下载frp_0.33.0_linux_arm.tar.gz。然后分别上传到服务器和树莓派。

2 服务端配置
# 解压
$ tar -xzvf frp_0.33.0_linux_amd64.tar.gz
# 进入目录
$ cd frp_0.33.0_linux_amd64/
# 服务端配置,11000端口需要设置服务器的安全组规则,允许访问这些端口
$ vim frps.ini
# 修改为以下内容
[common]
# 服务器和客户端进行通讯的端口
bind_port = 11000
# 启动服务端
$ ./frps -c ./frps.ini &
3 客户端配置
这次测试测试了通过ssh连接树莓派以及访问树莓派的仪表盘。如果想访问仪表盘,需要先安装好树莓派仪表盘,安装过程非常简单的。
# 解压tar -xzvf frp_0.33.0_linux_arm.tar.gz# 进入目录cd frp_0.33.0_linux_arm64/# 客户端配置,配置文件中提到的端口(11000,11005,6000),# 都需要服务器的安全组规则允许访问,允许访问这些端口vim frpc.ini# 修改为以下内容 [common] # 填写服务器的公网IP server_addr = x.x.x.x # 与服务端连接的端口,与服务端保持一致= 11000
[dashboard] type = tcp local_ip = 127.0.0.1 # 22为树莓派仪表盘的端口 local_port = 80 # 80端口映射到服务器的11005 remote_port = 11005
[ssh] type = tcp= 127.0.0.1= 22 remote_port = 6000
# 启动服务端 ./frpc -c ./frpc.ini4 连接
# 尝试ssh连接树莓派,在服务器执行
ssh -oPort=6000 pi@x.x.x.x
# 访问树莓派仪表盘,在本地服务器输入网址即可访问
http://x.x.x.x:11005/pi-dashboard/

审核编辑:刘清
-
UDP协议
+关注
关注
0文章
70浏览量
13534 -
SSH
+关注
关注
0文章
198浏览量
17563 -
树莓派
+关注
关注
122文章
2069浏览量
109641
发布评论请先 登录
【Banana Pi BPI-RV2开发板试用体验】部署内网穿透
搭建自己的IOT平台---内网穿透
神器!实现内网穿透的几款工具

如何用frp实现内网穿透呢?
评论