一年前在《Google域名福利终篇》提到 Google 将整体域名业务出售给 Squarespace 。域名价格从 TRY195+ 涨到 TRY400+,比较价格优势荡然无存。这一年多时间里,经综合评估性价比后,我陆续转出了部分域名到 Cloudflare 。

近期有域名到期,因此今天我再次进入 Squarespace 准备将临期域名转移到 Cloudflare 。看到 Squarespace 面板上依旧简约地标注着“Add year for TRY400”心想:这价格还是贵。不过身体鬼推神差地将鼠标点选页面上的”TRY400”,顺手Google出价格。

土耳其里拉汇率图

搜索结果如上图。

好家伙,一年多时间,土耳其新里拉居然跌成这个熊样。马上查最新的域名转移及续费优惠比价清单,如今域名常规优惠低价基本都压在 $10 附近。虽然 Squarespace 价格依旧是 TRY400,通过汇率差实际价格从原来的 $12 跌到 $9.64 ,比较起来价格优势已经出现了。于是,我把计划转移的临期域名直接在 Squarespace 上续费作罢,相比 Cloudflare 不但价格能便宜一点,还省事。

友情提示

  1. Squarespace 收购 Google Domain 后差强人意,搞不好有再次被出售的风险。
  2. 除非本身有米在 Squarespace,不建议盲目转入。
  3. 关注付款方式,大部分信用卡(如万事达和VISA,PayPal)汇率转换(如国内的信用卡外币信用额度一般只有美刀,消费美刀以外的外币实际计算方法是把消费的币种先转换成美元计算)需要手续费,费用一般是账单金额的 2% - 8% 。

需求

对于偏爱折腾电子产品的中年男人,拆装电子设备的工具必须配置齐全的。不过,由于使用率偏低,而且受成本因素影响,我至今未增设点焊机。

近日,常使用的短途出行工具GY6小型摩托车频繁出现打火不顺畅的故障。经过排查是电瓶故障引起的,因使用率偏低(一周大概骑行2天,总路程大概10KM),电瓶由于长时间无法及时进行充电,长期亏电损耗导致的容量下降,一般解决方案是修复或者更换新电瓶。观察电瓶生产日期,使用仅大半年,不至于会出现电瓶内部隔板损坏的情况,倘若直接更换有点浪费,因此尝试使用电瓶脉冲修复工具对其进行修复。经过数个小时的修复工作,电瓶容量虽恢复到能用水平,但实测撑不过超一周的停车自然损耗。每次出现亏电无法打火情况便需要拆卸电瓶回家进行数小时修复充电,显然这不是科学解决方案,眼下购置应急启动电源成为一个优选方案。
GY6电瓶

优选法拉电容方案

常见的应急启用电源方案:

方案一:锂电池电芯

这个方案和日常用的移动充电宝类似,使用锂电池作为电源,提供较大电流输出实现启动车辆的效果。还有一个优点,日常不用的情况下,还能当充电宝使用。缺点也比较明显,和锂电一样需要定期对其进行充放电维护,且日历寿命较短。

方案二:法拉电容

这个方案使用多个大容量法拉电容进行串并链接组合使用,提供短时间大电流输出实现启动车辆的效果。优点是寿命长,日常无需维护,因此无法当充电宝使用。缺点也比较明显,需要先进行充电后才能使用,充电后能使用次数较少。

应急充电宝技术原理是提供短时间大电流输出,这和点焊机是一致的,因此两个需求的方案可以综合一起进行筛选。因为日常车辆维护会对电瓶健康情况进行检查,这些年需要小车进行应急启动的次数真的屈指可数,而且目前汽车保险公司均免费提供汽车搭电服务,因此个人自备应急启动电源作为汽车应急使用算是伪需求。

方案容量充电时间寿命单次可用价格
锂电芯≥8000mha5V2A,≥4小时3-5年充电一次500焊¥150
法拉电容摩托车50F,小车200F电源16V5A:50F,3分钟;200F,12分钟;10年单次焊接回电大概1-2秒50F,¥60,只能启动摩托车;300F,¥200,大部分汽车

