局域网内(家/办公室),只需要有一台 MacOS 安装 Surge,配置好,内网其它设备都不用再安装任何代理工具(比如不方便安装代理的 AppleTV、电视棒、Switch、XBox、Oculas),都可以使用 MacOS 当网关,自动分流上网。
相比于软路由等方案,成本会更高,但配置更轻松、维护方便、使用过程有图形界面,Mac 运行稳定性仅次于 Linux 可以长期动行,几乎不怎么需要重启,除非操作系统版本升级。
购买 Surge4 的 5 个授权(这个选项性价比最高,可用于 5 台 MacOS 设备)
代理服务 (机场不要太过于在意成本,成本太低的机场往往线路质量不稳定,有集体坠机的风险)
安装最新 LTS 版本的 Node.js
安装最新版本的 git
-- 这一步不需要操作,如果你有能力优化贡献代码,欢迎欢迎 --
打开 Terminal 打开命令行工具
# 这一个区块的内容,熟悉命令行的用户不用管,直接跳到下一段
# 进入用户文件夹
$ cd ~
# 新建一个专用文件夹,<dir-name> 换成自己想起的名字
$ mkdir <dir-name>
# 进入这个文件夹
$ cd <dir-name>
# 下载库
$ git clone https://github.com/web3jt/rules
# 进入文件夹
$ cd rules
# 自动安装依赖包
$ npm install
# 创建配置文件
$ cp config.sample.yaml config.yaml
# 编辑配置文件,或者不用 nano 工具,用任何文本编辑工具编辑这个 config.yaml 文件都可以
$ nano config.yaml
SURGE_PROVIDER: "https://example.com/subscribe/<key>?protocols=smart&list=surge"
SURGE_OUTPUT: "/Users/<username>/Library/Mobile Documents/iCloud~com~nssurge~inc/Documents/<profile-name>.conf"
SURGE_PROVIDER
填入机场提供的代理配置列表 URLSURGE_OUTPUT
中将 <username>
修改成 Mac 的用户名,也就是 Terminal 里命令提示符 @
前边的名字SURGE_OUTPUT
中将 <profile-name>
修改成你想要的配置文件名,我自己用的就是机场的英文名$ node surge.js
Saved...
运行完毕后,配置文件会自动导出到 iCloud 文件夹
以后每次想重新获取最新节点列表,并再次生成配置文件覆盖的时候,只执行这一条命令就行了……
或者写一个 cron 每天运行一次
Surge 主窗口 - More (左下) - Profile - 切换配置文件为刚刚导出的 profile-name
DHCP
相关设置里,找到 Mac/IP 绑定
然后将 Mac (网卡物理地址)与想要设置的 IP 地址进行绑定192.168.x.254
这种 .254
结尾的子网内最末一个 IP (因为一般家用路由器的 DHCP 分配规则都是小于 200,如果进入路由器设置页面进行绑定,你是可以看到 DHCP 的分配规则的,这里的 IP 没有确定之规,只要不在自动分配范围里就行,但一定要在路由器所在的子网网段里,如果路由器的 IP 是 192.168.1.1
那么就不要把 MacOS 的 IP 设置为非 192.168.1.x
的)TCP/IP
的 IPv4
地址比如:电脑、手机、Switch、XBox、Oculas、AppleTV、Amazon 电视棒、Google 音箱等
192.168.1.254
198.18.0.2
如果你希望某一批设备,只要连接 WiFi 就能自动使用你的 Surge on MacOS 为网关的话:
2 号路由
)网关地址
设定为 MacOS 的 IP 地址如此,可以做到:
如果你使用商用路由 + AP/AC 甚至多层交换的解决方案,就像我一样用 vLAN 吧,多个子网,想互通就互通,想隔离就隔离,家人、访客、出海、工作、电视和游戏、物联网、监控,都能有相当舒服的姿势
有商用路由的也不需要我这里哔哔了,诸神可借鉴思路、动动手指轻松搞定
欢迎打赏,给啥都行,不嫌多不嫌少,哈哈
0x66666666f6d4Eef3bF30A60DDe1Bf50Ce056e87f
lota.eth
祝大家刷绿码!收红包!!