四叠半神话大系随想
August 11th, 2010
一口气看到四叠半最后一话最后一幕,忍不住放声大笑。是笑小津也有这样羞涩可爱的一面?抑或是笑“我”也会用妖怪式的表情和语气说出“这是我爱的表达”?还是说其实是从心底里对这样的结局,对“我”回归这样的平凡普通却又美好异常的生活由衷地感到高兴?
看到第十话时觉得这是一部对阿宅强力吐槽的片子。被自我束缚在无穷无尽的四叠半宅化绝对领域里,再也无法走出去体验普通的日常,就连最普通的家常米饭也能使其泪如泉涌(强烈的中枪感)。
跟无头骑士异闻录一样,四叠半神话大系所表达的东西也正是孤独时的我对生活的理解——普通人一般平凡的日常就是最好的生活状态。可是就像男主角们一样,当我曾自己拥有这样的平凡日常时,却并不满足于它。总是觉得自己做得失败,妄想我可以有更好的生活状态。结果呢,自然可想而知。虽然现在自说自话的我觉得自己已经醒悟了,想要结束这样浪费生命的轮回,想要找回那难得的平凡日常。可是,当我真正到达那一天时,真的会就此满足吗?
现在是吐槽时间:
最后一话“我”顶着历尽艰难困苦折磨终于获得救赎找到生命中唯一光芒般意味的 BGM 奋不顾身赤身裸体冲向小津的场景,以及最后一幕“我”腹黑地反受为攻逆推蹭得累小津的场景,都在强烈地表达其实这就是一部腐片吧!
说出“四叠半告诉我们,选了不同的路结局还是会一样”的某人,你的悲观还真是深入骨髓啊。
想起了 Aaron 的话,“解决的办法就是,去爱别人。”是啊,四叠半里的“我”也正是因为终于勇敢地跨出了那一步,主动去爱朋友,爱喜欢的人,才会迎来这样圆满的结局吧。
“良机一直都在你眼前徘徊,请一定要抓住它。”我也非常想要抓住它,可是我这样的普通人却总是看不清自己眼前的世界。那个一直不引人注目地隐匿于我生命中某个角落的明石,你在哪里?
PS: 写完发现取标题还真是麻烦,那么就用这平凡普通的标题吧。
标签:Anime使用 OpenVPN 服务器翻墙的相关问题解决
June 20th, 2010
前一段时间参照这篇在Ubuntu上搭建OpenVPN服务器,并配合Mac和Windows的客户端 (一)在自己的 VPS 上装好 OpenVPN 服务器后使用一直不太正常,这两天花了点时间调试解决,结果总结如下。调试期间多次得到 @yegle @ChandleWEi @Greendamn 和 @FretiaX 等推友的帮助,尤其是 @ChandleWEi 深夜还在我家现场调试 iptables,特此感谢。
MTU 太大造成的连接不稳定
症状
刚连接上 OpenVPN 只用浏览器打开一两个页面时速度很正常,但随着流量加大网络就会开始阻塞,直到完全无法连接任何服务器。而且与 OpenVPN 服务器之间的连接容易自动断开。
解决方案
在 OpenVPN 服务器的 server.conf 里加入 mssfix 1300。此方案由 @yegle 提供。数字应该是他多次测试得出的较优选择,我试过设为 mssfix 1400 自己的 PC 没问题,而朋友的机器会速度奇慢。
DNS 污染造成的部分墙外网站无法访问
症状
连接 OpenVPN 后 Twitter 可以正常访问,被严重 DNS 污染的 Facebook 则会被浏览器提示无法连接。
解决方案
在 OpenVPN 服务器上使用 iptables 强行劫持客户端对任何 DNS 服务器的查询请求,将请求的目标 IP 地址修改为墙外的 DNS 服务器,例如 Google 的公共 DNS 服务器 8.8.8.8 和 8.8.4.4。此方案参照 @yegle 的方案稍作修改,不需要 OpenVPN 服务器自己提供 DNS 服务。iptables 命令如下:
iptables -t nat -A PREROUTING -p udp --dport 53 -j DNAT --to-destination 8.8.8.8
残留问题
虽然这个近乎暴力的方式可以很有效并且是一劳永逸地从服务器端解决 DNS 污染问题,但还是有一种情况必须由客户端自己更改 DNS 地址。这种情况为,客户端的 DHCP 设备(一般就是共享上网用的路由器)为其分配的 DNS 地址与网关地址在同一个网段,或者通常就是同一个地址。这样就算是连接上 OpenVPN 后默认网关变成了 OpenVPN 服务器的 IP 地址,但由于 DNS 跟原网关在同一个网段,客户端的 DNS 查询请求还是会不进入 OpenVPN 而直接从原网关发出,导致得到被污染的错误结果。
解决方案
手动设置客户端的 DNS 地址为任意墙外 DNS 地址,例如 Google 的公共 DNS 服务器 8.8.8.8 和 8.8.4.4。
Windows UAC(用户帐户控制)导致 OpenVPN GUI 无法设置 OpenVPN 服务器为默认网关
症状
在服务器端解决了以上问题之后,客户端 OpenVPN GUI 可以连接成功。但仍然无法访问墙外网站,nslookup www.facebook.com 会得到明显被污染的 IP 地址。route print 可以观察到路由表中的默认网关没有 OpenVPN 服务器 IP 地址。
解决方案
关掉 UAC,或者以管理员身份启动 OpenVPN GUI。
标签:DNS 污染, FuckGFW, GFW, OpenVPN, 翻墙Twitter 入门指南
February 16th, 2010
本文尝试用较小篇幅(相对于 Twitter 新手使用教程)介绍 Twitter 的作用,基本功能和概念,以及作者个人的使用经验,以期帮助新手更快入门。
Twitter 是什么?
Twitter,中文音译“推特”,是一个社交性质的微型博客服务。你可以随时随地通过最多140字的状态更新发布任何信息。例如自己在干什么,在思考什么,或者自己接触到的任何有意思的东西。为什么要这么做?因为你的朋友或者志趣相投的人会对这些信息感兴趣。你们可以通过这样的信息交换、分享和交流更多地了解对方,找到更多共同话题,拉近彼此的距离,甚至是扩展人生的宽度。
另一方面,Twitter 的消息通常具有很强的时效性。有些时事信息其实就是当事人或者目击者使用随身的手机等移动设备发布出来的,然后通过 Twitter 的人际网络进行“病毒式”传播。因此可以说 Twitter 是比任何传统媒体都更实时,更透明的个人媒体。
Twitter in Plain English 这个不到三分钟的视频里有更生动但依然简单的解释。如果没有看到中文字幕,可以在播放器的播放按钮旁边选择 Chinese (Simplified)。
为什么是 Twitter?
选择 Twitter 的原因有很多。例如它没有内容审查;开放 API 并且有大量第三方客户端让你可以随时随地发布信息;它是微博的事实标准等等。但对于正在阅读这篇指南的你来说,可能最大也是唯一的原因就是你想要关注的人在使用 Twitter。
如何访问 Twitter?
除了浏览器访问 Twitter.com(需要翻墙,附上一篇简单的翻墙教程)之外,还有大量第三方桌面或者 Web 客户端(网页版客户端)可以使用(通常不需要翻墙)。手机等移动设备上也有各种客户端软件以及移动版 Web 客户端(通常不需要翻墙)。具体情况不在本文讨论范围内,可以自行 Google 或者询问引导你使用 Twitter 的人。
如何使用 Twitter?
发布信息
发布的信息叫做 tweet,俗称“推”(也称 status,状态更新信息)。
所有 follow(跟随、关注,常缩写为 fo)你的人,会在他们的 home timeline(主时间线,网站或者各种客户端登录后看到的 Home 页面)里看到你发布的 tweet。
为了让有价值的 tweet 可以更容易地被检索到,可以在内容里加上 hash tag(标签)。Hash tag 的书写方式是 #标签名,标签名最好使用英文,前后要用空格跟其它内容隔开。例如:
今日 #ACGMusic 推荐 Aqua Timez – Velonica,死神OP9。一首热血沸腾的曲子,配上TV版的画面更燃。 http://goo.gl/CtlV
获取信息
需要 follow 一些你感兴趣的人。首先应该是你的朋友圈子。其次也可以看看推友们推荐的 Twitter 用户列表。当开始使用 Twitter 以后,从你的 home timeline 里的 RT tweet 中可以更有效地发现你感兴趣的人。关于 RT 的解释见后面的“分享信息”。
你的 following(你 follow 的所有人)发布的 tweet 都会自动出现在你的 home timeline 里。
所有使用 @ 语法提到你用户名的 tweet 会出现在你的 mentions timeline 里,不管你有没有 follow 这些 tweet 的发布者。如果不想错过与人交流的机会,应该多关注 mentions timeline 的内容。关于 mention 的解释见后面“与人交流”的第2条。
如果对某人的关注度特别高,可以直接查看他/她的 profile 页面(他/她在 Twitter 上的个人页面),在这里可以看到他/她发布的所有消息,包括对别人的回复。还有更极端的方式是搜索 @用户名,这样可以看到别人对他/她的 mention。
与人交流
Twitter 的信息量很大,你发的 tweet 虽然会出现在所有你的 follower(follow 你的人)的 home timeline 里,但很容易被其它信息淹没。
如果想要大幅度提高某个 tweet 被某人看到的可能性,可以将他/她的 Twitter 用户名写到 tweet 内容里任意位置,并在前面加上 @ 符号。这叫作 mention(提及)某人。注意 @ 和用户名之间不能有空格,而 @ 前面和用户名后面如果有其它内容,应该用空格隔开。为了使 tweet 看上去语句通顺,有时会在 @用户名 前加 cc,意为抄送。这个习惯来自 Email 标准,纯粹只是为了人类阅读时不觉得唐突。例如:
上学的时候周末经常和 @zealobin 一起通宵玩星际,他 P 我 Z 算是宿敌。=_,=
原来今天也叫两仪式节,听到解释时我笑了半天~cc @Greendamn
如果 @用户名 出现在 tweet 内容的最前面,这条 tweet 就变成了对这个人的 reply(回复),可以算是 mention 的特殊形式。Reply 可以手工编写,但通常更好的方式是查看 tweet 时直接点击它旁边的 Reply 按钮进行有针对的回复。对某人的 reply,只会出现在同时 follow 了你和他/她的人的 home timeline 里。可以多利用 reply 的这种特性减少对其他 follower 不必要的信息输出。
有时候交流仅仅是一对一的,不适合公开被别人看到。这种时候应该使用 DM(direct message,私信)。顾名思义 DM 只有发送者和接收者才能看到。如果在一条 tweet 最前面加上字母 d、空格、一个用户名以及另一个空格,那么它被发出后就会成为一条 DM。几乎所有客户端也都提供单独的界面用来发 DM。注意,只能发送 DM 给你的 follower。例如:
d ReginaIqus 敏感词敏感词敏感词。
分享信息
在 Twitter 上看到的信息,有时会因为它有意思、有意义、认同它或者其它任何原因,想要分享给自己的 follower,这时就需要 RT(retweet,转发,回推,锐推)。由于 Twitter 最早并没有提供专门的 RT 机制,导致现在有两种不同的 RT 方式。两种方式各有优劣,可以根据情况自己选择。
传统 RT 是将某个 tweet 内容加上 @作者名 以及 RT、Retweet、Resending、via 等字样,作为一条新的 tweet 发出去。这个操作通常不需要手工复制编辑,几乎所有客户端都带有传统 RT 功能。RT 等字样本来纯粹只是让人类识别这是一条 RT tweet,没有其它意义。不过由于传统 RT 流行度相当高,也有部分客户端识别它。
传统 RT 的好处是可以在 RT 时添加评论到原 tweet 前面或后面。添加在后面的好处是更符合大多数人从左到右的阅读习惯,但坏处是需要额外的字符用来分隔评论与原 tweet 内容,更坏的是一条 tweet 被 N 个人 RT 并且带有的评论数量小于 N 后,就无法将评论和评论者对应起来。而将评论放在原 tweet 前面可以完全解决这个问题,虽然代价是需要稍微改变一下习惯从右到左阅读。
官方 RT 是 Twitter 后来才提供的,使用了特殊的机制来完成跟传统 RT 类似的功能。好处是可以很方便的得知某个 tweet 被 RT 的次数和 RT 它的用户。官方 RT 不需要也不允许在被 RT 的 tweet 内容里加任何东西。这是好处,因为 Twitter 有140的字数限制。同时也是坏处,因为你没有办法添加评论。
融入社群
在 bio(简历)里简单地介绍一下自己的身份职业或者兴趣爱好,让第一次见到你的人更容易地对你有直观的了解。
上传一个你喜欢的,漂亮的头像,有助于给别人留下更深的印象。有不少推友使用自己的真实照片做头像,但这纯粹是个人选择。
看到感兴趣的 tweet 时尝试跟对方交流。交流一般应该直接 reply 对方。如果你认为交流内容也有让你的 follower 看到的价值,那么可以使用普通 mention。如果为了完整展现信息还有必要带上对方的原 tweet,传统 RT 加评论就可以派上用场。
控制 RT 数量,尝试多写原创 tweet。因为你的 follower 更希望看到你是一位个性鲜明的人类,而非 RT 机器人。
避免滥用 RT 加评论。有时你们的交流完全没有让你的 follower 看到的必要或者价值,这种时候使用 RT 加评论来回复对方可以被考虑为滥用。事实上这种行为被部分推友称为“RT 式回复”,对它的态度有争议,但可以明确的是有相当一部分人不喜欢它。
网络并非虚拟,每一个 Twitter 用户名背后都是一位跟你一样的真实人类(@rtmeme 等机器人账户除外),所有真实社会的基本礼节在这里同样适用。
其它提示
如果对某人不再有兴趣,随时可以 unfollow(取消跟随,取消关注,常缩写为 unfo)他/她。
Follow 某人并不代表你与其建立朋友关系。不必觉得不好意思 unfollow 某人,也不必在意别人 unfollow 你。
如果不想要某个关注你的人继续看到你的 tweet,可以 block(类似加入黑名单)他/她。Block 意味着强制解除你们之间的 follow 关系,双方的 tweet 都不会再出现在彼此的 home timeline 里。需要注意的是被 block 的人仍然可以直接查看你的 profile 页面阅读你的 tweet。因此 block 并非保护隐私的手段,只是取消主动推送信息给对方。
如果你真的很在意隐私问题,不想让 follower 以外的任何人看到自己的 tweet,可以在设置里启用 Protect my tweets。
上手以后建议阅读推友 @riku 翻译的更详细更全面的 Twitter 新手使用教程。
感谢
感谢推友 @Kouga_ @Greendamn @vvoody @q09q09 等帮忙审阅并提出修改意见。
Follow Me
我是 @rainux,欢迎查看我的 profile 并考虑 follow 我。
标签:Twitter, 推特, 推特入门指南一口气看完了6话圣斗士冥王神话
January 28th, 2010
一口气看完了6话圣斗士星矢 The Lost Canvas 冥王神话,好久没这么爽快地看热血动画了。拖把流死神你去死吧。还不过瘾,又跑去维基百科翻了翻资料。这些是洗澡时想说的:
- 雅典娜好胸。不过我喜欢的是同样大胸的圣衣血库让叶。嗯,她是美腿单马尾。
- 为什么每次圣战都是青铜小强天马座跟雅典娜有一腿?
- 会积尸气冥界波的人好多……
- 水瓶座是“最博识的圣斗士”,而且还会占星。啊哈哈,我喜欢这个设定。
- 双鱼座好美,求搞基……(我先自重 =_=
禁止浏览器发送 HTTP_REFERRER header 保护私密网站 URL
January 16th, 2010
今天看到 Twitter 上有人讨论浏览器发送 HTTP_REFERRER header 导致民间 Twitter Web 客户端地址被泄露的问题。研究了一下,这个问题的最终解决都需要依靠浏览器,网站自己没有办法强制禁止浏览器发送 HTTP_REFERRER header。
Chrome/Chromium
Chrome/Chromium 的 WebKit 内核最新版支持 HTML5 里的 noreferrer link relation。这个功能允许网页作者在 a 和 area 元素里简单地使用值为 noreferrer 的 rel 属性来禁止浏览器向链接目标发送 HTTP_REFERRER header。例如:
<a href="http://evil.com" rel="noreferrer">Evil</a>
当用户点击这个链接访问 evil.com 时,对方只会收到一个空白的 HTTP_REFERRER header。在 Windows 版的 Chrome 4.0.295.0 dev 上测试通过。
Firefox
Firefox 的扩展 Adaptive Referer Remover 可以禁止指定的 URL 出现在 HTTP_REFERRER header 里。它使用正则表达式来匹配要保护的 URL。普通的 URL 转换成它需要的正则表达式很简单,只需要在前面加 ^ 并把 . 改成 . 即可。例如:
^http://rainux.org
^http://search\.twitter\.com
另一个更简单但比较极端的做法是在 about:config 里将 network.http.sendRefererHeader 设置为 0,这样会完全禁止 Firefox 向任何网站发送 HTTP_REFERRER header。
Opera
Tools-> Preferences-> Advanced-> Network-> Send referrer information 去掉勾选。(感谢 vvoody 补充)
Internet Explorer
别开玩笑了,IE 的漏洞都导致 Google 重要服务被攻破 而被迫退出中国了,你还敢用它?
标签:Twitter