综合上表,最终我选择50F的超级电容方案,实测能启动3次摩托车,点焊基本能秒回电。如果本身有应急启动电源,直接买点焊板会更划算。

组装和物料费用

物料参数价格渠道备注
法拉电容2.7V,6串,带均衡板60海鲜市场
充电板16V5A5.3首富家
外壳200x120x1139.7首富家
端子EC5x1,XT60Ex1,18首富家、PDD
电压表DC4-100V4.6首富家
点焊板K838PDD
搭电钳EC5,50CM15PDD
192

电容预充电

点焊板

组装前调试

焊接2个21700试手

组装了个充电宝

建议和提醒

DIY电子产品有风险,并不适合大部分人使用,综合成本并没有太大价格优势,请谨慎选择。如无法评估自身动手能力,请选择合格的厂家生产的成品。


概况

家里的NAS是我主要文件存储系统,Aria2作为日常常用下载工具也一同部署在上面。

该Aria2以docker容器的形式部署,这样可以带来更好的独立性以便于日常维护。由于众所周知的原因,尝试过一段时间通过openwrt对其进行留学分流,但效果不是太理想。总会发生偶发性的偷跑流量情况,且会损失部分下载速度。为避免钱袋受到伤害,最终还是把Aria2设置为直连方式下载。

aria2NG

直连方式也带来一个问题:部分种子在墙外被限制直连,若直接将链接地址发送到Aria2,是无法被正确下载的。每次遇到这种情况,我只能先通过浏览器把种子文件下载下来后,再通过Aria2NG发种子发送到Aria2进行下载,显得比较繁琐。Aria2NG也有一个问题:每次只能上传一个种子。如果有多个种子文件,操作就显得相当机械繁琐而无趣。我想,能不能一步到位直接把下载好的种子文件统一推送到Aria2自行下载呢?搜索了一下,果然有老哥为此建了个项目,该项目是通过xmlrpc的方式管理Aria2,但缺少密钥验证功能。因此我拿该大佬的项目改了一下,以支持密钥验证方式。有需要的朋友可以直接抄下作业。

实现我需求的思路主要是两个部分,第一部分是脚本处理,第二部分是系统快捷键的部署(我的是MacOS,win部分可能需要一些系统快捷键软件支持才能实现)。

批量提交BT文件到Aria2

脚本

import xmlrpc.client
import xmlrpc
import os
import argparse

def handle(s, btFile, token):
    print('handle bittorrent file: ', str(btFile))
    token = "token:" + token
    ret=s.aria2.addTorrent(token,xmlrpc.client.Binary(open(btFile, mode='rb').read()),[],{'pause':'true'})
    print("add bt: ",str(ret))
    waiting = s.aria2.tellWaiting(token,0, 1000,
                              ["gid", "totalLength", "completedLength", "uploadSpeed", "downloadSpeed", "connections",
                               "numSeeders", "seeder", "status", "errorCode", "verifiedLength",
                               "verifyIntegrityPending", "files", "bittorrent", "infoHash"])
    for w in waiting:
        gid=w['gid']
        if gid!=ret:
            continue
        #print(w['gid'],w['files'])
        # max-selection strategy
        maxLen=0
        maxFPath=''
        maxFIndex='0'
        for f in w['files']:
            #print(f['length'],f['path'])
            if int(f['length'])>maxLen:
                maxLen=int(f['length'])
                maxFPath=f['path']
                maxFIndex=f['index']
        print('max file: ',str(maxLen),maxFIndex,str(maxFPath))
        # max-selection strategy end
        cret=s.aria2.changeOption(token,gid,{'select-file':maxFIndex})# select multiple files example: 'select-file':'5,6,7,8'
        print('select file: ',cret)
        tret=s.aria2.tellStatus(token,gid)
        print('after selection: ', tret['files'][int(maxFIndex)-1])
        uret=s.aria2.unpause(token,gid)
        print('unpause: ',uret)
    print('over: ',str(btFile))



