解决 Win10 可以上网但显示无法访问 Internet 的问题

Win10 No internet connection

利用 Surge tvOS 作为旁路由上网时,可能会遇到 Win10 明明可以访问网络,但是网络连接一直显示无法访问 Internet 的错误。网上有许多教程会解释,说这是因为微软会通过访问域名地址 http://www.msftconnecttest.com/connecttest.txt 或者 http://www.msftncsi.com/ncsi.txt 来确认当前主机网络连接的状态。当这个域名地址不可访问时,就会认为网络连接断开。

这种说法没什么问题,但是不够全面,其实在注册表里还有另一个选项:ActiveDnsProbeHost, Win10 会通过解析 dns.msftncsi.com 是否为 131.107.255.255 来判断网络状态。当你通过 Surge tvOS 作为旁路由访问网络时,由于所有的域名解析都会被转化成 Fake-IP,即 198.18.*.* 这样的 IP 地址,所以 Win10 就会认为你无法访问网络。你可以在客户端通过以下命令来判断当前 DNS 解析的结果是否正确:

➜  ~ nslookup dns.msftncsi.com
Server:		198.18.0.2
Address:	198.18.0.2#53

Non-authoritative answer:
Name:	dns.msftncsi.com
Address: 131.107.255.255

解决的办法也很简单,在 Surge tvOS 的配置文件中添加:

[General]
always-real-ip = dns.msftncsi.com

最后的最后,你可能还需要重启一下 Apple TV 来确保配置生效(这可能是当前 Surge tvOS 5.7.0 版本的一个 Bug)

解决 Surge tvOS 在网关模式下无法联网的问题

Apple TV 4K

Apple TV 最近终于迎来了一次重要的更新:tvOS 17!可以通过安装 Surge、Quantumult X 等软件将 Apple TV 变身为一台旁路由。

但当我按要求配置好 Surge tvOS 后,却发现每过一段时间其他设备就会连不上网络,而 Apple TV 本身却可以正常联网。一开始觉得可能是 Apple TV 进入睡眠以后导致的断网,可是在关闭了 Apple TV 的睡眠模式后,问题依旧存在。翻了翻网上的讨论,似乎很多人也都遇到了同样的问题。

经过一番检查,唯一能确定的是断网以后,返回的错误始终都是 DNS 解析失败,所以一定是 DNS 出了问题。但是我翻遍了 Surge 官网也没有找到使用 Surge tvOS 时正确配置客户端 DNS 的方法。于是我还是按 Mac 版 Surge 的增强模式的操作,将客户端的 DNS 指向了 198.18.0.2 这个虚拟 IP,在连续使用了几天后,断网的情况终于没有再次发生。所以目前来看,网上许多 Surge tvOS 讨论里说到的将客户段 DNS 指向 AppleTV 本身的 IP 地址的说法,应该是存在问题的。如果你遇到了同样的情况,可以尝试使用 198.18.0.2 来作为 DNS。

燃风 REALFORCE R3 / R2 静电容键盘上手体验

REALFORCE R3 for Mac (R3HH11)

REALFORCE R3 for Mac

优点

比 R2 更为轻柔的手感与听感

虽然购买的 R3 和 R2 同样是 45 克压力,但在用久了以后,却感觉 R3 比 R2 更加轻柔。可能是因为键帽材质的关系,R3 的键帽偏软的触感会让人觉得敲击感也显得柔和起来,虽然本人更喜欢 R2 版本的类肤质键帽的触感,但是在使用时,这种涩涩的触感却让敲击感显得不够流畅,这一点是我觉得 R3 比 R2 优秀的地方。

蓝牙连接稳定

毕竟是 2021 年后的产品,蓝牙连接受到的干扰影响相比我之前的 Filco 来说要好很多,但或许现在市面上所有的蓝牙键盘都该有这样的表现吧。

电池仓设计

与常见的国产锂电充电设计不同,日产键盘特别喜欢使用干电池作为无线键盘电源,而我也确实喜欢这样的设计,因为只有这样才能真正意义上实现 24 小时全天候无线使用。

缺点

价格昂贵

在国产及客制化键盘百花齐放的今天,再来看 REALFORCE 等大厂品牌的产品定价,我个人认为是不值的,并不会因为自己买了这把键盘就一定要盲目吹捧。无论是静电容键盘本身的工艺水平还是产品细节的设计,都很难说配得上这 2000 多块的价格。唯一的理由恐怕就是在专利壁垒之下,抛开传统机械键盘之后,你所能作的为数不多的选择了。

尴尬的节能模式

难以想象一把无线键盘居然没有任意键唤醒的功能,而是专门设计了一个唤醒电源键。每一次回到电脑前准备工作时,你都不知道该要按字母键还是那个生硬的电源键。当然你也可以选择在驱动里彻底关闭节能模式来实现任意键唤醒键盘,但这也意味着你的续航时间将大打折扣,这对于一把无线键盘来讲显然是不可接受的。

黑色热升华键帽

