Linode开启Google BBR的正确方法

熟悉科学上网的同学可能会知道,由于境内外网络环境复杂,延迟高、丢包率高,许多基于TCP协议的翻墙工具会存在传输速度低且不稳定的问题。这在很大程度上是因为,TCP协议可以使用多种拥塞控制算法,而最常用的CUBIC算法存在着无法全速发送数据、易被丢包干扰、容易产生锯齿状波动等问题。因此,各种TCP单边加速工具层出不穷,如锐速(Appex)、ZetaTCP。但这些工具需要较高的运行权限且大部分是收费使用并不开源,因此从安全、成本和可靠性的角度会让使用者有更多顾虑。

好在,2016年09月,Google向Linux Kernel提交了Google BBRPull Request。Google BBR是一种新的TCP拥塞控制算法,在Google的内部广域网(B4)中已经进行了广泛的测试,该算法可以充分利用网络带宽,特别是可以在20%以内丢包率下保持较高的带宽(相关论文)。

BBR对比CUBIC

继续阅读全文

免费申请使用SHA2签名算法的SSL证书

从2013年开始,我的博客就开始使用StartSSL的免费SSL证书,尽管是Class1级别的,但对于个人博客还是很够用的。

最近为另一个域名续期(重新申请)SSL证书时,却发现了一些问题。我按照网上的教程申请了SSL证书,并添加了中间证书,但在Chrome 41下显示证书存在问题:

使用SHA1签名算法的SSL证书在Chrome下出错

这是为什么呢?

继续阅读全文

修改BIND9实现TCP DNS

近日适逢某平方节日,Google国外网站陆续出现被墙的状况,想必大家都是知道的。

其实本人一直在使用SSH的Socket代理功能爬梯子,效果还是不错的,加上学校有原生IPv6支持,就算不走代理一般也能上各大网站。唯独有一点,不论是浏览器还是操作系统,DNS均使用了UDP协议,而UDP显然是无法走Socket代理的,所以对于Youtube、Facebook这些网站由于域名解析问题,仍旧无法访问。

功夫网

不过,事情总有解决的办法。

继续阅读全文

利用NAT64和DNS64技术为网站添加IPv6支持

在IPv4资源越来越紧张,GFW越来越高的情况下,IPv6是大势所趋。

NAT64\DNS64流量图

目前对于VPS,可以利用HE IPv6 Tunnel Broker实现网站对IPv6的支持,类似的教程也有很多。但这种实现方法有一定的局限性,第一要求必须是VPS,无法运行shell的虚拟主机等无法实现;第二对虚拟化有一定的要求,对操作系统也有要求,不一定完全支持;第三因为需要root权限,对于合租之类也有其不便之处。
在这里我要介绍一种办法,仅需要在DNS中添加一个AAAA记录即可实现对IPv6的支持,方便快捷。

继续阅读全文

使用财付通境外支付免信用卡注册Amazon Web Services

Amazon公司推出的Amazon Web Services(AWS)面世已经时间不短了,作为全球最著名的云服务提供商,提供了免费使用一年的优惠政策。特别是EC2加入了东京和新加坡结点,访问速度快,成为非常适合小型网站的入门级VPS。本网站(https://malash.me/)目前已在AWS上托管了近一年之久,期间运行较为稳定。

不过美中不足的是,AWS服务的注册必须绑定VISA、MasterCard、American Express等国际信用卡,不支持国内最为流行的银联。而对于很多人来说获得一张信用卡还是比较困难的,因此无法体验到AWS的云服务。
使用财付通境外支付免信用卡注册Amazon Web Services

为了解决这个问题,我尝试使用财付通提供的国际支付功能生成美国运通(American Express)虚拟信用卡,进一步成功开通了AWS账号。使用这种办法,仅需要有普通银行储蓄卡即可,非常方便。

财付通生成的美国运通虚拟信用卡

财付通生成的美国运通虚拟信用卡

继续阅读全文

物理实验计算辅助工具PhyCacl

PhyCacl是基于网页的物理学实验计算辅助工具,可以便捷快速的完成多种数据处理问题,如一元线性回归、逐差法等。目的是方便大学生完成大学物理实验的实验报告数据分析。

项目网址:https://malash.me/project/phycacl

PhyCacl

PhyCacl首页截图

截止目前(2012年11月9日)最新版本为v0.2版。

本项目由本人(Malash.me)和Karezi编写。目前处于测试阶段,后期将开源并做项目托管。

这篇文章主要从技术的角度说明一下PhyCacl的原理。

继续阅读全文