Esxi虚拟机LEDEx64软路由SLAAC_IPV6协议环境的IPV6 NAT6转发设置方法

2021-07-11
0评论
/
阅读
爱搜啊

首先要说的是我的网络环境是在教育网下,PPPoE拨号上网,如果PC直接插网线拨号就能直接获取IPV6地址ok,应该就是传说中的SLAAC协议的IPV6

如果用路由器的话你会发现wan口获取了IPV6但是lan无法获取,之前还玩硬路由k2p的时候用Padavan和Pandorabox通过NAT6转发的方式成功的让lan获取了IPV6,ASUS固件据说是因为linux内核太老了反正我是没搞定,

后来把ac66u_b1给卖了,开始折腾软路由(就是马云家最常见的3215U+4intel网卡的配置),今天想说的是经过实践Esxi6.7虚拟的LEDEx64_v2.25的NAT6转发其实设置过程和硬路由一样(好像是废话?火星.....刚开始我真的以为多了Esxi虚拟这一层应该会发生点什么不一样的事吧?)

但是koolshare的LEDEx64有些地方又和我之前玩Pandorabox的时候不太一样,在某985电子科大网络大佬"emx4"朋友的倾力帮助下,结合自己瞎JB摸索过程的总结,将一些碎片化的知识整合好再发出来帮助一下和我具有相同网络环境但还在坑里没爬出来的人。由于方法均来源与各大网站以及论坛等,也已经无从考究原作者了,这里要重点感谢那些原创作者!!是大佬们慷慨的线索才让小白们有了学习的机会!!

尤其是NAT6转发脚本的原作者!!下面不说废话了直接开始,深一点的原理什么的不要问我,希望有大佬能回答,因为我不懂啊,我只是一个“方案整合商”好吧!(关于Esxi和LEDEx64的安装等问题本帖不涉及)。

由于排版差异,本帖内涉及到的一些代码直接复制粘贴的话可能会出现都各种符号的英文/汉字转换,以及空格的遗漏等等问题,如不能运行请仔细检查一下。

需要的NAT6脚本链接: 链接:https://pan把我换成点baidu把我换成点com/s/1B1JUFikKFjLQCxaAXk5PKw  提取码:853z 

SLAAC_IPV6协议环境下的IPV6 NAT6转发

〇.首先打开管理页面“网络-接口”,原始情况是如下的,WAN6有IPV6地址,而LAN是没有IPV6地址的。

1、在“系统-软件包”里检查你的LEDEx64有没有安装“kmod-ipt-nat6”这个包,没有去搜到它安装之,反正我装的目前最新版v2.25直接就带。

SLAAC_IPV6协议环境的IPV6 NAT6转发设置

2、将管理页面“网络-接口-LAN-DHCP服务器-IPV6设置-总是通告默认路由”勾选上。

SLAAC_IPV6协议环境的IPV6 NAT6转发设置

这步也可以通过ssh登陆LEDEx64后用命令来做:

uci setdhcp.lan.ra_default='1'
uci commit dhcp

然后继续在此页面下把 “网络-接口-LAN-一般配置”里“IPV6分配长度”的“禁用”改成“64”,有的地方好像是48?

SLAAC_IPV6协议环境的IPV6 NAT6转发设置

3、再用WinScp打开LEDEx64的目录/etc/init.d/下创建一个文件命名为“nat6”的文件(nat6脚本),并将我开头共享网盘中提供的nat文件中的内容复制进去(记事本可以打开,不过更推荐用专业的文本编辑器打开,因为有概率发生win和linux编码差异造成的未知错误等)记的保存,或者你直接我提供的那个文件用WinScp拖进去也行!

4、ssh登陆LEDEx64输入下面命令修改nat6的权限并使之生效:

chmod +x /etc/init.d/nat6
/etc/init.d/nat6 enable

5、继续ssh下输入如下命令,字面意思理解是修改防火墙某些关于IPV6的规则,具体原理不知:

uci set firewall.@rule["$(uci show firewall | grep 'Allow-ICMPv6-Forward' | cut -d'[' -f2 | cut -d']'-f1)"].enabled='0'
uci commit firewall

6、继续通过WinScp打开目录/etc/sysctl.conf文件,加入下面四行,字面理解意思是开启IPV6转发并接受?(如果有这四行内容但是值一般都是等于1,则逐个全都改为2,反正koolshare LEDEx64里没有):

net.ipv6.conf.default.forwarding=2
net.ipv6.conf.all.forwarding=2
net.ipv6.conf.default.accept_ra=2
net.ipv6.conf.all.accept_ra=2

7、加入转发规则,继续用WinScp打开目录/etc/firewall.user文件,加入下面一行内容:

ip6tables -t nat -IPOSTROUTING -s $(uci get network.globals.ula_prefix) -j MASQUERADE

这一步也可以从管理页面的“网络-防火墙-自定义规则”下面加:

8、修改全局ULA前缀的首字母为d开头,本来这一步没什么用,据说改成d开头是为了让网络能优先走IPV6,然而我改成别的照样可以呀,并且好像是不手动设置一下的话lan口始终无法获取IPV6地址。

IPV6 ULA前缀显示

在Padanvan下面就是需要手动指定一个可用的前几段IPV6地址为内网IPV6用,然而koolshare的LEDEx64没有这个选项,Pandorabox的这个选项就在“网络-接口”下面,而koolshare LEDEx64却没有,什么全局ULA?不存在的

于是乎经过某985大佬提示,用WinScp登陆LEDEx64,打开/etc/config/network文件,自行加入如下两行(注意空格什么的):

config globals ‘globals’
       optionula_prefix ‘8888::/64’

8888::/64是我自己写的,你也可以随便写,只要符合IPV6前几段的规则就行,不知道的就直接照抄我的吧,这个无所谓的,只影响你内网分配的LAN口IPV6的地址。

SLAAC_IPV6协议环境的IPV6 NAT6转发设置

再然后回到路由器管理页面刷新就会发现“网络-接口”那里多了个全局网络选项 IPV6 ULA前缀的选项,囧,原来你在这,为什么不能一开始就现行呢??(这个地方卡了好久好久蛋疼死了),LAN口的IPV6地址也出来了!

SLAAC_IPV6协议环境的IPV6 NAT6转发设置

9、非常关键,又被卡了很久的一个地方,还是根据985大佬的线索才解决。

koolshare LEDEx64的“网络-负载均衡”就是mwan3,里面有个规则设置,需要全都从“balanced”改成“主路由表”什么的,或者你像我一样用不到多拨之类的话直接把mwan3删掉好了,由于已经删了我就不截图了。

我不知道这个mwan3为啥会影响到IPV6,原理也不懂,但是任何功能性插件不应该默认都是关闭的吗


本站附件分享,如果附件失效,可以去找找看

诚通网盘附件百度网盘附件


于2021-07-11发布