平常我们访问的网站都是由具有公网ip的服务器提供的,如果想做自己的网站也得要有个自己的服务器(当然也可以使用GitHub这种做静态网站,下次可以说说),其实服务器简单来说也就是一台电脑而已,那可不可以将自己的电脑做服务器呢?答案是可以的,这里推荐一个免费的内网穿透神器 ngrok
,关于什么是内网穿透看百科解释:1
2内网穿透,即NAT穿透,网络连接时术语,计算机是局域网内时,
外网与内网的计算机节点需要连接通信,映射端口能让外网的电脑找到处于内网的电脑,提高下载速度。
简单来说就是通过ngrok 可以生成一个外网地址,然后找到到本地服务器就可以访问自己电脑的文件,具体如何使用ngrok内网穿透如下,非常简单。
搭建本地服务器
首先在自己电脑新建一个文件 index.html ,内容自己随意写了,然后搭建一个简单的服务器,可以通过ip和端口访问到这个文件。
比如我本机装了php,执行一行命令就可以 。1
php -S localhost:4000
然后浏览器打开 localhost:4000 就能访问到本地的文件 index.html,这是一个周杰伦的个人PPT介绍,空格键翻页,和平常使用的PPT一样。
python 也是一样的。1
2λ python -m http.server 4000
Serving HTTP on 0.0.0.0 port 8000 (http://0.0.0.0:4000/) ...
如果对命令行不熟悉直接安装个软件NGINX https://www.nginx.com/ 直接启动就行。
ngrok
ngrok软件官网 https://dashboard.ngrok.com/get-started
我用谷歌账号直接登录,也可以自己用邮箱注册,然后copy 自己的token。
下载软件(对应自己的电脑系统)到本地后,在cmd命令行执行ngrok authtoken 1THs9sajgDwQV1RS5ER6pc6nHo2_7gVJGSiAzT91YpAiS7f54
1
2
3
4
5
6
7
8
9
10
11
12
13
14# ngrok authtoken 1THs9sajgDwQV1RS5ER6pc6nHo2_7gVJGSiAzT91YpAiS7f54
Authtoken saved to configuration file: C:\Users\xx/.ngrok2/ngrok.yml
ngrok by @inconshreveable (Ctrl+C to quit)
Session Status online
Account (Plan: Free)
Version 2.3.35
Region United States (us)
Web Interface http://127.0.0.1:4040
Forwarding http://7ef9b347.ngrok.io -> http://localhost:4000
Forwarding https://7ef9b347.ngrok.io -> http://localhost:4000
Connections ttl opn rt1 rt5 p50 p90
0 0 0.00 0.00 0.00 0.00
浏览器打开http://7ef9b347.ngrok.io 就可以打开自己电脑的文件 index.html,同样可以在命令行中可以看到访问到的文件。
效果如图
命令行中的 Web Interface 是 Ngrok 内置的一个管理面板,用来展示所有通过 Ngrok 进来的请求信息以及返回的数据,现在我们访问一下 http://127.0.0.1:4040 看看。
现在你有了一个自己的域名http://7ef9b347.ngrok.io ,发给别人也能访问了,不过你的电脑不能关机,是不很简单,不过这个国外服务器有点慢,可以考虑国内的ngrok.cc。
ngrok.cc
用邮箱注册 https://www.ngrok.cc/user.html ,详细教程见 http://www.ngrok.cc/_book/ 这个也是免费的。
购买免费版本,然后设置基本信息,如果需要可以设置需要密码访问。
下载对应系统的软件https://www.ngrok.cc/download.html,配置文件设置好你要的域名,比如我的susheng,Windows下直接启动文件 Sunny-Ngrok启动工具.bat
然后输入隧道id c4237a7e0be3bdad(登录后在隧道管理中复制)
浏览器访问 http://susheng.free.idcfengye.com 就可以了,很简单吧。
https://nat.cdjxt.net/#section-home 这个和 ngrok.cc 类似 ,先下载客户端,配置教程见 https://nat.cdjxt.net/#section-pricing ,然后用邮箱直接注册
命令行执行client_windows_amd64.exe -s jp.cdjxt.net -p 5993 -k 9e9ef6b89342454f9c554d83a2a94b8e -ssl true
可以看到运行成功了。
浏览器访问 https://m30059.jp.cdjxt.net/#/start 看效果。
如果嫌装客户端麻烦,可以直接使用这个serveo
serveo
https://serveo.net/ 只要在命令行执行一行命令(需要先安装ssh命令,可以直接装一个git bash就行)1
2
3ssh -R 80:localhost:4000 serveo.net
Forwarding HTTP traffic from https://habeo.serveo.net
Press g to start a GUI session and ctrl-c to quit.
浏览器访问 https://habeo.serveo.net 就能访问到自己电脑的文件了。
现在有了内网穿透你出门在外也可以访问到自己电脑上的文件了(当然你的电脑不能关机),如果还是嫌内网穿透麻烦,还不稳定,还是建议买个自己的服务器,这里推荐下腾讯云的,一年只要88 https://cloud.tencent.com/act/double11 ,昨天双十一我刚买了一台(如果是老用户,用一个新微信注册绑定同一个身份证就行),非广告,腾讯也没给我广告费。
推荐阅读:
跟随时光机回到过去看看 2005 年的百度/腾讯/淘宝/谷歌
公众号:苏生不惑
其他
Mac 安装使用 Ngrok https://learnku.com/articles/36129
内网穿透神器 Ngrok 的使用https://learnku.com/articles/36003
https://www.jianshu.com/p/33d0a8f77961
https://www.cpolar.com/
https://learnku.com/articles/36129#reply116370
可以实现内网穿透的几款工具https://my.oschina.net/ZL520/blog/2086061
Ngrok Natapp 小米球 Sunny-Ngrok echosite Ssh、autossh Lanproxy Spike frp fcn 花生壳
内网穿透多款工具测试 https://hacpai.com/article/1568482350815
内网穿透工具浅评 https://www.v2ex.com/t/575865
smarGate: https://github.com/lazy-luo/smarGate
Frp: https://github.com/fatedier/frp
Ngrok: https://github.com/inconshreveable/ngrok
https://github.com/cnlh/nps/
有哪些简单实用的端口映射(内网穿透)软件工具?https://www.zhihu.com/question/49629610
https://qydev.com/download.html ngork http://help.qydev.com/1242213
量子互联https://www.nsloop.com/
内网穿透新章法 serveohttps://hacpai.com/article/1564394400425
https://www.moerats.com/Aria2/#!/downloading
https://hacpai.com/article/1568482350815 https://cloud.tencent.com/developer/article/1507091
https://github.com/fatedier/frp/blob/master/README_zh.md
frp https://www.hi-linux.com/posts/25686.html https://natapp.cn/
https://github.com/ffay/lanproxy
https://juejin.im/post/5cad5e675188251b1b2f5517
https://manager.xiaomiqiu.com/index
如果没有服务器的话推荐个免费的 https://www.natfrp.com/
内网穿透工具(替代 ngrok 和花生壳) https://github.com/longshengwang/tcpthrough-server
FCN 一键免费穿透,日常维护管理基本够用了https://cn.v2ex.com/t/617484#reply86
ssh -R 20001:localhost:80 root@a.a.a.a 或者 autossh -p22 -M 5000 -NR 20001:0.0.0.0:80 root@a.a.a.a,autossh 会一直尝试重新连接 可以消除网络故障隐患,ssh 透传的缺陷是透传到外网的端口只能监听 127
zerotier,非常好用的内网穿透方案,可以把多个内网机器组一个局域网,然后使用一个有公网IP的机器或者vps做中转节点(moon)进行加速,这样就把多个内网机器+一个公网机器组成了一个本地局域网: https://jiajunhuang.com/sharing#250 亲爱的小伙伴:
超好用内网映射神器
免费的内网穿透服务,轻松在自家电脑搭建网站 https://www.natfrp.com/
十分钟快速搭建内网穿透工具 —— frp https://gleehub.com/tool/%E5%8D%81%E5%88%86%E9%92%9F%E5%BF%AB%E9%80%9F%E6%90%AD%E5%BB%BA%E5%86%85%E7%BD%91%E7%A9%BF%E9%80%8F%E5%B7%A5%E5%85%B7%20%E2%80%94%E2%80%94%20frp.html
( https://www.natfrp.org/) 是一个免费的内网穿透平台
Frp内网穿透https://www.yangchong.top/2019/03/13/Frp%E5%86%85%E7%BD%91%E7%A9%BF%E9%80%8F/
nps是一款轻量级、高性能、功能强大的内网穿透代理服务器。目前支持tcp、udp流量转发 https://github.com/cnlh/nps
内网穿透 https://github.com/txthinking/mr2
Fcn 傻瓜式内网穿透软件
https://github.com/boywhp/fcn https://syncthing.net/
https://github.com/ssstk/cngrok
比 frp 更好用的内网穿透工具 npshttps://github.com/cnlh/nps https://github.com/KunTengRom/xfrp https://nps.hanxi.info/login/register frp 也有人写了面板 https://www.natfrp.org/
nps
http://nav.xiejiahe.com/#/index?page=3
我安利一个比较偏门,偏开发者的应用,内网穿透,http://www.notr.tech 。一条命令搞定。
内置免费 mr2 服务器, 将本地服务器暴露在外网 npm install -g @txthinking/mr2 https://www.v2ex.com/t/568236#reply25 https://github.com/txthinking/mr2