Ask        RSS    SEARCH

================================================================================

Ruqi's Log

================================================================================

( 李如其的博客. 关于我  )

================================================================================

05/17/2013 02:08:59

左上智齿,今天中午拔了…

左上智齿,今天中午拔了…

--------------------------------------------------------------------------------

04/28/2013 05:09:57

fqrouter: Android 版 fqrouter-1.8.0 发布

fqrouter:

fqrouter的初衷在于不想让大家再去寻找各种不同设备的翻墙方式了,只要有一个翻墙路由器,其他设备连上就能科学上网。所以无论是多么困难,fqrouter还是在android设备上实现了无线中继,让手机变成一个无线中继路由器。但是这也让不少朋友伤心了,因为他们的设备的硬件不支持,无法享受到一人得道鸡犬升天的好处。为此我也非常不满意,于是在1.8版开始,添加了一个叫 Pick & Play 的功能。使用菜单键调出 Pick & Play 功能会扫描出一个局域网里设备的列表。点击该设备,就可以让那个设备通过fqrouter科学上网。

--------------------------------------------------------------------------------

11/04/2012 09:36:26

喻家山上的夕阳

喻家山上的夕阳

--------------------------------------------------------------------------------

08/18/2012 03:09:00

China is blocking out-going udp DNS queries & caching/faking response

2012年8月16日上午11点25分左右,国内发生了一次网络故障,DNS无法解析。几分钟后恢复。我猜大概这一切是从那时开始。

刚发现的,你在国内不论设置哪个国外的DNS,获取的解析结果都是一样的:

$ dig plus.google.com @8.8.8.8

;; QUESTION SECTION:
;plus.google.com.		IN	A

;; ANSWER SECTION:
plus.google.com.	32538	IN	A	74.125.155.102

;; Query time: 1 msec
;; SERVER: 8.8.8.8#53(8.8.8.8)
;; WHEN: Sat Aug 18 14:56:03 2012
;; MSG SIZE  rcvd: 49

甚至请求一个没有做DNS服务的IP,也能很快返回结果:

$ dig plus.google.com @66.6.44.4

;; QUESTION SECTION:
;plus.google.com.		IN	A

;; ANSWER SECTION:
plus.google.com.	32419	IN	A	74.125.155.102

;; Query time: 6 msec
;; SERVER: 66.6.44.4#53(66.6.44.4)
;; WHEN: Sat Aug 18 14:58:01 2012
;; MSG SIZE  rcvd: 49

而在日本VPS 上:

# dig plus.google.com  @8.8.8.8

;; QUESTION SECTION:
;plus.google.com.		IN	A

;; ANSWER SECTION:
plus.google.com.	244	IN	A	74.125.235.110
plus.google.com.	244	IN	A	74.125.235.97
plus.google.com.	244	IN	A	74.125.235.102
plus.google.com.	244	IN	A	74.125.235.96
plus.google.com.	244	IN	A	74.125.235.105
plus.google.com.	244	IN	A	74.125.235.104
plus.google.com.	244	IN	A	74.125.235.98
plus.google.com.	244	IN	A	74.125.235.99
plus.google.com.	244	IN	A	74.125.235.100
plus.google.com.	244	IN	A	74.125.235.101
plus.google.com.	244	IN	A	74.125.235.103

;; Query time: 38 msec
;; SERVER: 8.8.8.8#53(8.8.8.8)
;; WHEN: Sat Aug 18 15:02:56 2012
;; MSG SIZE  rcvd: 209

#  dig plus.google.com @66.6.44.4
;; global options: +cmd
;; connection timed out; no servers could be reached

然后,我在本地往VPS 发UDP DNS 请求,VPS上没抓到包。

TCP DNS 查询目前没受影响。不走代理的条件下,目前只有TCP 查询能获取正确的解析结果。(上一篇博文提到的iptables设置和DNSCrypt 都已实效)

某墙已经封锁了所有部分出国的upd DNS 查询。

中国互联网域名白名单的时代,在大家没有丝毫察觉的时候,到来了。

--------------------------------------------------------------------------------

08/05/2012 13:56:00

如何本地避免GFW的DNS污染

最近看了 IGFW 上的如何不受DNS污染,讲的是做VPN服务器的VPS 配置方法。我来说下目前我知道的各平台上,本地避免DNS 污染的方法。

DNS污染的原理部分,参考这篇 深入理解GFW:DNS污染。本地避免污染,有两个思路:

  1. 通过加密方式,查询可信的DNS服务器
  2. 设置国外DNS服务器,并丢弃GFW DNS伪包

第一种思路下,目前比较靠谱的是 DNSCrypt,支持Windows (下载)和 Mac(下载)。DNSCrypt 使用很方便,把 Enable OpenDNS、Enable DNSCrypt 全勾上就好,也建议勾上 Fallback to insecure DNS。

