利用STUN 穿透实现无公网IPv4部署家庭网络服务_永州景睿网络技术服务

利用STUN 穿透实现无公网IPv4部署家庭网络服务

2025-03-19 23:14:30  浏览:37  作者:管理员
利用STUN 穿透实现无公网IPv4部署家庭网络服务

lucky中的stun内网穿透 + webhook + 云服务器部署网站

说明

适用于家庭网络能用stun获取到公网IPV4 地址和端口号,但是公网IP地址和端口号并不固定,每隔一段时间都会变化。

优点

相比其他的内网穿透方案,价格更低,带宽更高(宽带上传带宽为瓶颈)

本人家庭宽带是100M上传带宽1000M下载带宽,实测在外地使用时,能够达到100M下载速度

方案原理

将stun内网穿透获取的IP和端口 通过webhook 发送到云服务器并用json文件保存然后用网页显示json中的IP和端口。这样即使IP和端口都发生变化,网页端也能及时更新

效果如图:

部署:

前置准备

下载 webhook.php 和index.html 文件(文件放在文章末尾,免费获取)

有一台有公网IP的云服务器,用于部署网站

在云服务器中安装宝塔面板(如果你熟悉部署网站可以不需要这里使用是为了降低部署门槛)

官方安装文档:https://www.bt.cn/new/download.html

在宝塔面板中 安装PHP 7.1版本 8.0版本会出现bug

在宝塔面板中 安装nginx服务用于部署网站

确保lucky中使用stun获取到的公网IP+端口号可以正常使用

开始部署:

部署网站:在服务器宝塔面板中 选择PHP项目 添加站点

添加站点:

第二步:

上传webhook.php,index.html文件到服务器网站根目录:

上一步点击保存后宝塔面板中会出现你的网站名,点击红色部分进入根目录上传文件

点击上传文件

拖拽或手动上传webhook.php,index.html文件

由于该文件夹下已有index.html 请选择覆盖该文件,或者删除原先存在的index.html 文件

现在开始部署lucky中的webhook

选择需要部署到网站的规则 例如:

打开设置填入以下信息:

请求体内容如下:

{"name":"#{ruleName}","time":"#{time}","ipAddr":"#{ipAddr}","ip":"#{ip}","port":"#{port}"}

注意开启:禁用接口调用成功字符串检测,否则会出现报错

保存即可

重启宝塔面板中的web服务

如果webhook服务正常运行 在网站根目录下会出现以下文件

data.json,log.txt 都是自动生成的文件,data.json存储了stun 的IP+端口

data.json 会自动清理以保证文件不会无限扩大

每次更新的端口号和IP会被记录到data.json中 相同名称的服务会比较时间戳,最新的记录会被映射到网站上

如果你有域名绑定服务器,记得在index.html 加入你的ICP备案号,此处ICP备案号位置已经为你保留

文件下载地址:

百度网盘:

链接:https://pan.baidu.com/s/1HDJDYi_p5Pno2PZF6cv2RQ?pwd=6666 

提取码:6666

如果你发现一些问题或者有好的修改建议:

可以发送到我的邮箱 qluogxbd@gmail.com


评论区

共 0 条评论
  • 这篇文章还没有收到评论,赶紧来抢沙发吧~

【随机内容】

返回顶部