前言

  • 之前用 Tailscale 挺好的,群晖作网关,不过免费的总归是速度不太行,还不支持自建中转节点
  • 用了 iKuai 的 OpenVPN 感觉还可以,就是客户端 VPN 无法共存不太完美
  • 无意间看到有人说可以 ss 连回家,设下策略就行了,研究了下,完美

iKuai の OpenVPN

  1. ccdf49afd2fe402897afb71fea9538fa
  2. 259a3e740c264d3a9f8d49c69d706c6b
  3. 导出配置,进去把 remote 后的ip改一下,保存并把后缀改成 ovpn,然后映射一下端口ccdf49afd2fe402897afb71fea9538fa

x-ui 配置

  1. OpenWrt 里很多插件都带服务端,那些都可以。我这里虚拟了个 Ubuntu 用 docker 装,因为我家的多拨环境,没有办法指定旁路由内的某个插件走某条线路,群晖的话 macvlan 下的 Docker 无法与宿主机通信,弄这个比较麻烦
  2. 傻逼 Ubuntu 老卡在最后的安全安装上,断网安装就可以了
  3. 安装完后设置下网络:
    1
    sudo vim /etc/netplan/00-installer-config.yaml
    1
    2
    3
    4
    5
    network:
    ethernets:
    ens160:
    dhcp4: true
    version: 2
  4. 升级 packages:
    1
    2
    3
    4
    5
    sudo -i # 切换到 root 用户

    apt update -y # 升级 packages

    apt install wget curl sudo vim git -y
  5. 安装、设置 Docker:
    1
    wget -qO- get.docker.com | bash  #安装 docker
    1
    systemctl enable docker  # 设置开机自动启动
    1
    2
    3
    4
    5
    6
    7
    8
    9
    cat > /etc/docker/daemon.json <<EOF  # 限制日志文件大小
    {
    "log-driver": "json-file",
    "log-opts": {
    "max-size": "20m",
    "max-file": "3"
    }
    }
    EOF
    1
    systemctl restart docker  # 重启 docker
  6. 安装 x-ui:
    1
    docker run -d --name=x-ui --restart=always --network=host -v /root/docker/x-ui/cert/:/root/cert/ -v /root/docker/x-ui/db/:/etc/x-ui/ enwaiax/x-ui:latest
  7. 默认端口 54321,默认账号和密码都是 admin,随心添加个ss + tcp
  8. 面板设置 -> xray 相关设置,删去以下这段,然后保存配置 -> 重启面板
    1
    2
    3
    4
    5
    6
    7
    {
    "ip": [
    "geoip:private"
    ],
    "outboundTag": "blocked",
    "type": "field"
    },
  9. 在主路转发刚刚创建的入站节点的端口

客户端配置

Shadowrocket

  1. 添加节点
  2. 如果正在用default.conf,就改先改个名,然后再点恢复默认设置,这下就有两个配置文件了,一个在家的时候用,一个用作“回家”
  3. 其他的配置文件一样的道理
  4. 在用作“回家”的配置文件的通用里,分别在跳过代理TUN 旁路路由下把属于你的内网网段删掉,然后在规则里添加一条规则,类型选IP- CIDR,策略选刚添加的节点,不解析域名开启,地址填你的内网网段
  5. 首页 -> 全局路由 -> 设置 -> 场景
    1. 场景:无线局域网
    2. SSID:要回的家里的 Wi-Fi 的 SSID
    3. 路由:配置
    4. 类型:服务器节点
    5. 服务器节点:默认
    6. 配置:选没有修改过的那个配置文件
    7. 保存
    8. 按照相同的方式添加一个默认场景
  6. 首页 -> 全局路由 -> 全局路由 -> 场景

Quantumult X

  1. 添加节点

  2. policy 下添加

    1
    2
    ssid=取个名字, 刚添加的节点的节点名, 刚添加的节点的节点名, 要回的家里的Wi-Fi的SSID:direct
    //ssid策略组,ssid=你的组名,4g下默认策略,Wi-Fi下默认策略, wifi-A:策略 A
  3. filter_local 下将 ip-cidr, 属于你的内网网段, direct改成ip-cidr, 属于你的内网网段, 刚才设置的ssid策略组的组名