242012
 

问题:

最近在教研室上网经常遇到一个问题,IPv6的连接经常不知在什么时候就自己断开了,基于IPv6的一切程序瞬间就不能正常工作。

查看网络设置,发现地址里面多了一条2002开头的IP地址,同时又有Native IPv6分配过来的2001的IP。这很蹊跷,因为这个2002的地址也不是一直都有的,而是时有时无。随着它的出现,IPv6的连接也是时通时断。这很令人烦恼。

晚上终于忍受不了了,到网上查查吧。果然万能的网络、万能的先驱者们已经发现了这中情况并且分析了其中缘由了。很好,顺势跟着看看

解决:

这位博主分析的很透彻,从RFC里面查了这个2002段的用处,原来是6to4隧道使用的IP。另外就是使用
netsh interface ipv6 show prefixpolicies 命令发现的ipv6使用IP段的优先级:
捕获

这个优先级是我使用 netsh interface ipv6 set prefixpolicy 2001::/32 35 1 persistent 命令修改过的了,原本的顺序里面2001::/32的优先顺序只有5,所有当有2002存在的时候就被覆盖了。

原因:

这位博主也分析了蹊跷的2002段的来源,是某个用户的广播:

原来在同一子网内有人在不断广播路由,我的电脑自动使用这个路由,加上学校提供的2001路由和地址,我的电脑有了两条路由路径和两个ipv6地址。

我把之前获取到的IP:2002:xxxx:xxxx:…中的第二和第三部分的数字换算出十进制的IP,发现是学校PPPOE拨号后分配给实验楼的某个IP,联想到有同学反应掉线的情况只发生在实验室,可以判断这个广播路由信息的电脑就在我们实验室里面,然后此时实验室恰好只有我和一位师弟在,看来就是他的电脑的问题了。

去问了一下师弟的IP,刚好就是上面查到的这个地址。

起初怀疑是他中了什么病毒之类的东西,但是心中着实怀疑现在写IPv6的这种病毒有没有什么好处可以赚。细问一下,果然跟病毒没有关系,是他开启了他校园网拨号连接的共享,也就是他是好意向大家共享他的IPv4连接,却是不料会有这种副作用。

142012
 

原创文章,转载请注明来自Sean的技术博客

    自从买到了VPS,除了放置网站,就是玩一玩VPN了。早就听说过这种神奇的东西,用的还是不多,充满了好奇。放狗搜索了一下,发现最多的教程就是使用PPTPD搭建的,有的讲了配置,有的是用一键安装包。但是我的需求是一个能够支持IPv6的VPN,这样在校园网的环境下就可以免费的上网了,比较爽。以前一直用的是GoAgent来做代理,但是只是个普通的HTTP代理而已,还有单次返回数据500KB的限制,更是无法用任何的客户端。这些都使得这种方式并不能完全替代付费校园网IPv4的使用。

    后来发现大家表示OpenVPN是有支持IPv6的补丁包的,只要打好了补丁,就可以支持Server和Client之间的IPv6连接了。于是开始动手,以RedHat系列为例:

第一步,安装编译工具和OpenSSL。
      yum install gcc gcc-c++ kernel-devel openssl-devel

第二步,安装LZO压缩模块,后面OpenVPN用它来压缩。
      wget http://www.oberhumer.com/opensource/lzo/download/lzo-2.04.tar.gz
   tar解压,进入目录./configure && make && make install

第三步,下载OpenVPN并打上IPv6的Patch,安装之。
   wget http://openvpn.net/release/openvpn-2.1.1.tar.gz
   wget https://github.com/downloads/jjo/openvpn-ipv6/openvpn-2.1.1-ipv6-0.4.11.patch.gz
   tar解压第一个,gunzip第二个,然后 patch –p0 < openvpn-2.1.1-ipv6-0.4.11.patch
   进入openvpn-2.1.1,./configure && make && make install
Continue reading »

112012
 

    想写篇新的内容,结果中间断线了,刷新一下写的东西都消失了,极为郁闷。所以一下内容是原本内容的简写版本,无图无格式,凑合着看吧,唉!
    前一阵子搞清楚了Suffusion出错的原因:它占用内存太多,超过了32MB。所以我之前的BYETHost的免费空间不能顶的起来了。后来暂时寄存在强哥的VPS上,再后来自己抢到了Buyvm的VPS,所以又搬了一次家。
    手机上安装了Better Terminal Pro 挺好用的。
    wget了一下LNMP的安装包,流程相当自动化,也很顺利。自己不会配置Nginx,就按着LNMP.org的说明来做,设置好了似乎还是没有生效。最后Reboot了一下才好的。关键的就在于安装阶段分配给Nginx主配置文件/usr/local/nginx/conf/nginx.conf是指向/home/wwwroot根目录的,而使用/root/vhost.sh配置的域名seanluo.com和附加的域名www.seanluo.com等,位于配置文件/usr/local/nginx/conf/vhost/seanluo.com.conf中,是指向在此处配置的一个绝对路径的,默认是/home/wwwroot/seanluo.com。
    DNS是用的HE.NET,很给力,除了A记录,还支持AAAA。看到我的VPS有16个IPv6地址,果断解析之。0.9版本的LNMP已经把Nginx升级到了带ipv6选项编译的版本,所以无须费心,之后就是nginx主配置文件和seanluo.com.conf文件,把listen 80;改成listen [v4地址]:80;和listen [v6地址]:80;即可。
killall nginx
/usr/local/nginx/sbin/nginx
搞定。现在博客http://www.seanluo.com同时支持v4和v6接入了。

另有个问题,搭建OpenVPN到现在也没搞好。客户端可以连接到VPS并获得IP了,却不能通过VPS访问外网,估计是iptables设置有问题,又不知道是啥问题,没研究过这个防火墙。坐等高人指点了。

摘抄:

1、添加虚拟主机,执行如下命令:/root/vhost.sh 根据提示输入要绑定的域名,回车,如果需要添加更多的域名,输入y,再输入要另外绑定的域名,多个域名可以用空格隔开(注:带www和不带www的是不同的域名,如需带www和不带的www的域名都访问同一个网站需要同时都绑定)。再输入域名绑定的目录(绝对目录,如/home/wwwroot/lnmp,如果不填默认是/home/wwwroot/绑定的域名,目录不一定非要是/home/wwwroot/,如果/data/ 下面有大量的空间也可以填写/data/www/lnmp 之类的。),再选择是否添加伪静态规则,默认已经有了discuz、discuzx、wordpress、sablog、emlog、dabr、phpwind、wp2(二级目录wp伪静态),可直接输入以上名称即可,如果需要添加自定义伪静态规则,直接输入一个想要的名字,程序会自动创建伪静态文件,直接在/usr/local/nginx/conf/你自定义的伪静态名字.conf 里面添加伪静态规则就行(注:添加完执行/etc/init.)。接下来会提示是否需要启用日志功能,一般情况下不需要启动,直接输入n就行,如需启动,输入y,再输入要定义的日志文件名字,回车就会自动添加虚拟主机。

2、删除虚拟主机,ssh执行:rm /usr/local/nginx/conf/vhost/域名.conf