桥接模式下 Openwrt 软路由直接访问光猫后台

光猫开启桥接模式后,软路由作为默认网关进行拨号与 NAT,导致客户端设备无法获取与光猫相同网段的 IP 地址,进而也就无法登陆光猫的后台管理界面。虽然在日常使用的过程中,光猫的配置几乎是一次性的,其后台管理界面的使用频率很低,但是每次登陆光猫后台都要通过有线或无线(若有)的方式将设备直接与光猫相连也着实麻烦。因此需要通过一些简单的配置,实现桥接模式下,连接软路由的同时可以随时访问光猫后台。 实现原理其实很简单,只要在现有 DHCP 服务端正常工作的前提下,为软路由的 WAN 口再行分配一个与光猫网段相同的 IP 地址即可,前提是你的软路由支持多 WAN。 以 Openwrt 系统为例,在“网络—接口”界面点击“添加新接口”,进入新接口创建页面。 接口名称随意填写,接口协议选择“静态地址”,包括的接口选择当前 WAN 口绑定的物理接口。注意,接口协议尽量不要选择 DHCP,因为桥接模式下的光猫基本都会关闭自身的 DHCP 功能,不会给新接口自动分配 IP 地址,所以此时需要通过“静态地址”协议来手动指定新接口的 IP 地址。完成上述配置后,点击“提交”按钮进入新接口的详细配置页面。 IPv4 地址一定要设置成与光猫位于相同网段的地址。例如光猫连接软路由的 LAN 口的地址(即光猫后台地址)为 192.168.1.1,那么这里新接口的静态 IP 地址就要设置为 192.168.1.x。子网掩码设为 255.255.255.0,默认网关就是光猫 LAN 口的 IP 地址。有关 IP 网段和子网掩码的相关知识,可以参考这篇文章。完成上述设置后,点击“保存&应用”按钮即可完成配置。 新接口配置完成后,DNS 缓存会有一定延迟,导致无法正常浏览网页,此时重启一下软路由即可解决问题。如果软路由之前配置了端口映射,则新接口创建完成后,所有的端口映射都将失效,此时仍需经过一番针对防火墙的额外设置才能恢复正常。 重新进入新接口的详细设置页面,在“防火墙设置”中,将原先 WAN 口的防火墙区域绑定到新接口。 然后进入“网络—防火墙—端口转发”页面,将原有的端口映射配置重新“保存&应用”一下即可。 至此,如果不出意外的话,我们便可在桥接模式下随时随地访问光猫的后台管理界面了。

2021-05-05 · Mason

利用 Parsec 实现远程游戏串流

最近,我终于放弃了 Steam 或 Epic Games 等平台的买断制游戏模式,转而投靠了 Xbox Game Pass (XGP) 这样的订阅制模式。尽管买断制可以极大地满足“喜加一”式的收集欲,但自从开始实习之后,我已经很难抽出整块的时间来通关各类单机游戏,以致于我的游戏库中屯了大量已购买的但未通关的游戏,这不仅降低了我购买和尝试最新游戏的欲望,也在资金上造成了很大的浪费。不知从什么时候起,玩游戏竟也成了一种待完成的“任务”,失去了工作之余放松心情的初衷。 因此,我纠结许久,终于决定以后不再购买任何单机游戏。如果某段时间我不是那么忙了(例如辞职在家的现在),就去订阅一个月的 XGP,体验一下最新的单机游戏。事实上,Xbox 账户是可以随时切换区域的。因此我们可以简单地通过将 Win10 的系统区域切换成香港的方式来享受港区 XGP 79 港元每月(首月10港币)的优惠价格。在一个单机游戏动辄就要三百块以上的当下,XGP 确实是一种非常合算方案。毕竟,一个月的时间,完全够我通关一个中型单机游戏,而买断这款游戏的价格远远不止 79 港币。 开通了 XGP 之后,我又开始琢磨如何在出差的时候利用“零碎的时间”玩游戏。例如驻场期间每天下班以后,住在酒店里的我只有一台性能羸弱的 MacBook,如何利用现有设备在酒店里玩上 XGP 上的单机游戏呢?其实解决方案只有一个:远程桌面。只要在家里的 PC 上开启网络唤醒功能,在将某款远程桌面软件设置成开机自动启动,我就可以在任何地方,通过网络唤醒 + 远程操控的方式随时随地游玩家里电脑上的游戏。 思路虽然很简单,但找到合适的远程桌面软件着实费了我一番工夫。经过仔细的搜索,我发现了一款叫做 Parsec 的远程桌面软件。它不仅同时支持 Windows 和 macOS 双平台,还专门针对远程游戏进行了优化。不仅如此,Parsec 还支持 Hevc 编码。只要客户端设备支持 Hevc 解码,就能大大降低串流数据体积,减少网络带宽和流量的消耗,提升远程游戏的体验。 Parsec 的使用方式非常简单,只要去官网注册一个账号并分别在服务端(用于运行游戏的设备)和客户端(用于远程操控的设备)下载安装 Parsec 客户端即可。在两台设备上同时安装并登陆软件后,软件界面应该是这样的: 此时只要点击相应设备上的 Connect 按钮即可建立远程连接了。但为了提升我们的游戏体验,在正式使用前还需要进行一些简单的设置。点击左侧的齿轮图标进入设置界面,将客户端设备的“硬件解码”和“Hevc 编码”功能打开即可。 连接成功后,软件会自动将被操控的设备调至静音,而将所有系统声音转到操控的设备上播放,这一细节非常人性化。经测试,在局域网(千兆带宽)环境下,两台设备基本可以实现零延迟的远程控制,但在广域网环境下,由于带宽和延迟的限制,远程控制略有延迟和卡顿,但仍能满足一些对操作要求不是那么高的游戏。例如,我最近正在补完的《歧路旅人》。这是一款“高清马赛克”游戏,且所有战斗均为回合制,非常适合远程游玩。 由于 macOS 原生支持 Xbox 和 switch pro 手柄,同时 Parsec 也能直接识别上述两款手柄的所有按键,因此在远程游戏时,可以直接通过将手柄连接客户端设备的方式来操控服务端的游戏。网络状况较好的时候,远程游戏的体验和本地几乎没有区别。

