本文以Ubuntu系统的腾讯云VPS为测试机。ECS 里面的系统配置,由于腾讯云的网络不支持IPv6,所以他官方镜像里面相关的设置都是被禁用了的,想要使用 IPv6 就要做一些修改。首先修改 /etc/sysctl.conf ,将其中两条禁用IPv6的设置更改为0:
1、登录 https://www.tunnelbroker.net/register.php 注册,然后在邮件里认证。
2、Create Regular Tunnel
IPv4 Endpoint (Your side):填写你的IPV4。
一般服务器都有ping功能,路由器可能关闭了ICMP,需要开通。否则会报错:
IP is not ICMP pingable. Please make sure ICMP is not blocked. If you are blocking ICMP, please allow 66.220.2.74 through your firewall.
3、隧道服务器,默认选的是 Los Angeles, CA, US
4、点击Create Tunnel
可以看到自己刚才输入的IPV4,及IPV6。
5、点击Example Configurations,选择自己的OS。配置后重启!即可使用。测试如下:
这次安装he隧道的过程真的是充满了艰辛,来来回回折腾了好几天,各种查资料和发邮件发帖求教,相当心累了。
先大概说下我对he隧道的理解吧,这是一个6in4的协议,即把ipv6数据包封装在ipv4包里进行通信。流程简述如下:
要完成这个过程需要以下几个地址都是可访问的:
至于最后客户端的ipv6地址,用途是给外网的ipv6服务器做身份标识,比如在test-ipv6.com的测试中,展示的本机ipv6地址就是这个client ipv6 address。
说完大致的原理,来看下给树莓派创建he隧道的过程。
先保证自己有一个可ping通的公网ip,详情可以咨询自己的运营商。
登录he的官网: tunnelbroker.net,注册账号啥的就不说了,直接点击创建隧道,这里有两种,我们选第一个regular tunnel就可以了。然后是填公网ip和服务器地址,事先可以测试一下各个服务器的延迟,具体教程很多这里就不重复了。
然后是重点:隧道创建完成后一定要先确认server ipv6 address是外网可Ping通的,不然结局就是我们本地可以发送ipv6数据到服务器,但是收不到任何响应,因为服务器的ipv6不通就表示外网的服务进不来。
推荐一个测试网站: http://www.ipv6now.com.au/pingme.php 。
这里以ipv6.google.com为例,把自己的server ipv6 address输进去点击Ping now之后就能看到结果,基本和普通的ping测试没啥区别。
如果自己的server ipv6 address没法ping通,要么发邮件到he的开发团队让他们帮忙看,要么自己再向运营商换个公网ip然后重新创建个tunnel,不过一般重启下光猫就能有个新的公网ip了。
我的光猫只给了一个千兆口和一个百兆口,但家里的设备较多,又想让它们都能用满我200M宽带的全部带宽,就接了一个千兆路由器。但这里要注意的是,he隧道虽然可以支持nat穿透,但为了避免麻烦,最好只有一层穿透,即内网都在同一个网关后面,这就需要把光猫出来的网线插到路由器的LAN口,让路由器只充当一个交换机的角色。
所以我的网络连接就是,光猫通过光纤接外网,把千兆LAN口接到路由器的LAN口上,其他所有的设备都接到路由器上,不管有线还是无线(有线当然也只能接路由器的LAN口哈)。这个连接下,我所有的设备都同处一个网段,后期方便使用局域网的文件共享服务。
接着登陆光猫的管理界面,找到树莓派,复制其mac地址。
然后找到光猫对应的静态ip设置界面,将该mac地址与ip绑定。
当然设置静态ip的事也可以通过树莓派自身来完成,不过我觉得相比而言更麻烦一点,就直接在光猫统一管理了。
补充一点,如果光猫有IPV6 DHCP服务,最好让其处于默认状态,不确定的设置前可以先重置一下光猫。我之前不小心设置了一下忘了还原,就也一直连接不上。
在局域网内,用其他电脑ssh登录进树莓派,当然如果你的树莓派本身也接了显示器键鼠啥的用它自己也行。
在tunnelbroker的页面,打开刚刚创建的tunnel,在example configurations里选择Debian/Ubuntu,然后复制里面的内容。(假设里用的就是树莓派的默认系统raspbian)
编辑树莓派的/etc/network/interfaces文件,把刚刚复制的内容粘贴进去,同时把local后面的地址改成内网刚刚配的静态ip。
我的配置文件如下,已隐去ipv6地址,实际中替换为自己的真实地址即可
保存文件,重启网络,可以用命令 sudo system networking restart,当然也可以直接重启树莓派。
重启之后用ifconfig看看,如果有he-ipv6这个隧道就说明创建成功了。
最直接的方式就是用ping6这个命令看看通不通。
然后可以用第1步提到的测试网站看看自己的client ipv6 address能不能通,以保证在之后的访问中其他网站的服务器可以识别自己的身份。
如果上面没有ping通的话,可以再用ifconifg看看各个接口的信息,注意he-ipv6那部分,有两个重要字段,即RX packets 和 TX packets,下面简称RX和TX。
一般现代的 *** 作系统不管是树莓派、路由器、还是光猫,它们都是支持ipv6的,包括这种6in4协议,如果发现自己连不通可以试试重装系统,恢复出厂设置等方式。
由于ipv6是公网地址,直接暴露在网上还是挺危险的,可以考虑加一些防火墙,详情可以参考其他的文章。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)