目 录CONTENT

文章目录

记一次酣畅淋漓的网络结构改造

周二豪
2024-07-27 / 0 评论 / 3 点赞 / 43 阅读 / 5139 字

前言

之前用ddns把群晖nas的ipv6地址解析到了域名上,并通过群晖自带的反向代理服务器实现了各本地服务使用域名无端口访问,如导航页图床等,在有ipv6地址的网络环境下给了很大的便利。但是,目前的网络环境决定了在很长一段时间里面都是ipv4和ipv6地址共存,如此一来,实现网站的双栈访问就变得迫在眉睫。

改造过程

微信图片_20240727165302.png

拥有一个公网ipv4地址

经过反复对比,在CloudCone云服务商处购买了一台VPS,价格为$14.49/Year。性能如下

  • 2 vCPU Cores
  • 1 GB Dedicated RAM
  • 50 GB RAID10 SSD Cached Disk
  • 3 TB/Mo Bandwidth at 1 Gb/s
  • 1x IPv4 and 3x IPv6(在这里假定为12.34.56.78)
  • Los Angeles, US

VPS设置

主机名命名为cc1,主机域名

实现的功能

  • 做公网ipv4 DDNS
  • 用nps服务端做tcp代理内网
    • nps客户端目前为群晖套件,之后可能会独立出来设置在webserver里面
  • 反向代理实现无端口访问(tcp4)

操作

  1. 安装宝塔面板
  2. 安装nps服务端
    1. 把监听地址443改为441,防止与其他服务端口冲突
    2. 做tcp代理,这样就能够用VPS的IP+端口来访问本地的服务(配合本地的nps客户端),例如:本地有jellyfin影音服务器,地址是http://192.168.5.71:8096,那么新建一条tcp隧道,12.34.56.78:8096——192.168.5.71:8096
  3. 安装lucky
    1. 把公网ipv4(12.34.56.78)动态解析到主域名及*.主域名(通配符解析)
    2. SSL证书申请,等待一段时间
    3. 用web服务做反向代理
      1. 母规则监听443端口,实现无端口访问网站
      2. 新建数条子规则,前端地址自选,后端地址写http://12.34.56.78:8096

webserver设置

主机名命名为webserver,主机域名

实现功能

  • 做公网ipv6 DDNS
  • 反向代理实现无端口访问(tcp6)

操作

  • 在pve里新开一个虚拟机,系统选Ubuntu-24.04
  • 安装宝塔面板
  • 安装lucky
    • 把公网ipv6(240e:xx:xx:xx:xx)动态解析到主域名及*.主域名(通配符解析)
    • 由于在VPS中已经设置了自动申请SSL证书,在这里用文件导入即可
    • 用web服务做反向代理
      • 母规则监听443端口,实现无端口访问网站
      • 新建数条子规则,前端地址自选,后端地址写http://192.168.5.71:8096

实现的服务

双栈可用

图床:如意馆
导航页:銮仪卫
影音服务器:Jellyfin
NAS网页:DSM

仅ipv4可用

lucky控制页:cc1
宝塔面板:cc1
nps服务端:cc1

仅ipv6可用

lucky控制页:webserver
宝塔面板:webserver

备忘

  • 宝塔面板
    • 安全入口/zoyhw
    • 端口58339
  • lucky
    • 端口16601

参考教程及使用工具

  1. 网络千万条,安全第一条——使用Lucky轻松实现反向代理+Https外网访问家庭NAS
  2. 群晖DSM7.2用Container Manager(原Docker) 安装lucky实现反向代理详细过程
  3. Lucky使用指南
  4. NPS中文使用文档
  5. 科技lion一键脚本 Linux服务器运维工具箱 监控管理建站一个脚本全搞定!
  6. ITDog-在线ping-在线tcping-网站测速-DNS解析
3

评论区