分类目录归档:遇到的鬼事情和他们的解决办法

如何在武大开心的网上冲浪

特别是关于ipv6地址下发

一切的罪恶,开始于我发现自己1t的机械硬盘不够用了……删掉几百g的高清电影?我是不愿意的,毕竟还要用来做种,那干脆买块新硬盘,Hitachi 3T的返修盘,两百五左右,也不算贵。ok,淘宝下单,到手。
打开机箱,这个事情并没有这么简单,难道我要在这个破机箱里装四块硬盘(考虑到里面已经有了两块ssd和那个老的机械,而这个机箱只有两个盘位(光驱位倒是有四个,可是有用吗?(也许有用,只是我不愿意承认这一点然后再买硬盘托架))恰逢矿难,蜗牛星际A款入手。
组NAS就出现了新的问题,我的老路由器只有300M的带宽(它是这么写的)实际拷贝文件的速度甚至只有10m/s。这显然是不行的。恰逢矿难,newifi3入手。
至此,这个给硬盘扩个容的小需求已经花掉了我六百大洋。

一不留神就几个月过去了,之前按照https://github.com/tuna/ipv6.tsinghua.edu.cn/blob/master/openwrt.md?tdsourcetag=s_pctim_aiomsg 没弄好,后来嘉伟解决了解决了这个问题。时间一下就过去了几个月,校园网升级了,之前的配置也不能用了,而嘉伟毕业了,不得不自己解决这件事情。在尝试了几个google上很容易搜索道德教程都不可以之后,找嘉伟要到了他之前的笔记。

一、一些背景知识

1. 什么是NAT? 
NAT即Network Address Translation,它可以让那些使用私有地址的内部网络连接到Internet或其它IP网络上。NAT路由器在将内部网络的数据包发送到公用网络时,在IP包的报头把私有地址转换成合法的IP地址。 
2.在NAT实验中需要理解的术语: 
1) 内部局部地址(Inside Local):在内部网络中分配给主机的私有IP地址。 
2) 内部全局地址(Inside Global):一个合法的IP地址,它对外代表一个或多个内部局部IP地址。 
3) 外部全局地址(Outside Global):由其所有者给外部网络上的主机分配的IP地址。 
4) 外部局部地址(Outside Local):外部主机在内部网络中表现出来的IP地址。 
3.NAT的优点和缺点: 
NAT的优点: 
(1) 对于那些家庭用户或者小型的商业机构来说,使用NAT可以更便宜,更有效率地接入Internet。 
(2) 使用NAT可以缓解目前全球IP地址不足的问题。 
(3) 在很多情况下,NAT能够满足安全性的需要。 
(4) 使用NAT可以方便网络的管理,并大大提高了网络的适应性。 
NAT的缺点: 
(1) NAT会增加延迟,因为要转换每个数据包包头的IP地址,自然要增加延迟. 
(2) NAT会使某些要使用内嵌地址的应用不能正常工作. 
 
4.NAT的工作原理: 
当内部网络中的一台主机想传输数据到外部网络时,它先将数据包传输到NAT路由器上,路由器检查数据包的报头,获取该数据包的源IP信息,并从它的NAT映射表中找出与该IP匹配的转换条目,用所选用的内部全局地址(全球唯一的IP地址)来替换内部局部地址,并转发数据包。 
当外部网络对内部主机进行应答时,数据包被送到NAT路由器上,路由器接收到目的地址为内部全局地址的数据包后,它将用内部全局地址通过NAT映射表查找出内部局部地址,然后将数据包的目的地址替换成内部局部地址,并将数据包转发到内部主机。 
 

二、准备工作

如上所述,我使用的是一台newifi3,刷入了PandoraBox 19.01,必要的安装包包括:ip6tables 和kmod-ipt-nat6,但是在我的环境下,这两个包都是预先安装好的。网络上有一些资料似乎说带有kmod的包不是很好安装。

三、搞他!

以下内容ssh到路由器完成

1

修改/etc/config/network文件,

config globals 'globals' 
option ula_prefix 'eeee:eeee:eeee::/48'

2

修改/etc/config/dhcp文件,

config dhcp 'lan' 
option interface 'lan' 
option start '100' 
option limit '150' 
option leasetime '12h' 
option dhcpv6 'server' 
option ra 'server' 
option ra_management '1' 
option ra_default '1' 

这部分的内容在我的环境下也不需要更改。

3

修改/etc/firewall.user在文末添加 
假设WAN对应的接口为eth0.2,不是eth0.2的,自行修改成你的wan口设备名(在这个环境下不太可能发生),添加以下内容: 

ip6tables -t nat -A POSTROUTING -o eth0.2 -j MASQUERADE 

4

终端中输入
ip -6 route |grep default 
查看当前IPv6默认路由 
结果显示如下 
default from (your ipv6) via (gateway) dev eth0.2  proto static  metric 512 
或者
default via (gateway) dev eth0.2  proto static  metric 512 
之后把这个gateway地址复制下来,运行下面这条命令
route -A inet6 add default gw (gateway) eth0.2 
然后路由器reboot…

5

route -A inet6 add default gw (gateway) eth0.2 这条命令需要每次开机运行。
在/etc/hotplug.d/iface/目录下新建一个文件,内容如下:

#!/bin/sh 
[ "$ACTION" = ifup ] || exit 0 
route -A inet6 add default gw (gateway) dev eth0.2 

保存后不要忘记加个权限
chmod +x (你自己起的名字)

至此,后面的设备也能愉快的访问ipv6了。

考古:绘制水稻遗传图

最后一次的遗传实验是根据预先做好的水稻SSR指纹电泳数据绘制水稻遗传图。实验原理部分如果你已经看到了这篇文章,想必已经比较了解,当然如果不了解也没关系,这篇文章依旧会带你很快的做完这个任务。

当前网盘里关于本实验的指南存在一些问题,孙某提供的代码不是很好用,并且我不是很理解他的思路。杨某没有group也没有排序,画出了重组率奇高的单条染色体。不过他们对我完成作业还是有一些帮助的,也是要谢谢他们。

在这个实验中有两种软件是可用的,一个叫做mapmaker/exp 3.0,另一个叫做mapmaker/exp 3.0b,前者是一个16位的控制台应用,后者为32位。我使用的是教育版win10 六十四位的版本,不提供16位的支持,而我懒得装虚拟机,恰逢班群某大佬提供了后者,所以……

MMintelNT <——————–我就是mapmaker/exp3.0b—————————->

这个软件支持raw格式的原始数据,它本质上是个txt,前两行是参数,后面是数据,为了提供软件能够识别的数据我们需要将excel中的数据复制出来做一些格式上的修改。

第一行data type 有这样几种选择:F2 intercross( 杂交群体)、F2 backcross(F2 回交群体,例如BCI ) 、F3 self(F3 杂交群体-通过自交) 、RI self(重组近交系-通过自交或近交)。对于这个实验显然我们需要F2 intercross。第二行包含用空格分开的3个整数,类似于183 30 0。这3个数据的第1个值代表多少个泳道,也就是做了多少个数据;第2个值表示提供的资料中遗传标记的个数(值得注意的是遗传标记在下面的数据中要在前面加*号),第3个值表示资料中数量性状的个数,在本实验中并没有。第3行及以下就是前面已经存入的标记和遗传代码。

这里我们以数据DataE做个例子。就像图里这样。

之后就可以打开程序,按照右边的参考代码运行。E_output点我看代码

最后用ps把这几张图拼接起来,得到结果。

毕竟是92年的考古软件,我想能搞成这样也算是可以了。

祝愿下一届的不要再成为mapmaker/exp 3.0(b)受害者。