记录了我折腾 NAS 的相关问题和解决方案。
有线 mesh
- 子路由连 lan 口
- 关闭 DHCP
- 子路由修改 wifi 名字和主路由相同
在此之后,子路由会重启,然后就无法再次登录子路由的管理界面了。连着子路由,tracert 也不会显示子路由的 ip。
要做到无缝切换,需要整个过程中 ip 地址是不变的,因此主路由和副路由需要在同一个网段里面。
外网访问
为了实现快速的外网访问,有几种思路:
- 使用一个服务器转发
- 类似 ZeroTier 的 VPN 方案
- 直接使用公网 IP
对于后两种方案,需要:
- 首先实现“光猫改桥接”,然后使用路由器拨号。这样,光猫只会负责光信号转电信号,路由器实际上是整个家庭网络的边界了。
- 开启路由器的 UPnP 功能。
ZeroTier
1 | sudo ./zerotier-one -q listpeers |
光猫改桥接
对于移动来说,路由器拨号的账户是手机号,密码可以打 10086 重置密码。
FRP 相关
直接转发
1 | ./frps -c ./frps.toml |
在 nas 上,其中 5005 是 nas 上的 webdav 的 port
1 | [[proxies]] |
不过这里建议使用 cyberduck 而不是 windows 的原生文件管理来做,因为 windows 文件管理很有 bug。
部署服务(打洞)
阿里云服务器只需要
1 | serverAddr = "alicloud_addr" |
nas 上可以部署不同的协议。这里比较推荐的是 xtcp,可以打洞。stcp 的安全性好,下面的例子是 stcp
1 | serverAddr = "alicloud_addr" |
然后只需要即可运行,在不需要的时候,其实可以把这个进程 kill 掉,这样比较安全,毕竟是通过外网打洞
1 | ./frp/frpc -c ./frp/frpc-s.toml |
在客户端,需要
1 | # frpc.toml |
在远程,只需要
1 | .\frpc.exe -c .\frpc.toml |
打洞成功有下面这个日志,但是需要注意,这里不要让他通过 ZeroTier 等转发,不然实际上是没打成功。
1 | [p2p_5005] get natHoleRespMsg, sid [xxx], protocol [quic], candidate address [...], assisted address [...], detectBehavior: {Role:sender Mode:3 TTL:0 SendDelayMs:0 ReadTimeoutMs:5000 CandidatePorts:[{From:28106 To:28120}] SendRandomPorts:0 ListenRandomPorts:0} |
WebDav
Windows 访问 Nas 上文件只能借助于 WebDav。
在 Nas 上安装 WebDav Server 是很简单的。
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\WebClient\Parameters
上的 BasicAuthLevel 要改成 2。
Windows Defender 上需要新建入站规则,将 15005 和 15006 端口打开限制。
1 | [[visitors]] |
搞完连上去是这样的,容量显示的是本地磁盘的,应该是什么 bug。
xtcp 的体感是连上去一会就断,所以复制个文件,看到的是波动特别明显。
n4 打洞
1 | python3 n4.py -c -h <公网服务器> |
全局梯子
OpenClash
下面是第一个配置的截图。总共有 10 张图,修改 url 来查看其他的图。
覆写设置 -> 开发者选项
1 | #!/bin/sh |
注意,和 PS5 相关的要走 DIRECT
1 | - DOMAIN-SUFFIX,playstation.com,DIRECT |