键帽本身的触感是非常棒的,但是黑色热升华字符辨识度实在是不高,我已经记不清有多少次低头去找数字键了,可能这个更应该归结于是我人的问题。另外 R3 的键帽缝隙特别容易粘灰,而黑色键帽粘灰后又特别明显,如果你有洁癖的话,这点可能需要注意了。但是同样是黑色键帽的 R2 就没有那么粘灰,可 R2 的磨砂键帽也有一个新问题,那就是汗渍明显,也许我当初更应该选白色键帽的。

键盘额头尺寸偏大

R3 一改 R2 的设计,给键盘留了一个巨大无比的额头,可能是为了给无线模块以及电池仓留下足够的空间吧。但是作为一把无线键盘,我觉得应该尽可能的少占用桌面空间不是吗?

略显鸡肋的 APC 模式

这个所谓的 APC 可调键程模式,我觉得更像是因为不想浪费静电容这种独有的特点而做的设计,而绝非是因为它真的有多么的实用。毕竟它只是改变触发键程而不是压力克数,有且只有固定的四种键程模式,四种键程模式下的输入体验差别说实话也不是特别的明显。但不管怎么说这是普通机械键盘无法实现的功能,所以才会被保留下来作为卖点吧。但是相比较最近渐渐流行的可高度自定义的磁轴键盘,静电容这点功能就显得太小儿科了。

REALFORCE R2 TKL for Mac (R2TLSA-US4M-BK)

REALFORCE R2 TKL for Mac

优点

类肤质涂层键帽

这是我最喜欢 R2 的地方,虽然激光蚀刻键帽会有磨损的问题,但是架不住它好看啊,这种哑光类肤质涂层外观,简直无可挑剔。这也是我偏好量产键盘的原因之一,尽管现在客制化键盘套件设计都很出色,但是键帽的选择更多的是使用者个人风格的体现,而市面上的键帽一般都太过于个性化,只能说是各有所好吧。所以整体感更为强烈一些的量产键盘反而更得我心,包括像用着拉胯 Cherry 轴的 Filco,它的键帽却非常出色,以至于有人会专门收原厂键帽替换使用,如果你用过 Filco,你一定会明白这种感受。

与 Apple 键盘风格一致的 Mac 配列

值得一提的是,Mac 版本的 R2 的 X 键与左 command 键是对齐的,这点和苹果原装键盘是一样的,而市面上绝大多数的 Mac 配列键盘都没有这样的设计,包括 R3 也没有做到。其实我对这点倒不是很在意,但是在网上经常会看到别人提起。

缺点

长时间输入手感偏硬

总觉得 R2 的手感在长时间输入后似乎不如 R3 流畅绵软,而是显得干涩乏味,甚至会让人忘记自己用的是静电容键盘的感觉,不知道是不是自己的错觉。我觉得这个问题,可能更多是因为键帽质感差异导致的。

类肤质涂层键帽

虽然外观无可挑剔,可惜影响了键入手感,并且有磨损的可能。另外如果你是汗手,那么会特别容易在这款黑色键帽上留下汗渍。

同样鸡肋的 APC 模式

与 R3 同样的功能,同样的鸡肋。

排查在 Linux 下使用 L2TP VPN 无法连接的问题

L2TP VPN under Linux

检查 NetworkManager 日志

如果你在 Linux 下使用 L2TP VPN 时遇到无法连接的问题,提示:

Activation of network connection failed

可以通过检查 NetworkManager 日志来尝试定位问题,以 Fedora 38 为例,查看日志:

journalctl -u NetworkManager.service

如下列日志中提示,内核中没有打开 L2TP 的支持:

Aug 06 01:09:09 fedora38 NetworkManager[5932]: xl2tpd[5932]: Not looking for kernel SAref support.
Aug 06 01:09:09 fedora38 NetworkManager[5932]: xl2tpd[5932]: L2TP kernel support not detected (try modprobing l2tp_ppp and pppol2tp)

打开 L2TP 内核模块支持

注释掉 /etc/modprobe.d/l2tp_netlink-blacklist.conf/etc/modprobe.d/l2tp_ppp-blacklist.conf 两个文件中的 blacklist 行,或使用命令:

sudo sed -e '/blacklist l2tp_netlink/s/^b/#b/g' -i /etc/modprobe.d/l2tp_netlink-blacklist.conf
sudo sed -e '/blacklist l2tp_ppp/s/^b/#b/g' -i /etc/modprobe.d/l2tp_ppp-blacklist.conf

打开内核模块支持并重启即可。这里 L2TP 内核模块之所以默认被列入黑名单是 Linux 为了提升系统安全性,以及防止未来可能出现的安全漏洞而做的选择。

更多的错误信息

如果 journalctl 命令提供的错误信息还不够详细,可以使用以下命令并尝试连接 VPN:

sudo /usr/libexec/nm-l2tp-service --debug

根据错误提示来修改对应的配置,比如你在 VPN 配置中使用了不支持的加密算法时,就可以在这里看到,只要将对应的算法从列表中删除即可。