if __name__ == "__main__":
    parser = argparse.ArgumentParser()
    parser.description = 'bt批量导入aria2,并选择文件大小最大的文件进行下载'
    parser.add_argument("server", help="like: http://192.168.3.99:6800", type=str)
    parser.add_argument("token", help="验证密钥", type=str)
    parser.add_argument("dir", help="存放种子目录", type=str)
    args = parser.parse_args()
    s = xmlrpc.client.ServerProxy(args.server+"/rpc")
    flist=os.listdir(args.dir)
    for i in range(0, len(flist)):
        if flist[i].endswith(".torrent"):
            btFile = os.path.join(args.dir, flist[i])
            if os.path.isfile(btFile):
                handle(s,btFile, args.token)
    print("Done")

使用方法

把上述代码保存为bb2a.py,需要使用Python3运行。

帮助(Help):

python3 bb2a.py --help

启动(Start to Add):

python3 bb2a.py <server> <token> <bt-dir>

参数(parameters):

server      如(like): http://192.168.3.99:6800
token       验证密钥:设置在Aria2配置文件的密钥
bt-dir      bt文件的目录(the dir of your bittorrents)

例子(example):

python3 /path/to/bb2a.py http://192.168.1.100:6800 123456 /home/root/bts/

MacOS增加快捷指令

command + 空格,在快捷运行窗口输入“快捷指令”打开系统的快捷指令模块。点击窗口右上角➕新增一个快捷指令。
新增快速指令1.png

按照下图方式创建快捷指令内容
新增快速指令2.png

参考shell内容如下,请按照自己配置情况修改相关参数。sleep 3是暂停3秒。后面的rm命令是顺便删除下载目录中的bt种子文件。