第二种方式,Windows上不好弄。Mac 和 Linux 都有办法实现。前提是设置国外DNS,继续推荐台湾中华电信的168.95.1.1 。然后:

  • Mac:安装 kernet 内核扩展(下载),我自己做的,开机自启动,风险自负。
  • Linux:西厢计划项目做了这一部分,不过编译内核模块毕竟麻烦。2.6.33.7 以上版本的内核(不保证这是最低版本),依赖 iptables 1.4.10,都会自带u32 模块,可以用iptables 规则做丢弃GFW DNS伪包:
    iptables -I INPUT -p udp -m udp –sport 53 -m u32 –u32 “0&0x0F000000=0×05000000 && 22&0xFFFF@16=0x5d2e0859,0xcb620741,0x0807c62d,0x4e10310f,0x2e52ae44,0xf3b9bb27,0xf3b9bb1e,0x9f6a794b,0x253d369e,0x9f1803ad” -j DROP
    iptables -I INPUT -p udp -m udp –sport 53 -m u32 –u32 “0&0x0F000000=0×05000000 && 22&0xFFFF@16=0x3b1803ad” -j DROP
    设置联网自动加载iptables 配置:Ubuntu下,可以把以上规则写入 /etc/network/if-pre-up.d/iptablesload 文件。其它Linux发行版应该也有类似的方法。强烈建议淘宝上卖自制路由器的同学们,把这个防火墙规则写到路由器中,也能多一个卖点。

另外,继续推荐IGFW博客。顺便推广下自己做的 IGFW墙内镜像,有点慢,日独立IP过1000我就做服务器缓存(目前已经到500)。

2012.8.16 UPDATE: 测试发现 DNSCrypt 已经不能用了。

--------------------------------------------------------------------------------

07/18/2012 22:10:33

david:

Steve

Steve Jobs’ Vision of the World

(Source: parislemon)

--------------------------------------------------------------------------------

07/03/2012 19:13:00

拖延症

记得小时候,还在小学。周末两天假,都会布置作业,周一上午检查。周六觉得周天可以做完,周天上午觉得下午可以昨晚。于是拖到周日的黄昏,才会无比惆怅:时间大概不太够了。

之后的学业、工作、感情,很多事情让自己和他人不满意。一件件事情,快要结束时我才发现自己刚刚上手。浮躁,压deadline,让周围的人失望,让自己后悔。

生命马上走完25个年头。若我的人生也是如此草草拖延,那太可悲了。

2012.3.2 青岛 栈桥

--------------------------------------------------------------------------------

06/29/2012 08:53:59

Keychain access 的导出以及导入

换一台Mac 机器后,Xcode 通常是不能用设备测试。需要证书、私钥等等。

不要上stack overflow 上搜索。上面有个鼠标点点点的方案很不靠谱。

把 ~/Library/Keychains/login.keychain 拖到dropbox 里,导出就OK了。然后在另外一台机器下载,并覆盖相同路径文件,导入也OK了。

然后重启Xcode 基本没问题。提示要输入密码的话,还得输入以前的密码。(但是不会修改sudo 密码)。

本来是小事,单浪费我不少时间。发在这里希望更多人看到,大家少走弯路吧。。

--------------------------------------------------------------------------------

06/24/2012 13:08:29

CentOS 5.8 - yum 直接安装 python2.6 之后的修复办法

好久没折腾服务器。

这两天为了搭建一个 loli.lu,需要python2.6,拿apt-get 的习惯,yum install python2.6,结果把一台CentOS 5.8 系统的VPS 的 python2.4 弄坏了。CentOS 5.8 系统还是很依赖 python 2.4,最直接的后果是 yum 无法使用。为修复python2.4 + yum 折腾了好久,写下自己的修复办法。

yum 安装 Python 2.6 之后,不小心把 /usr/bin/python2.4 弄坏了(不知道是我不小心覆盖了,还是yum 自己干的)。系统中似乎找不到这个python2.4 Binary 文件备份。所以得重新安装一个。

  1. 首选需要确认下自己的系统都有哪些python 包,似乎每个系统有不同的后缀:
    # rpm -qa python\*
    python-imaging-1.1.5-7.el5
    python-sqlite-1.1.7-1.2.1
    python-elementtree-1.2.6-5
    python-urlgrabber-3.1.0-6.el5
    python-curl-7.15.5-1.3.el5.rf
    python-2.4.3-46.el5_8.2
    python26-2.6.8-1.el5
    python-iniparse-0.2.3-4.el5
    python-suds-0.4.1-2.el5
    python-libs-2.4.3-46.el5_8.2
    python26-libs-2.6.8-1.el5
  2. 卸载python2.6. 我也不确定是否是必须,不过以防万一吧:rpm -ev python26-2.6.8-1.el5 python26-libs-2.6.8-1.el5
  3. 找你自己需要的 python2.4 的 rpm。这一步其实比较麻烦,找错了安装会缺少很多依赖。一开始借助搜索引擎,怎么都找不到;后来在 http://rpm.pbone.net/ 上,直接用 “python-2.4.3-46.el5_8.2” 做关键词,才搜到结果。(搜索引擎上给的是64位的rpm)
  4. 先卸载 python2.4:rpm -e —nodeps python-2.4.3-46.el5_8.2.i386 . 注意 —nodeps 参数,卸载时不做依赖关系检查。因为很多东西依赖这个,不带参数会提示一堆包依赖这个python。
  5. 安装 python 2.4:rpm -ivh —replacefiles python-2.4.3-46.el5_8.2.i386.rpm
  6. 测试:
    # python -V
    Python 2.4.3 
    大功告成~

--------------------------------------------------------------------------------

05/18/2012 02:12:00
tumblrbot asked:ROBOTS OR DINOSAURS?
liruqi replied:

you are robot. I’m not.

--------------------------------------------------------------------------------

pg 1 of 5

================================================================================

Designed: Robert Boylan
Powered: Tumblr