香港服务器配置IPv6隧道(6in4)教程

蜗牛 vps教程 2022-08-09 103 0

IPv6,互联网协议第6版(Internet Protocol version 6),皆在解决 IPv4 地址枯竭的问题。

IPv4 和 IPv6 是什么?

简单的说,IPv4 和 IPv6 都是 IP 地址的一种形式,IP 地址相当于互联网设备的地址,我们知道对方的地址后,就可以找到他。

平常我们见到和使用的 IP 地址大多是这样的:121.42.200.12,这种被称为 IPv4 地址,IPv4 使用32位(4字节)地址,因此只有 4,294,967,296 个,但随着联网设备的增加,这些地址显然是不够用的,所以需要新的协议和更多的地址。IPv6 便是这个新的协议。IPv6 的目的皆在解决 IPv4 枯竭的问题。

IPv6 大家可能有点陌生,但它在1998年就已经被定义出台,之所以很少见到他是因为之前 IPv4 地址还不存在枯竭的情况,近几年 IPv6 才被大家提起。IPv6 的地址形式是 2408:8033:8f3e:86c0:49e7:50b7:ec4d:2bf6 这样的,很长,可以分配 340,282,366,920,938,463,463,374,607,431,768,211,456  个(小山都不知道怎么读了),就算给全世界每粒沙子分配一个 IPv6 地址,都不一定用得完。

IPv6 的优点不止是数量多,还有很多优点,不过运营商和用户很难感受到这个优势,导致目前 IPv6 普及率极低,

IPv6 隧道又是什么?准确的说 IPv6 隧道并不是真正的 IPv6,可以理解为“工作在 IPv4 网络下的 IPv6 代理”。隧道服务器有一个 IPv4 和 IPv6 地址,它可以给用户分配 IPv6 地址。用户配置好隧道后,就可以访问 IPv6 网络,不过是通过 IPv4 连接到隧道服务器,然后隧道服务器访问 IPv6 网络,再通过 IPv4 返回给用户,所以还是离不开 IPv4。

IPv6 隧道用途并不是很大,普通用户没必要配置,体验并不友好。

那么为什么要给香港服务器配置 IPv6 隧道?

给服务器配置 IPv6 隧道并不是为了让服务器可以通过 IPv6 访问,而是为了一些特殊需求。IPv6 可以顺畅的访问 Google 等网站,所以,如果你使用的是国内服务器,要使用 Google 的一些资源做开发,就可以使用 IPv6 隧道来访问 Google。

比如这几天小编的后台登陆加入了 Google reCaptcha,但服务器是阿里云国内机房,无法访问 Google,就给服务器配置了 IPv6 隧道,完美可用。

说了这么多,下面就教大家如何在 Linux 和 Windows 的香港服务器配置 IPv6 隧道(不保证适用于所有 Linux 发行版)。

准备工作

首先我们需要申请一个 IPv6 隧道提供机构的账号,目前比较常用的是:Hurricane Electric。

官网:https://tunnelbroker.net/

进入官网 → 点击左上角登陆框的 [Register] → 依次填写账户名称、密码、电子邮箱、名字、姓氏等信息 → 填写完成后记得勾选同意服务条款 → 点击 [Register]

等待几分钟,你的电子邮箱会收到一封邮件,点击邮件内的链接激活账户后即可登陆使用。

登陆账户后,点击左侧的 [Create Regular Tunnel] 创建一个隧道,在输入框内填写你服务器的 IPv4 地址,填写之前请确保你的服务器可以 Ping(安全组设置为接受 IGMP 请求)。下面可以选择隧道服务器,国内用户一般选择香港就好,虽然延迟都不怎么滴,然后点击 [Create Tunnel] 创建隧道。

点击 [Main Page] 即可查看申请的隧道,点击隧道即可查看详细信息。

Server IPv4 Address 和 Server IPv6 Address 为隧道服务器的 IP 地址。

Client IPv4 Address 和 Client IPv6 Address 为你服务器的 IP 地址。

Linux 配置

以阿里云经典网络的CentOS 7为例,同样适用于 Debian 和 Ubuntu。

输入ip -6 address show查看是否已启用 IPv6

如果没有输出任何结果,编辑文件/etc/sysctl.conf,加入以下文本,保存,输入sysctl -p使其生效。

net.ipv6.conf.all.disable_ipv6 = 0

net.ipv6.conf.default.disable_ipv6 = 0

net.ipv6.conf.lo.disable_ipv6 = 0

