目 录CONTENT

文章目录

中微子内网穿透搭建笔记

暮渔木鱼
2025-01-13 / 1 评论 / 6 点赞 / 174 阅读 / 0 字 / 正在检测是否收录...

缘起

这两天在搭建自己的个人博客站,我的域名在阿里云上托管,博客服务器使用的家里的内网电脑搭建的。就需要打通阿里云的网络和我本地的内网网络,这里就需要找一些内网穿透服务进行网络代理,经过试验,比较最后选取了中微子代理作为穿透工具

方案对比

几种内网穿透方案对比【单纯对我个人需求的使用体验】,这里我只列出我自己搭建使用过的方案,其他的可能有更好的方案实现,但是我没有操作使用过,不在这里列出

方案 优势 劣势
贝锐花生壳 ①个人版免费
②支持多操作系统
③只需要安装客户端
④穿透映射操作简单
⑤支持http(s)
⑥不需要有域名和公网
①带宽限制(1Mbps)
②流量限制(1GB/月)
③免费版访问有花生壳中间页,影响用户体验
④用户需要申请壳域名
⑤免费版易受到官方服务停机影响
节点小宝 ①个人版免费
②支持多操作系统
③部署简单
④穿透映射操作简单
⑤支持http(s)
⑥不需要有域名和公网
①带宽限制(2Mbps)
②流量限制(5GB/月)
③映射条数限制(限制1条)
FRP ①完全免费(开源)
②支持多操作系统
③支持多协议
④不限制映射条数
①需要公网IP
②访问比较慢
③配置稍微困难
④需要单独部署服务端和客户端
中微子代理 ①完全免费(开源)
②支持多操作系统
③部署操作简单
④支持http(s)
⑤不限制映射条数
⑥没有带宽以及流量限制
①需要公网IP
②需要单独部署服务端和客户端

其他代理方案

我后续了解到的其他优秀的穿透方案:

①、ngrok:ngrok 也是很知名的内网穿透工具,自从2.x版本不再开源,名气在下降。ngrok官网也提供免费穿透隧道,但国内连接速度较慢。NATAPP、Sunny-Ngrok等工具基于ngrok二次开发而来;

②、ZeroTier:号称零配置的内网穿透工具,提供与企业 SDN 交换机同等的高级网络虚拟化和管理功能,可以跨本地和广域网连接任何设备和程序。然而由于ZeroTier的服务器在国外,国内连接速度经常很感人,需要自行搭建Moon来解决;

③、V2ray:V2ray是一个功能强大的网络平台,提供代理、反向代理、内网穿透等功能。本站之前已有V2ray相关资源: V2ray教程、V2ray高级教程:流量伪装 和 V2ray客户端下载;

④、TeamViewer:TeamViewer是国内外知名的远程控制、远程会议软件,额外提供文件上传下载等实用功能,比QQ远程协助好用一万遍。虽然个人版免费,但是现在TeamViewer商业化道路一去不复往,用起来越来越恶心,本人现在已经很少用;

⑤、SAKURA FRP:基于frp的免费内网穿透工具,也有收费服务。对于这家的行为,网民褒贬不一。如果你没有自己的服务器,可以尝试一下这家。

以上内容自tlanyan的博客(frp内网穿透教程)

花生壳方案展示 去官网

67842064d4e60.png

节点小宝方案展示 去官网

6784237c8830f.png

初识

  • 中微子代理(neutrino-proxy)是一个基于netty的、开源的java内网穿透项目。
  • 技术栈:Solon、MybatisPlus、Netty
  • 遵循MIT许可,因此您可以对它进行复制、修改、传播并用于任何个人或商业行为。
  • 官网地址:https://neutrino-proxy.dromara.org
  • 快速上手请点击这里

中微子官网贴图 去官网

67842bfda5f37.png

实战

部署方式介绍

中微子代理支持多种部署方案

通过宝塔面板部署

使用jar部署

使用docker容器化部署

原生部署

使用docker-compose部署

这么多种方案总有一款适合你,具体方案根据你的习惯进行选择

我因为云服务器安装了1panel面板工具,方便管理我这里服务端使用docker部署,客户端使用docker容器化进行部署。更建议使用原生部署,更节省资源以及服务器性能

服务端安装

cd /root
mkdir -p /root/neutrino-proxy/config
touch app.yml
vi app.yml

将下面的代码写进yml文件,大家根据自己的实际情况编写yml文件,标准写法参考官方文档

neutrino:
  data:
    db:
      type: mysql
      # 自己的数据库实例,创建一个空的名为'neutrino-proxy'的数据库即可,首次启动服务端会自动初始化
      url: jdbc:mysql://你的mysql服务器IP:对应的端口/neutrino-proxy?useUnicode=true&characterEncoding=UTF-8&allowMultiQueries=true&useAffectedRows=true&useSSL=false
      driver-class: com.mysql.jdbc.Driver
      # 数据库帐号
      username: neutrino-proxy数据库的用户名
      # 数据库密码
      password: 数据库密码

执行docker一键部署命令

docker run -it -p 9000-9200:9000-9200/tcp -p 8888:8888 -d --restart=always --name neutrino-proxy -v /root/neutrino-proxy-server/config:/root/neutrino-proxy/config -v /root/neutrino-proxy-server/data:/root/neutrino-proxy/data -v /root/neutrino-proxy-server/logs:/root/neutrino-proxy/logs aoshiguchen/neutrino-proxy-server:latest

安装完成后记得在你的服务器防火墙开放9000-9200端口,以及管理后台8888端口,如果是阿里云服务器请在安全组放开对应的端口策略

安装完成后通过http://IP:8888 访问管理面板,用户名密码默认:admin/123456

登录页

678432b6e291b.png

首页

678432d48806f.png

获取服务端License

点击代理配置 => License管理 创建一条License记录,并将License Key复制下来,在后续安装客户端需要使用

67843418d92df.png

安装客户端

直接执行以下语句安装客户端

docker run -it -d --restart=always --name npclient -e SERVER_IP=xxx.xxx.xx.xxx -e LICENSE_KEY=******************* aoshiguchen/neutrino-proxy-client:latest

SERVER_IP=xxx.xxx.xx.xxx 配置你的服务器IP

LICENSE_KEY=******************* 配置成上一步你在管理后台拿到的License Key

到此安装完成,此时返回服务端刷新License管理页面,发现在线状态是在线即安装成功。

678435b999429.png

接下来就是按照官网的教程进行映射配置

服务端映射代理配置

点击代理管理 => 端口映射 => 添加 (根据你的端口做映射添加,我这里已经添加过了,只做截图展示)

678436d740768.png

678436f9929a1.png

按需添加你的代理服务即可,此时通过http://service_ip:服务端口/ 即可访问你的内网服务了。

参考资料

neutrino-proxy开源地址:https://gitee.com/dromara/neutrino-proxy

neutrino-proxy官方文档:https://neutrino-proxy.dromara.org/

6

评论区