基于tunsafe+haproxy的内网穿透技术

废话不多说,为什么这样,因为国内的没有固定IP,有固定IP的vps,比如阿里,腾讯这些,带宽太小,还要备案.比较麻烦.实在不适合折腾网站.

为什么不用国外的vps,因为国外的vps 便宜的配置低,但是优点是网络好,固定IP便宜,有ipv4和v6的固定IP. 但是配置垃圾的vps,实在不想折腾了,别说什么性能优化之类的.  我花几天时间去优化一个低配的vps,不如多花点钱堆硬件来的实在.

说到堆硬件,为什么我要用内网穿透技术呢,如下

1. 前几年瞎折腾,买了乱七八糟的各种电脑,服务器,现在放着吃灰,很心疼.放机房吧,一个月千把块的托管费,有那个钱, 我干嘛不去租个vps, 可是租个vps吧,单纯跑个博客什么的.有点浪费.所以把这些闲置的服务器跑起来.

2. 国内各种备案,实在不想去折腾.

3. 国内的固定IP基本不可能,内网穿透是唯一的方案.

缺点如下:

1. IP是国外的,因为穿透的国外的vps. 虽然有点脱裤子放屁的感觉,但是实在找不到好的办法,就是慢点而已. 慢点就慢点,打开网页而已.加了cdn以后,还能接受.

2.破旧的服务器需要一直开着, 开着就开着吧,现在一年也停不了几次电.博客而已,又不是生产环境,无所谓了.

废话说了一堆,开始说下我的技术方案.

  1. 服务器, 放在家里,也就是家庭宽带. 这个要是去托管, 一个月起码400块钱. 我这个配置都是二手的, 一套下来也就400块钱, 所以性价比很高.
  2. 网络部分. 服务器安装 ubuntu 18.04, 国外vps 也是 ubuntu 18.04. 为什么用这个, 因为需要安装 tunsafe,  centos7/8 都不行, 因为centos7/8 需要额外安装那个clang库, 貌似非常麻烦. ubuntu 直接 apt 即可.为了省事,还是简单粗暴即可.
  3. 系统架构.   cloudflare   ———->    国外vps  (haproxy+tunsafe)   ————-> 家里的服务器(tunsafe)

3. 为什么用tunsafe

因为tunsafe支持tcp呀! wireguard不支持tcp, 为什么要用udp呢,因为有万恶的墙,也全不是因为墙,因为udp不稳定,经常被干扰.另外用tcp的话,可以用 bbrplus 加速,效果杠杠的.

下面就是具体配置了.

1. tunsafe 的编译安装

相关配置文件如下

# 国外vps /etc/tunsafe/tun0.conf

# 家里服务器  /etc/tunsafe/tun0.conf

# 创建自动启动文件

 

2. haproxy 安装