再次输入ip -6 address show查看是否已启用 IPv6

如果有 IPv6 地址,则说明 IPv6 启用成功,如果没有,可以尝试重启系统。

然后打开 IPv6 隧道详情页面,点击 [Example Configurations] 选项卡,在下拉框中选择 [Linux-route2],下面的文本框会显示配置命令。

新建一个文件,文件名后缀命名为 sh,文件开头写上#!/bin/sh,然后下面写上显示的配置命令,需要注意,如果你的服务器是专有网络,或者是通过内网路由转发的网络,则需要把命令里的IP地址改为你的内网地址,保存文件,输入chmod +x 文件名赋予执行权限。

#!/bin/sh

modprobe ipv6

ip tunnel add he-ipv6 mode sit remote 216.218.221.6 local 121.42.200.12 ttl 255

ip link set he-ipv6 up

ip addr add 2001:470:18:353::2/64 dev he-ipv6

ip route add ::/0 dev he-ipv6

ip -f inet6 addr

# 脚本示例

为了让每次开机或网络重新配置后,脚本可以自动执行,将脚本添加到 network 启动脚本里。

修改文件/etc/init.d/network,大约在 157 行,touch /var/lock/subsys/network上面加入脚本的完整路径,比如:/root/HE-IPv6.sh,保存。不同的系统 network 文件皆有不同,将脚本路径加入到 start 操作的最后面即可。

输入systemctl daemon-reload重新加载启动文件

输入service network restart重启网络

输入ip -6 address show dev he-ipv6查看 IPv6 隧道是否配置成功

如果显示 IPv6 隧道地址,则可以访问一下 IPv6 网络测试,输入curl -I -6 ipv6.google.com,如果访问正常,则说明 IPv6 隧道配置成功,否则请检查脚本是否正确。

如果你本地有 IPv6 网络,则可以 ping 一下隧道地址检查是否通畅,或者在下方留言给我,我可以帮你测试。

如果 ping 不通,将安全组或防火墙规则设置为允许所有 IPv4 流量即可。

Windows 配置

以 AWS 的 Windows Server 2008 为例

打开 cmd

输入ipconfig /all查看是否有 IPv6 地址

香港服务器配置IPv6隧道(6in4)教程  第1张

Windows IPv6

正常情况下都是会有的,如果没有,检查 IPv6 协议是否启用。

跟 Linux 配置步骤一样,先在下拉框选择对应的 Windows 系统,获取配置命令。

将命令保存为批处理脚本,新建一个文件,文件名后缀命名为 bat,将命令粘贴保存即可。注意,由于 AWS 用的是内网路由转发,所以需要将命令的地址改为内网地址。

双击执行,输入ipconfig /all查看 [隧道适配器 IP6Tunnel] 是否存在 IPv6 隧道地址,如果存在,则说明 IPv6 隧道配置成功,可以使用浏览器访问 https://ipv6.google.com 测试。如果不存在,检查脚本是否正确,

Windows 不需要配置开机启动等,会一直生效,即使系统重启。

附加配置

为了更好的使用 IPv6 访问 Google 等网站,需要避免DNS污染,我推荐使用 Hosts 来指定 IPv6 地址,不推荐修改 DNS。

解析 www.google.com 正确的 IPv6 地址,推荐使用 IPv6 版 Google DNS 解析。

输入dig @2001:4860:4860::8888 aaaa +noall +answer www.google.com解析地址

如果提示 dig 命令不存在,输入yum install bind-utils或apt-get install dnsutils安装

测试解析出的地址是否可以 Ping 通,注意需要使用ping6命令,如果可以 Ping 通,则可以添加到/etc/hosts,如果不可以,可以尝试更换DNS。比如:2620:0:ccc::2

可以使用命令快速添加到 Hosts:echo "2404:6800:4005:805::2004 www.google.com" >> /etc/hosts,也可以手动编辑 Hosts。

Windows 用户输入nslookup www.google.com 2001:4860:4860::8888解析,Hosts 路径:C:\Windows\System32\drivers\etc\hosts

好了,以上就是给服务器配置 IPv6 隧道的方法,你也可以应用于非服务器设备,但是不要指望 IPv6 隧道能给你带来非常好的网络体验,我的网络是有原生 IPv6 的,隧道跟原生相比,相差真的很大,特别是国内。

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:niceseo99@gmail.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

评论

有免费节点资源,我们会通知你!加入纸飞机订阅群

×
天气预报查看日历分享网页手机扫码留言评论Telegram