闪星空间

利用 CDN 边缘节点显示客户端 IP 地址

有时候,我们需要在网页中显示访问者的 IP 地址。比如,需要获取某客户端的公网 IP,然后添加为域名的解析记录,使域名成为 DDNS 域名。如果是现成的 DDNS 服务,大概能从请求中提取客户端 IP 地址,而倘若是自行请求 DNS 服务商 API 修改记录,那就需要指定 A/AAAA 记录的值为何。

本文假定这样一个需求:直接在浏览器输入某个网址(或者用 curl 请求一个 URL),响应内容为客户端的 IP 地址。其实有很多现成的服务,自己搭一个也很容易。但是公开服务的可靠性存疑,自己搭又需要专门购置域名,配置服务器 vhost,似乎有割鸡用宰牛刀之嫌,因此借助 CDN 服务似乎是一条可行之路。

阅读全文 »

Published @

利用 HTTP 网页同步服务器时间

我常买 Linux VPS,有一套统一的初始化配置,一条条命令复制粘贴执行很有感觉。其中包括利用 NTP 进行时钟同步。但是有些服务商会屏蔽 NTP 协议,可能是出于安全原因。于是得另寻他法。

稍微搜了一下,发现有两条路,都是利用现有 HTTP 服务进行同步的。一种利用响应体(response body),一种利用响应头(response header)。很有意思。

阅读全文 »

Published @

旧版《百宝袋》

决定重整自己建设的网站,恢复博客正常的更新频率。稍微修改了《关于我》,看到《百宝袋》的内容已经相当过时了,索性整篇拿掉不要。拿掉之前先将内容存档在这里:

阅读全文 »

Published @

BuyPass 和 ZeroSSL,支持 ACME 自动化的免费证书

Let's Encrypt 可能是最著名的免费 SSL 证书服务商。然而,其根证书(DST Root X3)将于 2021 年 9 月 1 日过期。自 2021 年 1 月 11 日起,Let's Encrypt 的 API 会默认使用新的根(ISRG Root X1)签发证书。而新根大概于 2016 年才引进,兼容性就不太乐观了。你可以选择修改参数再用旧根撑一阵,或者另寻其他免费证书。

比如 BuyPass,早就支持 ACME 标准,提供免费 SSL 证书申请。最近,我在 acme.sh wiki 看到,ZeroSSL 也开始提供类似服务。两家都支持 ACME,也就是说,你不需要更换现有客户端(Cerbot、acme.sh 等),只需作少许改动即可切换至新的 CA,简单签发,自动续期。

阅读全文 »

Published @

耒阳话小研究存档

大约在高中时,鄙人对家乡方言耒阳话很感兴趣,试图对个中规律作研究,写了《试索耒阳话的写法和音标》草稿(后改名“耒阳话的写法和音标一说”)。当时本人语言学知识极度匮乏,甚至不知道国际音标可以为方言注音(当然,英语教学当中的“国际音标”是指 DJ 音标而非 IPA 音标,这又是后话了),因而研究方法也很不科学。其中内容稍后即被本人否定,因而草稿未能完成。

自我否定的重要原因是,鄙人在网络上看到有研究耒阳话的专著,即《耒阳方言研究》(钟隆林、王箕裘,巴蜀书社)。其内容之详实、方法之科学,是我等所不能及的;更重要的是,他们的研究是基于实践的,与鄙人依靠经验与空想大不同,以至于鄙人内心自嘲先前研究为“唯心主义”。十分推荐感兴趣的人去购买翻阅《耒阳方言研究》。之后,我节选该书内容,完成《耒阳话遇上普通话》,现在回想应该是向校报投稿所用。在此与上述未完成草稿一并附上,留作存档。

阅读全文 »

Published @

记一次 Windows 10 透明效果不生效

Windows Terminal 某次更新以后,透明效果消失。好像刚好碰上设置文件格式大更改,我尝试加入新的透明度设置项,无效。看官方 GitHub issues,好像没有人提。我以为只是个 bug,就先搁置了。到今天 Windows Terminal 已更新两次,我心想应该不是 bug。再去看 issues 页面,确实有人提。然后那个人说自己 Windows 设置没开透明效果,我看看系统界面,我也是。

但这没道理。我在“颜色”设置中已经明明白白将“透明效果”推到“开”。于是我尝试确定是不是透明效果没生效,以及如何解决。

阅读全文 »

Published @

通过 IPLC 利用 UDPspeeder 转发 DNS 查询

众所周知,有些场景下 DNS 查询受到污染(或者不严格地说,劫持),返回虚假的结果,比如不存在的域名也解析到广告 IP 地址,或者上游不遵循 TTL 约定胡乱缓存,或者干脆 1.1.1.1 就被劫持为内网 IP 地址等等。这种情况下,我们可能需要自建本地 DNS 服务器,通过可靠信道中转查询。如果你有 IPLC(“国际专线”),可以直接通过 IPLC 转发到公共 DNS 服务器(如 1.1.1.1:53),不过也许可以做得更好。

注意,本文内容不涉及“科学上网”,请勿向本人咨询相关问题。请确保合法应用本文内容,例如使用于公司内网、自有服务器。如无资质,在公网提供公共 DNS 服务涉嫌违规。

阅读全文 »

Published @

我的 WSL Bash Alias 文件

有人说 Windows 10 是世界上最好的 Linux 发行版,这当然是开玩笑的。不过 Windows 10 确实“内置”了一个 Linux,叫作 Windows Subsystem for Linux(WSL),或者如果有人纠结实质的话,得改叫 Windows Subsystem for GNU

总之我发现这个 WSL 还挺好用的,尤其是诸如 sshwhois 的命令用起来很方便,所以 WSL Bash 已经是我的默认终端了。另一方面,我觉得 CMD 的一部分命令也挺好用,比如 ipconfig。幸而,WSL(本文指 WSL1)允许与 Windows 资源互调用,可以在其提供的 Linux Bash 终端中执行 ipconfig.exe。如果想要更方便,就得用到 alias(别名)功能了。

阅读全文 »

Published @

系统使用暗色主题时使 Firefox 浏览网页保持亮色

我个人以前很喜欢黑色,恨不得一切都设成黑色、暗色的。最近发现,背景设成暗色可以,内容区域还是亮色为好。所以就有了这样的需求:操作系统设置使用暗色主题,浏览器使用暗色主题,但希望 Firefox 浏览器在浏览网页时,能优先提供亮色主题内容。

Firefox 在 67 引入了 prefers-color-scheme,这是一个 CSS media feature,用来检测用户的系统主题是亮色(浅色)还是暗色(深色)。一些网页会读取这个值,提供对应外观的主题。这里我想要网页忽略我实际的系统主题,假装我在用亮色。

阅读全文 »

Published @

HTTPS cipher suite 配置与检测

HTTPS 即 HTTP over SSL/TLS。基本配置完成后,关键是选择合适的 cipher suite(密钥套件)。

可以用 SSL Labs 的 SSL Server Test 检测 Web 服务器的 TLS 配置是否安全,证书链是否可信、完整,浏览器兼容性如何等等。也可以用国内的 MySSL,增加了一系列国内浏览器和搜索引擎爬虫(“蜘蛛”)支持。

阅读全文 »

Published @