内网穿透介绍
摘自百度百科
内网穿透,也即 NAT 穿透,进行 NAT 穿透是为了使具有某一个特定源 IP 地址和源端口号的数据包不被 NAT 设备屏蔽而正确路由到内网主机。下面就相互通信的主机在网络中与 NAT 设备的相对位置介绍内网穿透方法。
UDP 内网穿透的实质是利用路由器上的NAT 系统。NAT 是一种将私有(保留)地址转化为合法IP地址的转换技术,它被广泛应用于各种类型 Internet 接入方式和各种类型的网络中。NAT可以完成重用地址,并且对于内部的网络结构可以实现对外隐蔽。
简单的拿游戏来说,就是即使不在同一个局域网下,大家也可以联机一起玩!
准备工具
- 一台云服务器(阿里,腾讯均可,建议选择国内)
- 需要内网穿透的机器
- 局域网
正式安装
服务器端安装
一、下载frp1
2wget https://github.com/fatedier/frp/releases/download/v0.21.0/frp_0.21.0_linux_amd64.tar.gz
tar -zxvf frp_0.21.0_linux_amd64.tar.gz #解压
可以自己选择合适个版本安装,解压到合适的目录
二、配置frp的配置文件
服务器端的配置文件是frps开头的,客户端是frpc开头的,删除掉多余文件1
rm -rf frpc*
修改服务端配置文件vim frps.ini
1
2[common]
bind_port = 7000
一般是默认的上面的配置,不需要更改
客户端安装
1 | [common] |
非常重要的一点,必须要在阿里服务器上面将6000、7000的端口打开,否则ssh连接会被拒绝!
启动frp穿透服务
服务端 :screen ./frps -c frps.ini
客户端 :screen ./frpc -c frpc.ini
个人习惯,一般使用screen后台启动程序,nohup也可以,推荐后台启动,不然终端掉了,frp服务就没了
登录
使用ssh远程登录,ip地址选择服务器地址或者域名,端口号选择6000,输入用户名和密码就可以远程登录了!
多个内网设备配置
对于不同的设备,需做不同的配置,避免出现冲突:1
2
3
4
5
6
7
8
9
10
11
12
13# 内网机器1:
[ssh] #<==不同点
type = tcp
local_ip = 127.0.0.1
local_port = 22
remote_port = 6000 #<==不同点
# 内网机器2:
[ssh1] #<==不同点
type = tcp
local_ip = 127.0.0.1
local_port = 22
remote_port = 6001 #<==不同点
另外,可以在客户端添加一个开机自启动程序,大家自行百度吧,这里就不介绍了