2021-05-02 · Mason

解决蜗牛星际B双安装黑群晖失败“文件已损毁(13)”

去年疫情期间,由于滞留家中实在无聊,我开始折腾软路由和 DIY NAS,而被折腾得最多的莫过于黑群晖系统。为此,我特意买来两台蜗牛星际(B双和C),其中B双用作软路由,C则用于黑群晖。时隔一年,忙于工作的我已不再有闲暇时间折腾黑群晖,而出于对数据安全和便捷性的考虑,我于今年年初购买了一台威联通的 NAS 主机。俗话说得好,黑群晖折腾到头,就会转去白群辉。但奈何威联通的性价比要比群晖高太多,因此我只好无耻地叛变了革命。 昨天心血来潮,想把放在角落吃灰许久的蜗牛星际B双刷成黑群晖,用作重要数据的冷备工具,平常都会处于关机状态,只有冷备的时候才会开机。由于我的B双之前一直都用作软路由,因此从来都没有刷过黑群晖。但鉴于蜗牛星际的配置都差不多,我简单地以为直接用之前C上现成的黑群晖引导U盘即可直接安装黑群晖系统。然而天真的我还是遇到了困难。 问题出在新系统安装的过程中,每当进度走到 56% 的时候,都会跳出编号为 13 的错误,提示“系统安装失败,文件可能已经损毁(13)”。为了解决这一问题,我尝试了很多方法,包括但不限于格式化所有硬盘(包括 SSD)以及更换各个版本的官方或非官方 DSM 安装包,但都不奏效,错误 13 依然存在。 最后,在电报群里高人的指点下,我终于解决了这一问题。其实,新系统安装的过程中之所以会出现错误 13, 是因为机器主板的 BIOS 没设置好。只要给主机插上键盘和显示器,在开机时进入 BIOS 界面(通常是在开机后显示主板厂商 logo 时按键盘上的 DEL 键进入),然后依次进入 Advanced—Miscellaneous Configuration—OS Selection,将 Win 7 改为 Win 8.x 即可。 忙活了半天,最后才知道原来只是这么简单的一个问题。为了不让后来的小白们像我一样浪费时间,特此记录一下。本文也谈不上什么教程了。

2021-04-23 · Mason

Openwrt Luci Openvpn 服务器多设备同时接入

我们日常使用的 Openwrt 软路由系统几乎都集成了 Luci 界面,它不仅可以为用户提供便利的可视化后台管理界面,还在各路大神的贡献下,适配了众多简单易用的图形化 App。Luci-app-openvpn-server 就是众多 Luci 应用中最常用的 VPN 服务器之一。 简单来说,luci-app-openvpn-server 就是 Openvpn 服务器端的 Luci 界面版本。有了它,你就可以告别难搞的命令行,通过图形化的网页直接配置你的 Openvpn 服务器端。结合各主流平台的 Openvpn 客户端软件,你可以随时随地接入自己家里的局域网,实现内网访问或文件传输等功能。 正常情况下,只要按照 Luci 界面的提示填写相应的配置信息,即可成功运行 Openvpn 的服务器端。此时只要点击“一键下载.Ovpn 文件”按钮,再将下载下来的配置文件直接导入 Openvpn 客户端软件即可开始使用。但 luci-app-openvpn-server 的默认配置支支持同时登陆一个客户端,当有第二个客户端尝试接入时,先前接入的第一个客户端就会被强制断线。然而在日常使用的过程中,多设备同时接入的情况是十分常见的,那么怎样才能使 luci-app-openvpn-server 可以同时接入多个设备呢? 其实,Openvpn 的服务端是支持多设备同时接入的。根据 Github 上这个 Issue 中的介绍,我们能够得知,只要在 Openvpn 的配置文件中加入一行代码,即可开启 Openvpn 的多设备同时接入功能: 具体如何操作呢?首先,用 ssh 工具登陆你的 Openwrt 软路由。具体的工具及方法可自行搜索,我日常使用的是微软官方发布的 Windows Terminal 终端工具。成功登陆 ssh 后,输入以下命令开始编辑 Openvpn 的配置文件: vim /etc/config/openvpn 如果没能成功打开配置文件的编辑界面,很可能是因为你的 Openwrt 系统没有安装 vim (一款命令行文本编辑器)。至于 vim 的安装方法,还请自行搜索,本文不再赘述。 进入配置文件的编辑界面后,按键盘上的 I 健进入文本编辑模式,将光标移到配置文件末尾,将以下代码复制粘贴到配置文件最后一行。 option duplicate_cn '1' 编辑完成后,按键盘上的 ESC 健,再依次输入以下命令保存并退出编辑器: ...

2021-04-13 · Mason

利用 Docker 搭建 Trilium Notes 服务器

由于平时需要处理大量结构复杂的内容,并且各内容板块间还存在相互交叉的引用关系,因此长久以来我一直在寻找一款既能满足需求,又简洁易用的内容管理工具。印象笔记或 OneNote 等笔记类服务似乎最为常见,但一来,将所有的私人内容存储在商业公司的服务器上总会让我缺乏安全感;二来这些软件要么不够轻便,要么对重要功能额外收费,因此一直都无法让我十分满意。 两年前,我接触到一款叫做 Notion 的跨平台软件,无论是功能还是界面都令我十分满意,但它的价格并不便宜,我毕竟不是靠内容吃饭的职业创作者,无论如何也不愿为一款笔记软件搞月付。另外,Notion 仍然无法实现在牢牢掌控内容数据的同时实现便捷的多端同步,这也是一个不大不小的遗憾。 直到今天,偶然在少数派这篇文章的介绍下了解到一个叫 Trilium 的 Github 开源项目,几乎完美地满足我的所有需求。首先,它是一个开源项目,支持自建笔记服务器,可以让我在牢牢掌控笔记控制权的同时实现多端同步;其次,它界面简洁,非常轻量,甚至可以丢掉客户端,完全实现网页端访问;最后,它完全免费,这点非常重要。 自从买了威联通 NAS 后,我越来越倾向于将自己的各种数据保存在 NAS 上,再通过各类开源软件实现多端同步。这样既能保证数据安全和个人隐私,又能方便地管理自己的文件和数据。用几千元的成本和少许的电费换得对个人数据的完全掌控,我认为是值得的。因此,在意识到 Trilium 提供开源的服务端软件后,我立刻开始本地服务器的搭建工作。 Trilium 的官方文档中提供了通过 Docker 安装 Trilium Server 的具体方式。但由于文档为全英文,且只提供了 SSH 命令安装的方式,一些新手阅读起来可能有些困难,因此本文将以图形化的方式简单陈述 Trilium Server 的安装方式。 首先,在你的 NAS 上安装 Docker 套件(在威联通的 QTS 中叫做 Container Station)并打开它。 进入“创建”,并在搜索框中搜索 Trilium,找到 zadam/trilium,点击右侧的“安装”。 在弹出的创建窗口中,点选“高级设置”,首先在“网络”选项卡中设置 Trilium 的端口转发,trilium 的默认 web 界面默认端口是 8080,因此 Container 的端口必须写 8080,而映射出的主机端口则可以根据自身需求填写。为了记忆方便,我倾向于内外端口一致的设置,即主机端口同样设置成 8080,但如果你的 NAS 的 8080 端口已被其他程序占用,请填写其他端口。 接着,在“共享文件夹”选项卡中,将一个共享文件夹挂在到 Trilium 的容器中。容器中的挂载路径必须写 /trilium-data,而本机共享文件夹则可根据自身需求进行选择,注意挂载共享文件夹的权限必须为读取和写入均有。 上述设置完成后,点击“创建”按钮,系统会自动下载镜像文件并根据你的配置安装容器。容器安装完成后,便可通过在浏览器中输入 NAS IP/端口的方式访问 Trilium 的 web 界面。初次使用 Trilium 时要进行一些简单的初始化设置,例如创建用户名和密码等。虽然界面只有英文,但非常简单,这里不做赘述。 ...

2021-03-20 · Mason