用 WireGuard 连回家,速度非常不稳定

8 天前
 cyrker

如题,家里目前两条电信宽带

A:1000M 下 50M 上,有公网 V4

B:2000M 下 200M 上,有公网 V6

我在家里弄了个 easy-wg ,配置文件如下

volumes:
  etc_wireguard:

services:
  wg-easy:
    image: ghcr.nju.edu.cn/wg-easy/wg-easy:15.0.0-beta.12
    container_name: wg-easy
    restart: unless-stopped

    environment:
      - INSECURE=true  # 允许 HTTP 访问 Web UI

    networks:
      wg-net:
        ipv4_address: 172.30.0.2
        ipv6_address: fd42:42:42::2

    ports:
      - "51820:51820/udp"
      - "51821:51821/tcp"

    cap_add:
      - NET_ADMIN
      - SYS_MODULE

    sysctls:
      - net.ipv4.ip_forward=1
      - net.ipv4.conf.all.src_valid_mark=1
      - net.ipv6.conf.all.disable_ipv6=0
      - net.ipv6.conf.all.forwarding=1
      - net.ipv6.conf.default.forwarding=1

    volumes:
      - etc_wireguard:/etc/wireguard
      - /lib/modules:/lib/modules:ro

networks:
  wg-net:
    driver: bridge
    enable_ipv6: true
    ipam:
      config:
        - subnet: 172.30.0.0/24
          gateway: 172.30.0.1
        - subnet: fd42:42:42::/64

一般是直接通过 v4 连家里的 wg 的,但是 v4 的上传就 50M ,而且还在跑 PT 。有些时候会很卡

所以想试试用腾讯云 200M 服务器中转一下家里的 IPv6 。

于是乎在腾讯云上部署了 wg 客户端+easy-wg ,配置文件如下:

volumes:
  etc_wireguard:

services:
  wg-easy:
    image: ghcr.nju.edu.cn/wg-easy/wg-easy:latest
    container_name: wg-easy
    restart: unless-stopped

    environment:
      # VPN 公网访问域名或 IP (客户端用)
      - WG_HOST=xxxx

      # WireGuard 使用的端口
      - WG_PORT=12345
      # MTU
      - WG_MTU=1400

      # Web UI 登录密码
      - PASSWORD_HASH=$2a$10$

      # 分配给客户端的虚拟地址段
      - WG_DEFAULT_ADDRESS=10.99.99.x

      # 客户端使用的 DNS
      - WG_DEFAULT_DNS=192.168.99.1

      # 允许客户端访问的网段
      - WG_ALLOWED_IPS=192.168.99.0/24

      # Web UI 设置
      - TZ=Asia/Shanghai
      - UI_TRAFFIC_STATS=true
      - UI_CHART_TYPE=1

    ports:
      - "1234:1234/udp"   # WireGuard VPN 端口
      - "12345:12345/tcp"   # Web UI 管理端口

    cap_add:
      - NET_ADMIN
      - SYS_MODULE

    sysctls:
      - net.ipv4.ip_forward=1
      - net.ipv4.conf.all.src_valid_mark=1

    volumes:
      - etc_wireguard:/etc/wireguard
      - /lib/modules:/lib/modules:ro

wg 客户端的配置文件如下

[Interface]
PrivateKey =xxxx
Address = 10.8.0.3/24, fdcc:ad94:bacf:61a4::cafe:3/112
#DNS = 223.5.5.5
MTU = 1420

[Peer]
PublicKey = xxxx
PresharedKey = xxxx
AllowedIPs = 192.168.99.0/24
PersistentKeepalive = 25
Endpoint = mydomain:12345

目前用下来发现,不管是直接链接家里的 V4 ,还是使用腾讯云 IP 为入口的 wg 链接

测速还是看 EMBY 里的电影都很不理想,想问下各位大佬有哪里可以优化,或者有什么更好的方案吗?

2885 次点击
所在节点    宽带症候群
38 条回复
cyrker
7 天前
@richchang #20 因为我本地实际上是没有 V6 的..所以我需要一个有 V6 并且带宽足够的来中转一下,V4 那条公网宽带的上传只有 50M ,并且大部分时间会在跑 PT ,所以我想用 V6 这条上传带宽比较大的来访问家里的内容
richchang
7 天前
@cyrker 没有公网 IP 的情况,您可以看看我写的这个方案,目前我测试可以实现和公网 IP 下一样的速度和 QoS: https://github.com/kanshurichard/GoHomeEasy
cyrker
7 天前
@richchang #22 不是不是,是我「想要访问 Home 的设备」例如手机之类的 没有 IPV6 无法直连家里的 IPV6 公网,所以想用腾讯云的 V4 中转一下
richchang
7 天前
@cyrker 我的这个方案,全程只需走 ipv4 ,而且不需要公网 ip ,就能满足连回家里任意设备的需求,您可以看一下。
ajyz
7 天前
之前也是用的 WireGuard ,因为硬路由支持作为服务器,但不知道从哪个版本开始,速度不稳定,不知道是路由器固件问题还是运营商问题,后来就改用 surge 的 ponte 了,发现同样是 udp 协议,ponte 稳得多,配置也简单,所以就一直用 ponte 了。之前用 WireGuard 为了避免同步规则后配置冲突,还用模块来避免,徒增麻烦
cyrker
7 天前
@richchang #24 老哥这个项目,访问回家里的速度是受什么因素影响嘞,我现在这个方案主要是受腾讯云服务器的影响
richchang
7 天前
@cyrker 这个就是直连家里,和有公网 ip 时代是一样的,理论上只跟家里的上行速度有关。
JensenQian
7 天前
@cyrker 对,不过墙的话 ss 没事
但是腾讯云那边可能会阻断的
我不太知道,其他基于 tls 的协议的话腾讯云我感觉可能会阻断
cyrker
7 天前
@JensenQian #28 我现在是家里部署 ss 服务端,腾讯云用 nginx 的 stream 模块来转发流量,好像这样不会被阻断?目前用着还 ok
JensenQian
7 天前
@cyrker 不过我还是提醒下你
腾讯之前一堆人被封号就是因为拿来转发代理
我的建议是别折腾
cyrker
7 天前
@JensenQian #30 转发回家 不是出境也不行嘛?
snylonue
6 天前
试试 tailscale ?虽然也是 wireguard 但是不知道为什么快得多
msn1983aa
6 天前
用 cloudflare 的 zerotrust 创个 tunnel 连回去还挺不错的
JensenQian
6 天前
@cyrker 都不行,之前还有 frp 穿透被干的
,你搜下
cyrker
6 天前
@snylonue #32 我也有在用的 晚高峰其实也非常爆炸..
@JensenQian #34 先用着吧 反正是月付的机器
Int100
4 天前
wg 是 udp ,国内可能存在 qos 问题,tcp/udp 都是四层(传输层)协议.

换 ipsec esp 三层(网络层)封装可以完美承载 tcp/udp 同时避免 qos.
VwEI
4 天前
http 伪装白名单
AlphaTauriHonda
13 小时 55 分钟前

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://yangjunhui.monster/t/1128747

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX