<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>无人区@寒水远山</title>
	<atom:link href="http://blog.lifetoy.org/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.lifetoy.org</link>
	<description>Something more</description>
	<lastBuildDate>Sun, 31 Jan 2010 14:41:27 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>在 NAT 后面使用 ISATAP 连接 IPv6</title>
		<link>http://blog.lifetoy.org/2010/01/31/isatap-behide-nat/</link>
		<comments>http://blog.lifetoy.org/2010/01/31/isatap-behide-nat/#comments</comments>
		<pubDate>Sun, 31 Jan 2010 14:40:44 +0000</pubDate>
		<dc:creator>寒水远山</dc:creator>
				<category><![CDATA[Note]]></category>
		<category><![CDATA[ipv6]]></category>
		<category><![CDATA[isatap]]></category>
		<category><![CDATA[nat]]></category>

		<guid isPermaLink="false">http://blog.lifetoy.org/?p=73</guid>
		<description><![CDATA[寒假回家想用 isatap 连接 ipv6, 但是家里是用路由器上网, isatap 默认在 NAT 后面没法正常工作. 考虑到路由器后面只有我一台机器需要 ipv6 连接, 于是开始瞎折腾, 想办法把所有 isatap 的数据全部定向到我那台机器上. 我机器的系统是 win7, 路由器系统是 openwrt brcm-2.4. 首先在路由器防火墙里面加条规则, 把收到的协议号是 41 的数据包全部重定向到我的机器上面. 像 isatap, 6to4 等协议的协议号都是 41. openwrt 可以直接修改 /etc/config/firewall : config redirect option src                      wan option dest                     lan option dest_ip          192.168.11.2 option proto            41 其他类似的系统 (如 dd-wrt 之类的) 应该可以直接用 iptables 修改. [...]]]></description>
			<content:encoded><![CDATA[<p>寒假回家想用 isatap 连接 ipv6, 但是家里是用路由器上网, isatap 默认在 NAT 后面没法正常工作. 考虑到路由器后面只有我一台机器需要 ipv6 连接, 于是开始瞎折腾, 想办法把所有 isatap 的数据全部定向到我那台机器上.<span id="more-73"></span><br />
我机器的系统是 win7, 路由器系统是 openwrt brcm-2.4.</p>
<p>首先在路由器防火墙里面加条规则, 把收到的协议号是 41 的数据包全部重定向到我的机器上面. 像 isatap, 6to4 等协议的协议号都是 41. openwrt 可以直接修改 /etc/config/firewall :</p>

<div class="wp_syntax"><div class="code"><pre class="ini" style="font-family:monospace;">config redirect
option src                      wan
option dest                     lan
option dest_ip          192.168.11.2
option proto            <span style="">41</span></pre></div></div>

<p>其他类似的系统 (如 dd-wrt 之类的) 应该可以直接用 iptables 修改.</p>
<p>不过改了这些之后还是上不了网. 抓包之后觉得可能是因为数据包的 link-local 地址和全局的 ipv6 地址不对, 于是用 netsh 人肉指定了一下这两个地址. 我写了个简单的 bat 来搞这件事情.</p>

<div class="wp_syntax"><div class="code"><pre class="dos" style="font-family:monospace;"><span style="color: #33cc33;">@</span><span style="color: #b1b100; font-weight: bold;">echo</span> off
&nbsp;
<span style="color: #b1b100; font-weight: bold;">set</span> interface=isatap.lan     // 这个是我 isatap interface 的名字
<span style="color: #b1b100; font-weight: bold;">set</span> prefix=&quot;2001:da8:8000:d010&quot;  // 我用的是上交的 isatap router
<span style="color: #b1b100; font-weight: bold;">set</span> ip=&quot;220.x.x.x&quot;     // 这个是我路由器的外网 ip
&nbsp;
<span style="color: #00b100; font-weight: bold;">for</span> /f &quot; tokens=2 delims=<span style="color: #33cc33;">%</span><span style="color: #33cc33;">%</span> &quot; <span style="color: #33cc33;">%%</span><span style="color: #448888;">a</span> <span style="color: #00b100; font-weight: bold;">in</span> <span style="color: #33cc33;">(</span>'&quot;netsh int ipv6 show addr <span style="color: #33cc33;">%</span><span style="color: #448888;">interface</span><span style="color: #33cc33;">%</span> <span style="color: #33cc33;">|</span> findstr /r <span style="color: #33cc33;">^A</span>ddress.*Parameters$&quot;'<span style="color: #33cc33;">)</span> <span style="color: #00b100; font-weight: bold;">do</span> netsh int ipv6 <span style="color: #b1b100; font-weight: bold;">del</span> addr <span style="color: #33cc33;">%</span><span style="color: #448888;">interface</span><span style="color: #33cc33;">%</span> <span style="color: #33cc33;">%%</span><span style="color: #448888;">a</span>
&nbsp;
netsh int ipv6 add addr <span style="color: #33cc33;">%</span><span style="color: #448888;">interface</span><span style="color: #33cc33;">%</span> fe80::5efe:<span style="color: #33cc33;">%</span><span style="color: #448888;">ip</span><span style="color: #33cc33;">%</span>
netsh int ipv6 add addr <span style="color: #33cc33;">%</span><span style="color: #448888;">interface</span><span style="color: #33cc33;">%</span> <span style="color: #33cc33;">%</span><span style="color: #448888;">prefix</span><span style="color: #33cc33;">%</span>:0:5efe:<span style="color: #33cc33;">%</span><span style="color: #448888;">ip</span><span style="color: #33cc33;">%</span>
&nbsp;
netsh int ipv6 isa s s d
netsh int ipv6 isa s s e</pre></div></div>

<p>搞定了这些之后就可以连通 ipv6 站点了 <img src='http://blog.lifetoy.org/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>ps. 最后想了个歪办法来解决路由器后面有多个机器需要 ipv6 连接的情况, 就是每个机器用一个不同的 isatap router.  <img src='http://blog.lifetoy.org/wp-includes/images/smilies/icon_biggrin.gif' alt=':-D' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://blog.lifetoy.org/2010/01/31/isatap-behide-nat/feed/</wfw:commentRss>
		<slash:comments>32</slash:comments>
		</item>
		<item>
		<title>2009 年</title>
		<link>http://blog.lifetoy.org/2010/01/03/year-2009/</link>
		<comments>http://blog.lifetoy.org/2010/01/03/year-2009/#comments</comments>
		<pubDate>Sat, 02 Jan 2010 17:24:08 +0000</pubDate>
		<dc:creator>寒水远山</dc:creator>
				<category><![CDATA[Life]]></category>
		<category><![CDATA[2009]]></category>
		<category><![CDATA[summary]]></category>

		<guid isPermaLink="false">http://lifetoy.org/?p=64</guid>
		<description><![CDATA[首先祝大家新年快乐 最近看到许多朋友都在写 09 年的总结, 自己才意识到新的一年已经来临了. 对于我这种人来说, 时间总是过去了之后才觉得它过得飞快. 一年之前元旦前夜, 我和同学在紫金港文化广场一边吃夜宵一边看新年焰火的景象还历历在目, 而现在我才发现, 那漫长的一年不知道什么时候已经从指缝间溜走, 以至于现在回想的时候, 感觉很是茫然. 既然已经是新的一年了, 自己还是总结一下自己的 09 年吧. 2 月份寒假. 看到了好的高中的同学, 还见到了初中的班主任和一些许久未见的初中同学. 看到了大家的变化, 心里也有不少的感触. 3 月底讲了一次小课堂. 这大概算自己人生中比较值得纪念的一件事吧, 第一次在一个面向全校同学的场合上讲技术问题. 现在想起来, 那次讲座自己做的挺不好的, 之前准备的许多内容在讲台上一紧张就忘记了. 不过据场下的同学说讲的还不错, 但愿是这样吧 4 月份妈妈和我说了一些外婆身体不好的事情. 接下来便传来了外婆要动大手术的消息, 妈妈刚告诉我的时候我被吓得说不出话来, 所幸后来手术还是挺成功的. 期间回家了一周去看了看外婆. 3 月份的校赛和 5 月份省赛都是悲剧, 而 4 月份到宁波理工参加的全国邀请赛还被别的学校狠狠鄙视了一下. 很失落. 6 月份的编程答疑版聚. 是在学校竞赛推介会之后, 一次巨大的 FB. 很开心. 过了 CET 6. [...]]]></description>
			<content:encoded><![CDATA[<p>首先祝大家新年快乐 <img src='http://blog.lifetoy.org/wp-includes/images/smilies/icon_biggrin.gif' alt=':-D' class='wp-smiley' /> </p>
<p>最近看到许多朋友都在写 09 年的总结, 自己才意识到新的一年已经来临了. 对于我这种人来说, 时间总是过去了之后才觉得它过得飞快. 一年之前元旦前夜, 我和同学在紫金港文化广场一边吃夜宵一边看新年焰火的景象还历历在目, 而现在我才发现, 那漫长的一年不知道什么时候已经从指缝间溜走, 以至于现在回想的时候, 感觉很是茫然.<span id="more-64"></span></p>
<p>既然已经是新的一年了, 自己还是总结一下自己的 09 年吧.</p>
<ul>
<li>2 月份寒假. 看到了好的高中的同学, 还见到了初中的班主任和一些许久未见的初中同学. 看到了大家的变化, 心里也有不少的感触.</li>
<li>3 月底讲了一次小课堂. 这大概算自己人生中比较值得纪念的一件事吧, 第一次在一个面向全校同学的场合上讲技术问题. 现在想起来, 那次讲座自己做的挺不好的, 之前准备的许多内容在讲台上一紧张就忘记了. 不过据场下的同学说讲的还不错, 但愿是这样吧 <img src='http://blog.lifetoy.org/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </li>
<li>4 月份妈妈和我说了一些外婆身体不好的事情. 接下来便传来了外婆要动大手术的消息, 妈妈刚告诉我的时候我被吓得说不出话来, 所幸后来手术还是挺成功的. 期间回家了一周去看了看外婆.</li>
<li>3 月份的校赛和 5 月份省赛都是悲剧, 而 4 月份到宁波理工参加的全国邀请赛还被别的学校狠狠鄙视了一下. 很失落.</li>
<li>6 月份的编程答疑版聚. 是在学校竞赛推介会之后, 一次巨大的 FB. 很开心. 过了 CET 6.</li>
<li>7 月份的暑期集训. 其实自己一点信心都没有, 坑少牛多, 我这种土人只有靠边站的份. 这段时间脑子里很混乱, 自己很彷徨, 想了很多很多今后的打算, 回家之后也跟父母与同学聊了许多. 幸运的是, 最后进入了校队.</li>
<li>8 月份的校队训练. 既然最后进了校队, 就先专注做好眼前的事情. 这段时间失去了很多, 也得到了很多. 一个月的练习自己从史哥和 jay 哥那里学到了不少东西.</li>
<li>9 月份开学, 同时校队继续集训. 10 月初就要第一场 Regional 比赛, 感觉气氛很压抑.</li>
<li>10 月份参加了两场 Regional 比赛. 尽管之前很压抑, 比赛的时候玩的还是很开心的, 不知道是不是长久压抑之后自己有些想法也变了吧. 两场比赛的成绩都还不错, 自己也有了保研的希望.</li>
<li>11 月份几乎有一半的时间是在医院里面度过的. 人生第一次住院居然是因为感冒, 真是可悲. 连自己的生日都是在医院里面度过的.</li>
<li>12 月自己加入了何老师的实验室. 希望自己不要继续混日子, 能够确确实实学到一点东西.</li>
</ul>
<p>除了这些之外, 09 年还有一些挺有意思的事情. 像自己第一次做 TopCoder 拿米, 第一次折腾 VPS 和 IPv6 VPN. 期间还有许多和 MSTCer 们在一起大大小小的 FB 和聚会, 人生的第一次通宵也是在 09 年聚会中的.</p>
<p>说了这么多, 其实细细看来, 也没多少. 有时候, 我自己也会问自己, 最近究竟在干什么, 可是答案往往自己都不知道. 大概这样的日子就叫浑浑噩噩吧. 希望在新的一年里面, 自己能够真正利用好时间, 做一些自己喜欢而有意义的事情,不要又茫然地一年又一年了.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.lifetoy.org/2010/01/03/year-2009/feed/</wfw:commentRss>
		<slash:comments>14</slash:comments>
		</item>
		<item>
		<title>住院</title>
		<link>http://blog.lifetoy.org/2009/11/21/hospital-life/</link>
		<comments>http://blog.lifetoy.org/2009/11/21/hospital-life/#comments</comments>
		<pubDate>Sat, 21 Nov 2009 13:34:43 +0000</pubDate>
		<dc:creator>寒水远山</dc:creator>
				<category><![CDATA[Life]]></category>
		<category><![CDATA[fever]]></category>
		<category><![CDATA[hospital]]></category>

		<guid isPermaLink="false">http://lifetoy.org/?p=58</guid>
		<description><![CDATA[在之前, 我想自己从来不会想到自己居然会因为一次简简单单的感冒住院了. 似乎从自己有记忆的时候开始, 自己就没住过医院, 乃至盐水都没有挂过几次. 不过充满悲剧的生活大概是从来不会让人预料到其悲剧的, 正如生活中充满了悲剧的我也从来没法预料到自己下一个悲剧是什么时候. 就在一个隐隐昭示着悲剧的夜晚, 11 月 3 日晚上, 杭州的天气突然降温, 于是衣服加得不够多我就悲剧得感冒了. 一开始的感冒也正如自己之前的所有感冒一样, 一点鼻塞, 喉咙痛. 于是自己随便吃了点药, 也没怎么在意. 没想到过了两三天, 感冒不仅没有好转, 反而愈演愈烈, 11 月 8 日直接发烧到 38.9 度. 没办法, 自己只能去校医院看下. 验完血之后医生直接排除了 H1N1 感染, 于是开了点药, 扎了几瓶盐水, 体温很快就下来了. 以为自己大概没事了, 也没把医生复诊的要求放在心里, 回到寝室吃点药就不再管了. 第二天体温正常, 悲剧的是第三天又开始烧了, 于是只好再去校医院看病. 医生看了我的胸片之后居然直接给我开了三天的盐水 , 这回没办法了, 只好老老实实去医院挂盐水. 可是悲剧的是挂了两天, 体温还是没有降下来. 那两天整个人都昏昏沉沉的, 做什么事情都没精神, 于是后来自己再一次去挂号找医生了. 在血检尿检折腾了一番之后, 医生建议我: 住院吧 . [...]]]></description>
			<content:encoded><![CDATA[<p>在之前, 我想自己从来不会想到自己居然会因为一次简简单单的感冒住院了. 似乎从自己有记忆的时候开始, 自己就没住过医院, 乃至盐水都没有挂过几次. 不过充满悲剧的生活大概是从来不会让人预料到其悲剧的, 正如生活中充满了悲剧的我也从来没法预料到自己下一个悲剧是什么时候. 就在一个隐隐昭示着悲剧的夜晚, 11 月 3 日晚上, 杭州的天气突然降温, 于是衣服加得不够多我就悲剧得感冒了.<span id="more-58"></span></p>
<p>一开始的感冒也正如自己之前的所有感冒一样, 一点鼻塞, 喉咙痛. 于是自己随便吃了点药, 也没怎么在意. 没想到过了两三天, 感冒不仅没有好转, 反而愈演愈烈, 11 月 8 日直接发烧到 38.9 度. 没办法, 自己只能去校医院看下. 验完血之后医生直接排除了 H1N1 感染, 于是开了点药, 扎了几瓶盐水, 体温很快就下来了. 以为自己大概没事了, 也没把医生复诊的要求放在心里, 回到寝室吃点药就不再管了. 第二天体温正常, 悲剧的是第三天又开始烧了, 于是只好再去校医院看病. 医生看了我的胸片之后居然直接给我开了三天的盐水 <img src='http://blog.lifetoy.org/wp-includes/images/smilies/icon_confused.gif' alt=':-?' class='wp-smiley' />  , 这回没办法了, 只好老老实实去医院挂盐水. 可是悲剧的是挂了两天, 体温还是没有降下来. 那两天整个人都昏昏沉沉的, 做什么事情都没精神, 于是后来自己再一次去挂号找医生了. 在血检尿检折腾了一番之后, 医生建议我: 住院吧 <img src='http://blog.lifetoy.org/wp-includes/images/smilies/icon_mrgreen.gif' alt=':mrgreen:' class='wp-smiley' />  .</p>
<p>很奇怪的是当时自己听到住院之后一点反应都没有, 直接同意了, 也许是自己烧糊涂了? 当天下午, 自己就住进了医院. 自己在紫金港两年, 都几乎没有进过校医院, 没想到刚来玉泉没几天, 就进了医院好几次, 还直接把自己搞住院了, 想想就觉得悲哀. 不管怎么说, 自己就这么住进去了, 住进了一个没有电脑没有网络没有同学什么都没有的地方.</p>
<p>在医院里面每天给被扎 4 袋盐水, 不过最郁闷的还是无聊. 唯一能让人感到欣慰的就是住院第二天, 体温就降下来了, 之后就一直保持正常. 尽管如此, 住院生活感觉就要把自己搞疯了, 整个人都蔫了, 做什么事情都没力气, 大概要是自己再住下去就要变成一个活动的人形 sb 了吧. 还好最后病情比较稳定, 医生终于肯把我放出来, 悲剧的是自己已经在医院里面呆了一周了.</p>
<p>总之这次的感冒就是场人间悲剧. 希望大家感冒之后能及时治疗, 别像我这次这么悲剧就好了 <img src='http://blog.lifetoy.org/wp-includes/images/smilies/icon_redface.gif' alt=':oops:' class='wp-smiley' />  .</p>
<p>最后必须要感谢在住院期间关心我帮助我的人. 感谢百忙之中给我送饭的<a href="http://demoslam.appspot.com/" target="_blank">老毛</a>, 团长, 小金鱼, <a href="http://lihdd.net/" target="_blank">quark</a>, 感谢光哥的苹果和传说中资产阶级的削皮器 (果然比我自己的削皮器更好用), 感谢来病房看望我的 <a href="http://blog.pluskid.org/" target="_blank">kid</a>, 超人, Rainflying, yueyue, 兰色. 真的很感动, 要不是大家的关心和帮忙, 估计我早就挂掉了吧  <img src='http://blog.lifetoy.org/wp-includes/images/smilies/icon_redface.gif' alt=':oops:' class='wp-smiley' />  , 谢谢大家了~!</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.lifetoy.org/2009/11/21/hospital-life/feed/</wfw:commentRss>
		<slash:comments>14</slash:comments>
		</item>
		<item>
		<title>ACM/ICPC Shanghai Regional 游记</title>
		<link>http://blog.lifetoy.org/2009/10/27/acm-icpc-shanghai-regional-tour/</link>
		<comments>http://blog.lifetoy.org/2009/10/27/acm-icpc-shanghai-regional-tour/#comments</comments>
		<pubDate>Tue, 27 Oct 2009 13:38:18 +0000</pubDate>
		<dc:creator>寒水远山</dc:creator>
				<category><![CDATA[Life]]></category>
		<category><![CDATA[acm]]></category>
		<category><![CDATA[icpc]]></category>
		<category><![CDATA[regional]]></category>
		<category><![CDATA[shanghai]]></category>

		<guid isPermaLink="false">http://lifetoy.org/?p=43</guid>
		<description><![CDATA[首先必须指出的是, 我们参加的不是上海赛区的比赛, 是松江赛区的. 当校车将我们送到大众宾馆的时候, 我们就意识到了这点: 方圆 x 里之内, 似乎就宾馆这一座肉眼可见建筑. 报道是在另一个宾馆搞定的, 报道的时候顺便抽签 + 测体温, 于是被大家围观到了 jay 哥看到 mm (手中的体温计) 时扭过头视死如归的神情 (据 shi 哥说还有更深层次的原因, 这里就不爆了). 晚饭在宾馆吃, 每人发一小碗菜 (就像是装在盘子里面的麦香快餐), 群众们纷纷表示太抠门了. 晚饭后继续宅宾馆. 必须要说宾馆的网络太赞了, Huawei 的接入认证, 直接可以 DHCP 到一个公网 IP, 实际测试网络大概有 1M/s, 比 zjg 那个破烧卡快多了. 第二天上午 7 点钟被叫醒. 吃早饭的时候居然必须凑满一桌才给上菜, 真不和谐. 在一个冗长的开幕式之后, 试机赛开始了. 题目果然和之前传闻的一样, 5 个小时三道题. 一上机就悲剧地发现键盘好难用, 还发现了机器上面居然没有装 gvim, 真悲剧. 把三道题都过掉之后, [...]]]></description>
			<content:encoded><![CDATA[<p><img class="alignright size-full wp-image-44" title="acm_icpc" src="/wp-content/uploads/2009/10/acm_icpc.png" alt="acm_icpc" width="301" height="140" /><br />
首先必须指出的是, 我们参加的不是上海赛区的比赛, 是松江赛区的. 当校车将我们送到大众宾馆的时候, 我们就意识到了这点: 方圆 x 里之内, 似乎就宾馆这一座肉眼可见建筑.<span id="more-43"></span></p>
<p>报道是在另一个宾馆搞定的, 报道的时候顺便抽签 + 测体温, 于是被大家围观到了 jay 哥看到 mm (手中的体温计) 时扭过头视死如归的神情 (据 shi 哥说还有更深层次的原因, 这里就不爆了). 晚饭在宾馆吃, 每人发一小碗菜 (就像是装在盘子里面的麦香快餐), 群众们纷纷表示太抠门了.</p>
<p>晚饭后继续宅宾馆. 必须要说宾馆的网络太赞了, Huawei 的接入认证, 直接可以 DHCP 到一个公网 IP, 实际测试网络大概有 1M/s, 比 zjg 那个破烧卡快多了.</p>
<p>第二天上午 7 点钟被叫醒. 吃早饭的时候居然必须凑满一桌才给上菜, 真不和谐. 在一个冗长的开幕式之后, 试机赛开始了. 题目果然和之前传闻的一样, 5 个小时三道题. 一上机就悲剧地发现键盘好难用, 还发现了机器上面居然没有装 gvim, 真悲剧. 把三道题都过掉之后, 大家测试了一下比赛时候用的评测系统. 感觉这个东西就是个 oj, 和 PC2 的区别还是挺大的. 之后开始扫荡食品, 不过吃的东西好少 T_T. 很快解决了午饭之后, 试机赛还剩下好长好长的时间, 无聊之际发现了当代码含有某些关键字的时候, judge client 会提示 restricted keyword 而提示编译错误. 于是接下来的时间大家开始调戏 judge 系统, 发现那个 oj 除了代码关键字过滤之外没有任何机制来过滤 system call, 譬如直接 exec /bin/cat 就可以把 B 题 AC 掉  <img src='http://blog.lifetoy.org/wp-includes/images/smilies/icon_rolleyes.gif' alt=':roll:' class='wp-smiley' />   , 玩了半天发现热身赛还没结束, 于是把 ubuntu 自带的游戏几乎都玩了一遍 <img src='http://blog.lifetoy.org/wp-includes/images/smilies/icon_biggrin.gif' alt=':-D' class='wp-smiley' /> </p>
<p>在 DHU 的食堂晚饭后大家到 DHU 校内的一个超市里面大采购. 旁边两个 DHU 的 mm 一直看着我们的 QS 行为, 似乎想笑又没好意思笑出来 <img src='http://blog.lifetoy.org/wp-includes/images/smilies/icon_neutral.gif' alt=':-|' class='wp-smiley' />  . 回到宾馆之后发生了某件神奇的事件: 小 quark 睡了一半忽然问 fancy &#8220;我们队是不是有奇数个人&#8221;, fancy 回答了 &#8220;是&#8221; 以后 quark 才继续安心睡觉&#8230;</p>
<p>第二天正式比赛. 和平时训练一样, shi 哥看 A-D, 我从 E 开始看, jay 哥倒着看题. 史哥看到 B 之后直接上去搞了, 不过似乎遇到了一点麻烦. 这时候发现场上已经有几队过了 A, 转头去看 A 结果发现是道水题, 于是我去搞 A. 人肉了半天把那幅图的边敲进去, 提交以后 WA. 然后我才发现我有个地方写错了, 极其脑残的错误 (不知道怎么居然会过 sample, 我太土了 <img src='http://blog.lifetoy.org/wp-includes/images/smilies/icon_surprised.gif' alt=':-o' class='wp-smiley' />  ), 提交以后终于过了.</p>
<p>之后 shi 哥上去继续搞 B. 场上有队伍过了 F 和 J, 于是我和 jay 哥在 yy 这两题. 当时觉得 F 题里面 k &lt;= 200, 复杂度不知道怎么算但是感觉不大 (事实证明感觉完全错了), 因为看到有队伍过了于是准备水一下. 史哥交了 B 之后我写 F, 期间史哥改了 B 的一处地方之后 AC 了, 接下来我交了 F, 果然成功 TLE (T_T).</p>
<p>这个时候场上 F I J 都有队伍过. 互相交流了一下题意之后, shi 哥和 jay 哥在讨论 J, 我在 yy I. 忽然发现 I 里面每个点只会和最近的 4 个点连边. 和 shi 哥交流一下觉得这个想法应该是对的, 于是我准备上去写 I. 结果一开始发现看不懂 input 的格式是什么, shi 哥讲了一遍结果我还是没看懂 (T_T), 于是 shi 哥说他来搞这题, 我就敲了一下模块. 最后 I 1Y, 感觉还是小激动了一下, 因为前两题我们的罚时有点大.</p>
<p>这时候 jay 哥说 J 想清楚了, 于是上去搞 J. 我和 shi 哥在看看还有什么题比较有前途. 最后决定搞 E. 确定了算法之后, 我在人肉各个方块的旋转, shi 哥等 jay 哥搞完 J 之后上去敲代码. jay 哥敲完程序之后发现过不了第三个 sample, 然后才发现题意理解的有些问题. 于是 shi 哥上去敲 E, jay 哥在 yy 怎么改 J. 封 board 之后 jay 哥上去改了一下代码, 提交之后 1Y, 大赞.</p>
<p>这时候比赛只剩下了大概四十分钟, 接下来三个人一起搞 E. 我在纸上人肉 sample, jay 哥帮忙检查方块的表示和旋转是否有问题, 期间抓出了程序中的许多 bug. 终于在离比赛结束不到五分钟的时候, 过了 E 的 sample. 于是不管三七二十一, 直接注释掉调试信息以后提交, 顺便打印了一份. 焦急地等待了一会之后, 屏幕上弹出了一个 Accepted, 三个人都兴奋地叫了出来 <img src='http://blog.lifetoy.org/wp-includes/images/smilies/icon_biggrin.gif' alt=':-D' class='wp-smiley' />  . 看了一下提交时间, 14:57:41.</p>
<p style="text-align: center;"><img class="aligncenter size-full wp-image-47" title="icpc_shanghai_runs" src="/wp-content/uploads/2009/10/icpc_shanghai_runs.png" alt="icpc_shanghai_runs" /></p>
<p>比赛结束之后发现 xls 和 vbvan 都来了, 大家用打牌和吃饭把下午的时间全部消灭光了. 晚上颁奖晚会之后有传说中的版聚. 为了找一个合适的地方 FB, 大家沿着某条路搜索又回溯了 n 次之后终于决定去 KFC. 赞一下 xls 和 vbvan 的 bg~</p>
<p>这次松江之行大概就这些内容吧, 要看小姐的童鞋不要 pia 我, 我说过这个是伪小结了 -_-. 最后, 祝福所有还有比赛的童鞋能够取得自己满意的成绩~</p>
<p>Related links:</p>
<p><a href="http://watashi.ws/blog/?p=48" target="_blank">http://watashi.ws/blog/?p=48</a><br />
<a href="http://hi.baidu.com/jay23jack/blog/item/83ad3ac5c04780d6d100608d.html" target="_blank">http://hi.baidu.com/jay23jack/blog/item/83ad3ac5c04780d6d100608d.html</a></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.lifetoy.org/2009/10/27/acm-icpc-shanghai-regional-tour/feed/</wfw:commentRss>
		<slash:comments>16</slash:comments>
		</item>
		<item>
		<title>Excel 07 crashes in Windows 7</title>
		<link>http://blog.lifetoy.org/2009/10/15/excel-07-crashes-on-windows-7/</link>
		<comments>http://blog.lifetoy.org/2009/10/15/excel-07-crashes-on-windows-7/#comments</comments>
		<pubDate>Thu, 15 Oct 2009 15:18:59 +0000</pubDate>
		<dc:creator>寒水远山</dc:creator>
				<category><![CDATA[Note]]></category>
		<category><![CDATA[crash]]></category>
		<category><![CDATA[excel]]></category>
		<category><![CDATA[windows7]]></category>

		<guid isPermaLink="false">http://lifetoy.org/?p=41</guid>
		<description><![CDATA[装了 Windows 7 之后似乎就一直有这个问题, 一用 Excel 打开一个文档就直接崩溃掉了. 不过平时用 Excel 不多, 忍一忍就算了. 今天实在忍不住了, 搜索了一下, 原来是 WIDCOMM 蓝牙驱动的问题, 蓝牙驱动自带的 Office sendto Bluetooth addin 在 Windows 7 下面有 bug. 一个简单的解决办法是直接把 C:\Windows\system32\btsendto_office.dll 删掉就好了.]]></description>
			<content:encoded><![CDATA[<p>装了 Windows 7 之后似乎就一直有这个问题, 一用 Excel 打开一个文档就直接崩溃掉了. 不过平时用 Excel 不多, 忍一忍就算了. 今天实在忍不住了, 搜索了一下, 原来是 WIDCOMM 蓝牙驱动的问题, 蓝牙驱动自带的 Office sendto Bluetooth addin 在 Windows 7 下面有 bug. 一个简单的解决办法是直接把 C:\Windows\system32\btsendto_office.dll 删掉就好了.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.lifetoy.org/2009/10/15/excel-07-crashes-on-windows-7/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
		<item>
		<title>中秋</title>
		<link>http://blog.lifetoy.org/2009/10/05/mid-autumn-festival/</link>
		<comments>http://blog.lifetoy.org/2009/10/05/mid-autumn-festival/#comments</comments>
		<pubDate>Sun, 04 Oct 2009 17:11:10 +0000</pubDate>
		<dc:creator>寒水远山</dc:creator>
				<category><![CDATA[Life]]></category>
		<category><![CDATA[mid-autumn]]></category>
		<category><![CDATA[mstc]]></category>

		<guid isPermaLink="false">http://lifetoy.org/?p=22</guid>
		<description><![CDATA[又是一年中秋。 MSTC 原本有个中秋出游计划，白天从九溪出发到龙井，晚上逛西湖，可惜因为自己要参加 ACM/ICPC 武汉赛区网络预赛，白天的活动没法参加了，甚是遗憾。晚上吃过饭之后回到寝室，已经是八点多了。一个人从玉泉步行到平湖秋月，和众人汇合。 中秋的西湖确实比平时热闹不少。沿着北山路走着，路人熙熙攘攘，还看到不少旅游团。和行人相比，天上的明月倒显得有些孤单，独自一轮挂在那里，陪它的星星一个都没有出现。不过西湖边上还有人在放孔明灯，一盏又一盏地升上空中，星星点点，随风飘着，很漂亮，却愈发显得寂静了。 到了之后发现 MSTC 一群人在白堤边的草坪上玩杀人游戏。加入之后玩了几句，其间还发生了一件法官杀人的冤假错案件 。可惜的是我到了之后已经九点多了，有人在暴走一天之后体力不支要回寝室休息。于是十多人回去了接近一半，剩下的 8 个壮丁、铁打的 mm 还有刚刚出现精力充沛的我决定去文三路的银乐迪 K 歌。 本来以为大家唱两三个小时之后就回去了，没想到强大的湖边 mm 直接付了通宵的钱，于是大家从十二点 K 到五点半。可以看出大家的心情还是很 high 的，发现俱乐部的好多童鞋都是麦霸啊。Crystal 唱起来的声音很雄厚，完全没有平时说话那种 wsn 气质 ，尤其是在唱《精忠报国》的时候。斌斌唱歌的时候那是相当的用情，以后大家有机会一定要围观下。Jeffern 也是大牛，用粤语唱了一段 rap 让大家膜拜得五体投地。Kid 是深藏不露的麦霸，在 TG 混了这么久才被大家挖出来 ，而且精力充沛，下半场许多都是他唱的。另外 mm 们也相当强大啊，湖边 mm 和 boisde mm 两位唱《死了都要爱》的情景相信大家都不会忘记吧 。 五个半小时说短也不短，说长也不长。K 歌结束之后回寝室，刚好四个回玉泉四个回紫金港。玉泉的四人决定步行回寝室。这个时候天刚刚亮，清晨的雾气还没散开，穿一件短袖的众人忽然觉得好冷 。回到寝室，第一感觉不是困，却是感觉饿。不过也管不了那么多，直接跳上床睡去了。 仔细想想自己还是第一次这么晚睡觉（最后睡觉了应该都不算通宵吧？），刚回到寝室的时候，全身都累得不行。不过能和大家一起 high 一个晚上，真的十分开心。能有一群趣味相投的朋友，大概就是 MSTC 最大的魅力吧。 最后，祝所有的朋友 国庆&#38;中秋 节日快乐！]]></description>
			<content:encoded><![CDATA[<p><img class="alignright size-full wp-image-28" title="mid-autumn" src="/wp-content/uploads/2009/10/mid-autumn.jpg" alt="mid-autumn" width="128" height="128" />又是一年中秋。</p>
<p>MSTC 原本有个中秋出游计划，白天从九溪出发到龙井，晚上逛西湖，可惜因为自己要参加 ACM/ICPC 武汉赛区网络预赛，白天的活动没法参加了，甚是遗憾。晚上吃过饭之后回到寝室，已经是八点多了。一个人从玉泉步行到平湖秋月，和众人汇合。<span id="more-22"></span></p>
<p>中秋的西湖确实比平时热闹不少。沿着北山路走着，路人熙熙攘攘，还看到不少旅游团。和行人相比，天上的明月倒显得有些孤单，独自一轮挂在那里，陪它的星星一个都没有出现。不过西湖边上还有人在放孔明灯，一盏又一盏地升上空中，星星点点，随风飘着，很漂亮，却愈发显得寂静了。</p>
<p>到了之后发现 MSTC 一群人在白堤边的草坪上玩杀人游戏。加入之后玩了几句，其间还发生了一件法官杀人的冤假错案件 <img src='http://blog.lifetoy.org/wp-includes/images/smilies/icon_rolleyes.gif' alt=':roll:' class='wp-smiley' />  。可惜的是我到了之后已经九点多了，有人在暴走一天之后体力不支要回寝室休息。于是十多人回去了接近一半，剩下的 8 个壮丁、铁打的 mm 还有刚刚出现精力充沛的我决定去文三路的银乐迪 K 歌。</p>
<p>本来以为大家唱两三个小时之后就回去了，没想到强大的湖边 mm 直接付了通宵的钱，于是大家从十二点 K 到五点半。可以看出大家的心情还是很 high 的，发现俱乐部的好多童鞋都是麦霸啊。Crystal 唱起来的声音很雄厚，完全没有平时说话那种 wsn 气质 <img src='http://blog.lifetoy.org/wp-includes/images/smilies/icon_lol.gif' alt=':lol:' class='wp-smiley' />  ，尤其是在唱《精忠报国》的时候。斌斌唱歌的时候那是相当的用情，以后大家有机会一定要围观下。Jeffern 也是大牛，用粤语唱了一段 rap 让大家膜拜得五体投地。Kid 是深藏不露的麦霸，在 TG 混了这么久才被大家挖出来 <img src='http://blog.lifetoy.org/wp-includes/images/smilies/icon_wink.gif' alt=':wink:' class='wp-smiley' />  ，而且精力充沛，下半场许多都是他唱的。另外 mm 们也相当强大啊，湖边 mm 和 boisde mm 两位唱《死了都要爱》的情景相信大家都不会忘记吧 <img src='http://blog.lifetoy.org/wp-includes/images/smilies/icon_biggrin.gif' alt=':-D' class='wp-smiley' />  。</p>
<p>五个半小时说短也不短，说长也不长。K 歌结束之后回寝室，刚好四个回玉泉四个回紫金港。玉泉的四人决定步行回寝室。这个时候天刚刚亮，清晨的雾气还没散开，穿一件短袖的众人忽然觉得好冷 <img src='http://blog.lifetoy.org/wp-includes/images/smilies/icon_sad.gif' alt=':(' class='wp-smiley' />  。回到寝室，第一感觉不是困，却是感觉饿。不过也管不了那么多，直接跳上床睡去了。</p>
<p>仔细想想自己还是第一次这么晚睡觉（最后睡觉了应该都不算通宵吧？），刚回到寝室的时候，全身都累得不行。不过能和大家一起 high 一个晚上，真的十分开心。能有一群趣味相投的朋友，大概就是 MSTC 最大的魅力吧。</p>
<p>最后，祝所有的朋友 国庆&amp;中秋 节日快乐！</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.lifetoy.org/2009/10/05/mid-autumn-festival/feed/</wfw:commentRss>
		<slash:comments>9</slash:comments>
		</item>
		<item>
		<title>VPN over IPv6</title>
		<link>http://blog.lifetoy.org/2009/09/11/vpn-over-ipv6/</link>
		<comments>http://blog.lifetoy.org/2009/09/11/vpn-over-ipv6/#comments</comments>
		<pubDate>Fri, 11 Sep 2009 14:19:43 +0000</pubDate>
		<dc:creator>寒水远山</dc:creator>
				<category><![CDATA[Tools]]></category>
		<category><![CDATA[ipv6]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[vpn]]></category>
		<category><![CDATA[xl2tpd]]></category>

		<guid isPermaLink="false">http://lifetoy.org/?p=9</guid>
		<description><![CDATA[最近对学校的 VPN 相当不满, 且不说 50 RMB 一个月的价格, 还没正式开学网速就已经慢得忍无可忍, 再加上网络上那啥长城最近越来越 BT, 浏览网页时不时出现的 Connection Reset 让人郁闷至极. (吐槽完毕). 恰好原来租的 DreamHost 马上就要到期了. 正准备考虑以后网页要放哪里的时候, 看到原来一起合租 DreamHost 的一位朋友提到, 可以自己租一个支持 IPv6 的 VPS, 在上面架个 VPN 服务器上网, 顺便还可以穿墙. 学校免费且不限速的 IPv6 网络实在太适合干这种坏事了 :grin: .想法是挺好, 不过折腾起来倒是有些麻烦. 目前支持 IPv6 的 VPN 服务器/客户端还寥寥无几. Google 了一下主要有这几种解决方案: OpenVPN + IPv6 patch 感觉 OpenVPN 算最著名的开源 VPN 解决方案了, 可是这玩意居然不支持 IPv6 实在让我感到诧异. [...]]]></description>
			<content:encoded><![CDATA[<p><a rel="attachment wp-att-15" href="https://www.lifetoy.org/2009/09/11/vpn-over-ipv6/applications-internet/"><img class="size-full wp-image-15 alignright" title="applications-internet" src="/wp-content/uploads/2009/09/applications-internet.png" alt="applications-internet" width="64" height="64" /></a>最近对学校的 VPN 相当不满, 且不说 50 RMB 一个月的价格, 还没正式开学网速就已经慢得忍无可忍, 再加上网络上那啥长城最近越来越 BT, 浏览网页时不时出现的 Connection Reset 让人郁闷至极. (吐槽完毕). 恰好原来租的 DreamHost 马上就要到期了. 正准备考虑以后网页要放哪里的时候, 看到原来一起合租 DreamHost 的一位朋友<a href="http://www.briefdream.com/seeking-vps-co-tenant/" target="_blank">提到</a>, 可以自己租一个支持 IPv6 的 VPS, 在上面架个 VPN 服务器上网, 顺便还可以穿墙. 学校免费且不限速的 IPv6 网络实在太适合干这种坏事了 :grin:  .<span id="more-9"></span>想法是挺好, 不过折腾起来倒是有些麻烦. 目前支持 IPv6 的 VPN 服务器/客户端还寥寥无几. Google 了一下主要有这几种解决方案:</p>
<ol>
<li>OpenVPN + IPv6 patch<br />
感觉 OpenVPN 算最著名的开源 VPN 解决方案了, 可是这玩意居然不支持 IPv6 实在让我感到诧异. 搜了一下发现早在 04 年邮件列表里面就已经有 IPv6 的讨论了, 并且当时已经有人给出了一个 IPv6 的 patch. 翻了一下 OpenVPN 的 SVN, 看到<a href="http://svn.openvpn.net/projects/openvpn/patches/openvpn-2-1_alpha3a-tcpbind/" target="_blank">某个 2.1 alpha 的 branch</a> 里面是有 IPv6 patch, 一看时间是 05 年  :| , 不知道为啥后来没有进 trunk.<br />
根据作者的说明, 这个 patch 只支持 linux, 于是直接被我 pia 飞了, 因为我在用 Windows <img src='http://blog.lifetoy.org/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> . 不过后来发现这个方法居然已经有商业运营了, 号称 &#8220;IPv6 直通车&#8221;. 看来下它的客户端,  里面包含一个 OpenVPN 的 Windows 版本和一个 proxy.exe. 猜测那个 proxy.exe 是本地监听了一个 v4 的 udp 端口, 然后把所有数据转发到直接的 v6 地址上去. 感觉真囧  <img src='http://blog.lifetoy.org/wp-includes/images/smilies/icon_confused.gif' alt=':-?' class='wp-smiley' />  .</li>
<li>Tinc<br />
官方网站赤裸裸地说对 IPv6 支持良好. 经过某人测试, 的确如此——Linux 客户端确实对 IPv6 支持良好, 不过 Windows 下面就悲剧了. 看了下 mailing list 也提到过这个问题, 然后作者放了一个自己都不知道会不会 work 的 patch = =||, 没胆量去尝试. 就算能用, 我也不想在 Windows 下面折腾这种东西. 最讨厌在 Windows 下面用 mingw 编译这种所谓跨平台程序了, 经常还得弄个 <a href="http://www.mingw.org" target="_blank">MSYS</a> 跑脚本, 烦死.</li>
<li>PPTP<br />
Windows 自带客户端, 并且支持 IPv6 (Vista 以后的版本), 客户端的问题就不用考虑了. 不过服务端有些悲剧, 邮件列表上面说那个已经不知道有多 old 的 <a href="http://www.poptop.org" target="_blank">poptop</a> 对 IPv6 的 GRE 数据处理上有问题. 因为对 GRE 不熟悉, 所以也没去搞这个东西.</li>
<li>L2TP<br />
同样是 Windows 自带客户端, 同样也支持 IPv6. 服务端是 <a href="http://www.xelerance.com/software/xl2tpd/" target="_blank">xl2tpd</a>. 测试了一下, 服务端不支持 IPv6. 不过整个 L2TP 协议用 udp 传输, 感觉 udp 协议的东西 hack 起来还是比较简单的.</li>
</ol>
<p>于是准备动手乱搞下 xl2tpd. 一开始写了个类似 port proxy 的东西, 在服务端监听 v6 的端口 (虽然 v6 和 v4 的端口是公用的 -,-), 然后把数据包转发给监听在 v4 端口的 xl2tpd. 不过后来觉得处理多连接的时候真麻烦 (莫非就是因为这个原因 Windows 自带的 Portproxy 只支持 tcp 连接?), 于是直接对 xl2tpd 动手了. 为了偷懒, 改的方法也很暴力: 直接用 sed 把几个常见的函数和结构改成 v6 的版本, 然后稍微修改些别的地方直到编译通过 :P . 这里把自己修改的东西整理成一个 patch, 需要的童鞋可以<a href="/?attachment_id=13" target="_blank">点这里</a>下载. 同样是我比较懒的缘故, patch 过的版本直接忽略了配置文件里面的几个选项, 像listen addr, lac range. 另外做client的时候, 如果server地址含有冒号, 要在最后补上端口号(:1701).</p>
<p><img class="size-full wp-image-11 alignleft" title="L2TP Windows Client" src="/wp-content/uploads/2009/09/vpnstat.png" alt="L2TP Windows Client" width="377" height="456" /></p>
<p>虽然是山寨的东西, 不过用了几周之后感觉还不错 <img src='http://blog.lifetoy.org/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> . 贴一份截图供围观.</p>
<p>在上面提到的之外, 还有其他更为简单 (但是山寨) 的方案. 事实上, 除了上面 (1) (2) 两种是基于 TAP 的, 其他的都是基于 PPP 的. 从我个人的感觉来看, 相对于 TAP, PPP 包括了一套相对完整的协议, 并且在各个操作系统上面都有较好的实现, 同时扩展性也不差, 使用起来也更为方便. 如果想完全自己山寨的话, 也可以之后用 netcat 搞定: 用 netcat 在两台机器间建立一个 tcp 或者 udp 的通道, 然后把 ppp 数据全部重定向到通道里面去. 这个在 Linux 下面实现还是相当容易的, 通过 pppd 的 pty 参数或者重定向默认 pppd 的 stdin 都可以. 当然, 上面提到过的自己写一个端口转发的工具也是可以的.</p>
<p>不过在实际情况中还有一些麻烦的东西需要考虑. 首先虽然 tcp 更为通用 (我这里的通用是指, tcp 协议更能适应国内各种奇怪的网络限制, 譬如穿透代理服务器, 或者是 SSL 隧道), 但是无疑它的效率不如 udp. 稳定的, 面向连接的协议在这种情况下会付出的更多: 更长的 packet header, 以及用不到的维持连接和确认状态的包 (像 tcp 中各种 ack 包). 另外, MTU/MRU 的问题也非常烦人, 像 netcat 就不用说了, 遇到这种问题基本残废, 改就算用专门的 VPN 软件, 设置的时候也要小心. 改小了感觉性能不佳, 改大了又可能会出各种问题. 我第一次配置 VPN 的时候, 就遇到过这类问题: http 网页都能正常访问, 但是 https 连接就不正常, 后来改了 MRU 之后才解决 (当然用 iptables 修改 TCPMSS 也是可以的).</p>
<p>说到底搞了这么复杂, 还是 IPv6 不够普及的原因, 如果 IPv6 普及了, 估计各个 VPN 服务器/客户端都会争先恐后地添加 v6 的支持. 只是那个时候估计 IPv6 的网络就不会免费, 这个 VPN 方法也用不成了 :P .</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.lifetoy.org/2009/09/11/vpn-over-ipv6/feed/</wfw:commentRss>
		<slash:comments>35</slash:comments>
		</item>
	</channel>
</rss>