python3 /Users/ccchen/autobt/bb2a.py http://192.168.12.5:6800 123456 /Volumes/FAT12T/down2025/
sleep 3
rm -f  /Volumes/FAT12T/down2025/*.torrent

按窗口右上角的详情按钮,设置快捷指令的允许执行shell权限。
新增快速指令3.png

最后给快捷指令设置快捷键.我设置的快捷键是“Ctrl + Option + W”这个组合键。
新增快速指令4.png

完结

到此,所有配置已完成。只要下载bt种子到对应的目录。完毕后按快捷键“Ctrl + Option + W”,脚本便自动将该目录中所有种子文件发送到aria2进行下载。同时会把下载目录中对应的种子清理掉。


接上次硬撸ROS失败。平衡需求和成本预算,最终还是决定选择虚拟机方案。

硬件选择

需求:

  1. 设备放置在弱电箱
  2. 作为家庭互联网接入的主要设备,同时兼顾局域网设备通信的核心路由及数据交换服务
  3. 满足宽带双拨的千兆解决方案

通过上述需求分析,进行简单筛选。主流工控方案,N5105和N100进入了我的最终抉择名单中。通过性能对比,N100方案比N5105方案领先那么一丢丢,成本也贵约莫100块。通过和博友往记的讨论,最终敲定了N100方案,主要是基于自身对ROS的特殊使用需求。

具体配置如图:

N100配置

伪开箱

目前首富家开售的N100方案分为两类:一类是小主机;另一类是工控机。观感主要区别在于外扩接口的差异。由于我需求的主要功能是用作软路由,因此选择4网口版本。外观照片走一波:

蓓控N100

蓓控N100_散热器

蓓控N100_前面板

蓓控N100_网口

安装部署

开箱后进行简单硬件测试,没有发现问题,开始装机。

内存测试

厂家预装了iKuai软路由系统,其实一般家用应用需求其实也能满足,但我是个爱折腾的人,目标自然是ROS。由于设备单跑ROS性能相对会比较富余,因此我决定以虚拟机方式部署ROS,作为前瞻部署为日后功能扩展预留空间。母鸡系统使用的是自己比较熟悉的PVE。

轻车上路,很快就安装完了。
PVE

简单配置了ROS,并进行一些基本测试,基本满足日常使用需求。没有出现之前使用WR330撞到硬件性能墙的问题。

ROS

网络测速也能跑满运营商的宽带。
测速

2.5G网口也能聚合到局域网交换机上跑满端口带宽
聚合测速

待机功耗也在预期范围内

功耗

使用感受

经过1个月的使用,基本能满足家里日常使用需求。

在选择前博友往记也曾提醒过我N100发热量比较大,若放在家里的媒体箱可能应付不来。刚开始我还想一个TDP不是只有6W的小盒子,能有多少热量?

结果现实狠狠给我一记大嘴巴。广州今年夏天确实比较热,放媒体箱一天不到就热挂了。一摸散热外壳,这温度能烤鸡蛋牛排。最后硬着头皮给媒体箱加装散热风扇,顺便改造媒体箱风道,机器的外壳温度才终于稳定在50度以内。

总体而言,本次折腾达到预期。


两年多前,通过切换币种结算方式可以获得 Google 域名服务的大折扣,让人意想不到的是这个状态能持续这么长一段时间。当然,在此期间,Google 曾发布“有关 Squarespace 收购 Google Domains 注册业务”的消息,也预告这优惠状态的终结时间不会太远。

Squarespace Domain

影响

优惠政策刚出现的时候,我便把名下大部分域名转移到 Google 上托管

打去年其出售协议达成后,便不能再在 Google 注册或转入域名,不过原来托管的域名可继续执行续费和转出操作,且依旧保持原有费率。由于我对部分域名进行了最大期限的续费,倘若转出到新的注册商,也无法再增加年限。为节约持有成本,将该部分域名继续托管在 Google 中,因此拖到最后期限(2024 年 5 月 15 日)被全部迁移到 Squarespace 中。经过核对,没有发现域名丢失的情况。当前已无法再通过 Google Domain 管理域名,后续域名管理操作必须使用 Squarespace 管理面板。

Google Domain 提示

现状

域名被迁移到 Squarespace 后,可以通过 Google 验证方式直接登录 Squarespace 站点,原来 Google Domain 持有的域名便在 Squarespace 域名清单中。遗憾的是,Squarespace并未提供中文服务(这应该对于一般使用者影响不大)。

被迁移到 Squarespace 的域名,目前仅提供转出服务,不支持主动续费功能,无法通过主动续费增加年限,因此并不知晓续费价格。不过,为避免域名到期,它提供自动续费功能,只要域名到期系统便会自动续费 1 年,而且上面显示的价格和在 Google Domain 时的价格一致。

自动续费

通过 Squarespace 主页尝试注册新域名,发现价格和原来 Google Domain 定价差别很大。因此有理由推断将来其域名政策难以保留 Google Domain 时期的优惠措施。

演示费率

不知道是否由于太多人薅土耳其支付优惠的羊毛这个原因,Squarespace 提供了土耳其语的 BETA 版本服务。我们是否可以由此做个猜想:有一定概率原来 Google Domain 的域名会持续享受原来的优惠?

对于域名去留问题,个中风险请自行斟酌。

语言选项

操作建议

  1. 为避免丢失域名,如果是贵重的域名,建议适时转出 Squarespace 。
  2. 尽快对 Squarespace 账号设置二次验证登录,避免域名被盗取。
  3. Squarespace导入了原来 Google Domain 的支付方式,如非必要切勿修改,Squarespace 貌似不支持 TRY 付款方式,切换到其他币种后将无法切回,这可能会导致自动续费失败。

更新于2024年12月29日,目前Squarespace最新的域名更新价格是TRY400(折美刀12,软妹币84),这个价格已经没有优势了。

Squarespace最新续费价格