方式一(钉钉)
阿里钉钉提供的免费内网穿透,是基于ngrok 的,可以实现 Http 穿透,可以将我们本地服务暴露给外部访问,可以用作我们调试一些回调接口,或者共享一些文件。
优点:网速快,估计是台带宽为100MGps的服务器,使用http穿透时非常推荐。
缺点:目前TCP/UDP测试无法穿透。
项目地址:https://github.com/open-dingtalk/pierced
如果我们有 git 工具,我们可以使用 git 拉取代码到本地。
git clone https://github.com/open-dingtalk/pierced
或者浏览器打开 https://github.com/open-dingtalk/pierced 直接进行下载
根据我们的操作系统打开对应的文件夹,以Windows为例:
打开cmd ->进入Windows_64 文件夹
例如我们需要将本地 8080 端口暴露给外部访问,访问地址为, http://myweb.vaiwan.com 我们可以编辑 ding.cfg 文件。其中 vaiwan.com 是固定的,subdomain是我们可以编辑的子域名前缀。可以根据我们自己实际修改。因为有挺多人再用,注意不要和别人冲突了,不然访问就需要加上端口了。
server_addr: "vaiwan.com:443"
trust_host_root_certs: false
tunnels:
web:
subdomain: "myweb"
proto:
http: 127.0.0.1:8080
start 后面跟着的 web 是我们自己定义的名字。可以根据我们需要修改,当然也可以按照格式,进行多组穿透。http 后面也可以跟着我们局域网下的ip,可以共享局域网下的其他主机端口。
ding -config ding.cfg start web
当然我们开可以跟快捷的方式,这样是指将本地3000端口映射为 http://myweb.vaiwan.com 。
ding -config=ding.cfg -subdomain=myweb 3000
参考官方文档:https://ding-doc.dingtalk.com/doc#/kn6zg7/hb7000
方式二(frp)
搭建 frp 服务,这个我们需要有一台能够外网访问的服务器。
首先需要购买一台vps
1、下载frp可执行文件
https://github.com/fatedier/frp/releases
根据你的服务器操作系统下载对应的压缩包:
windows 64位:XXX_windows_amd64.zip
windows 32位:XXX_windows_386.zip
linux 64位:XXX_linux_amd64.tar.gz
linux 32位:XXX_linux_386.tar.gz
注意:由于frp 0.18版本之后不兼容以前的frp
2、解压下载包
下载包里包含客户端(frpc)和服务端(frps)
3、修改服务器配置文件
解压服务端并上传至服务器,比如传到/root/frps目录
服务器配置文件为frps.ini,可按照如下修改:
[common]
bind_port = 7100
vhost_http_port = 80
subdomain_host = jsxz.cf
dashboard_port = 7500
dashboard_user = admin
dashboard_pwd = hello
token = freefrp
max_pool_count = 10
log_file = ./frps.log
log_level = info
log_max_days = 3
jsxz.cf改成你的域名,并在你的域名解析配置中要增加一条泛域名记录和一条解析到frp的A记录:
7500为后台显示面板端口,可以通过http://frp.jsxz.cf:7500登录,登录名为admin,密码为hello
7100是服务器的监听端口号,缺省为7000,可以改成你指定的端口号,客户端配置中需填入此端口
4、启动
windows直接运行frps即可,日志文件在运行目录下的frps.log文件
linux进入frp所在目录后,将frps设置为可执行权限,然后执行./frps -c frps.ini &,自启动可以修改/etc/rc.local文件,加入启动命令
/root/frp/frps -c /root/frp/frps.ini &
/root/frp改为你的目录
二、路由器上的客户端配置
把下面配置拷贝到你的路由器frp配置中,里面的test1改成你自己定义的名字(比如xxx),然后保存启用,浏览器访问http://xxx.jsxz.cf即可远程访问你的私网路由器,如果你是自建服务器,将jsxz.cf改成你自己的域名,端口号与服务器的监听端口号一致即可
[common]
server_addr = frp.jsxz.cf
server_port = 7100
token = freefrp
user = test1
[web]
type = http
local_port = 80
subdomain = test1
如果要加端口转发,格式如下:
[ssh]
type = tcp
local_ip = 192.168.2.1
local_port = 22
remote_port = 1122
将路由器的ssh(22)端口转发到服务器的1122端口
方式三(花生壳)
//TODO
方式三(Nat123)
//TODO
原文链接:https://blog.csdn.net/yangyifan0/article/details/124642355?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522168449620216800182184750%2522%252C%2522scm%2522%253A%252220140713.130102334.pc%255Fblog.%2522%257D&request_id=168449620216800182184750&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2~blog~first_rank_ecpm_v1~times_rank-11-124642355-null-null.article_score_rank_blog&utm_term=NAS%E3%80%81%E7%BE%A4%E6%99%96%E3%80%81%E9%98%BF%E9%87%8C%E4%BA%91%E3%80%81%E5%9F%9F%E5%90%8D%E8%A7%A3%E6%9E%90%E3%80%81%E5%86%85%E7%BD%91%E7%A9%BF%E9%80%8F%E3%80%81ipv6%E3%80%81ddns%E3%80%81%E8%BD%BB%E9%87%8F%E7%BA%A7%E4%BA%91%E6%9C%8D%E5%8A%A1%E5%99%A8%E3%80%81%E9%93%81%E5%A8%81%E9%A9%AC%E3%80%81%E5%A8%81%E8%81%94%E9%80%9A%E3%80%81DSM%E3%80%81DSM6.0%E3%80%81%E7%BE%A4%E6%99%96nas%E3%80%81%E4%BA%91%E6%9C%8D%E5%8A%A1%E5%99%A8%E3%80%81%E8%9C%97%E7%89%9B%E6%98%9F%E9%99%85%E3%80%81%E9%BB%91%E7%BE%A4%E6%99%96%E3%80%81docker%E3%80%81%E5%AE%B9%E5%99%A8%E9%95%9C%E5%83%8F%E3%80%81%E5%9F%9F%E5%90%8D%E6%B3%A8%E5%86%8C%E3%80%81%E5%AE%9D%E5%A1%94%E3%80%81%E5%8F%8D%E5%90%91%E4%BB%A3%E7%90%86%E3%80%81nginx%E3%80%81frp%E3%80%81%E5%8A%A8%E6%80%81%E5%9F%9F%E5%90%8D%E8%A7%A3%E6%9E%90