我原本以为寝室的电脑ping不通实验室的电脑是因为之间隔了一层NAT的关系,昨天听吴博说了才知道原来没有NAT,而是防火墙的关系。防火墙应该是丢弃了ICMP包和所有入站的TCP SYN
包,所以外面的电脑无法通过TCP直接连接实验室电脑。跟吴博一番讨论后,萌发了尝试突破寝室电脑无法TCP连接到实验室电脑的限制。
手头的项目用到了IP首部的Option字段,而且自定义了一个type,正常情况下Wireshark会显示为Unknown,为了演示的时候效果更好一些,我添加了一些代码让Wireshark支持自定义的Option类型,因为这不是单独的协议,不能用Lua等扩展,所以必须重新编译Wireshark,Linux下的编译非常简单,Windows下要繁琐的多,所以就有了这篇文章。
又到了痛并快乐着的折腾时间,这次折腾的对象是autotools。话说很早以前我非常崇拜各种开源代码中的configure和makefile,当初傻傻地以为这都是做项目的人自己写出来的,对开源社区里的人各种膜拜啊,尼玛我看都看不懂不要说写了。后来才知道有autoconf这么个玩意可以自动生成这些脚本,自己当然也要写,但是没有那么夸张了。
前阵子学会了用ip tunnel建立隧道来让没有原生IPv6的电脑用上IPv6,心里痒痒想在家里也提前用上IPv6,于是狠下心买了心仪已久的R6300v2,配上ddwrt,顺利用上了IPv6。