ECS实战之IPv6隧道配置

本文涉及的产品
云服务器ECS,u1 2核4GB 1个月
云服务器 ECS,u1 4核16GB 1个月
云服务器 ECS,u1 2核4GB 3个月
简介:

引言:新华社北京11月26日电 近日,中共中央办公厅、国务院办公厅印发了《推进互联网协议第六版(IPv6)规模部署行动计划》,并发出通知,要求各地区各部门结合实际认真贯彻落实。计划指出到2018年末国内IPv6活跃用户数要达到2亿,2020年末达到5亿,2025年末中国IPv6规模要达到世界第一。

简介

网际协议第6版(英文:Internet Protocol version 6,缩写:IPv6)是网际协议(IP)的最新版本,用作互联网的网络层协议,用它来取代IPv4主要是为了解决IPv4地址枯竭问题,不过它也在其他很多方面对IPv4有所改进。IPv6诞生于1999年,设计目的是取代IPv4。其最大的优点就是设计地址长度达128bit,可以提供2的128次方个IP地址,近乎无穷的IP地址让IPv6能容得下海量设备,这将与5G等技术一起,支撑移动互联网、物联网、工业互联网、云计算、大数据、人工智能等新兴业态的快速发展。

入门

好了好了,不扯淡了。总结起来就是一个字:。2011年2月3日,全球互联网数字分配机构(IANA)宣布 ,全球IPv4地址池已经耗尽。随着云计算、大数据、工业4.0、物联网的发展,原有的IPV4地址远远不够各大领域的大拿瓜分,所以IPv6应运而生。
目前IPv6的过渡方案有四种(不要问我怎么知道,我就是网上找的),今天我们主要来讲下使用Tunnel(隧道)将IPv6数据包进行封装,通过现有的IPv4网络进行传输,从而达到接入IPv6网络的目的。国内大部分IDC提供商不支持IPv6,据我所知国内提供IPv6的主机商只有景安,这里不做过多介绍。
## 开始
网上一般推荐的都是Hurricane Electric(免费,而且支持的OS多)。本文以Hurricane Electric为例,展开实践。虽然说云栖社区已经有发文说阿里云要支持IPv6但是等出来还是会有一个漫长的周期。比如说迫于IOS应用上架,迫于想折腾体验下IPv6的快感。

系统:CentOS Linux release 7.2.1511 (Core)
内核:Linux g3p-net 3.10.0-514.26.2.el7.x86_64 #1 SMP Tue Jul 4 15:04:05 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux
网络环境:阿里云VPC
Tunnel提供商:Hurricane Electric

注册

IPV6隧道代理注册地址:Hurricane Electric
注册完后需要登录邮箱验证下邮件信息,我这里用的是Gmail和GV,没发现有异常的地方。

创建

点击Create Regular Tunnel创建Tunnel,IPv4 Endpoint填写ECS外网IPv4地址,选择一个Tunnel Servers进行愉快的下一步,怀着对香港这片土地的热爱,我选择了Tokyo,JP(其实是因为Ping值)。
下图可知,其实选择的余地挺大的,根据自己的实际情况选择相对应的Servers

出现下图时,说明创建成功接下来我们就开始在ECS上进行相对应的配置

配置

打开Example Configurations查看对应相关OS的实例命令,我这里因为是Centos所以采用的是Linux-net-tools
支持的系统

#修改内核参数
[root@g3p.net~]# sysctl -a | grep disable_ipv6
net.ipv6.conf.all.disable_ipv6 = 0
net.ipv6.conf.default.disable_ipv6 = 0
net.ipv6.conf.eth0.disable_ipv6 = 0
net.ipv6.conf.lo.disable_ipv6 = 0
net.ipv6.conf.sit0.disable_ipv6 = 0
net.ipv6.conf.sit1.disable_ipv6 = 0
[root@g3p-net ~]# ifconfig sit0 up
[root@g3p-net ~]# ifconfig sit0 inet6 tunnel ::74.82.46.6
[root@g3p-net ~]# ifconfig sit1 up
[root@g3p-net ~]# ifconfig sit1 inet6 add 2001:470:23:130f::2/64
[root@g3p-net ~]# route -A inet6 add ::/0 dev sit1
[root@g3p-net ~]# ip add
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN qlen 1
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
      valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host 
      valid_lft forever preferred_lft forever
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
    link/ether 00:16:3e:02:b1:5b brd ff:ff:ff:ff:ff:ff
    inet 172.19.151.94/20 brd 172.19.159.255 scope global eth0
      valid_lft forever preferred_lft forever
    inet6 fe80::216:3eff:fe02:b15b/64 scope link 
      valid_lft forever preferred_lft forever
3: sit0@NONE: <NOARP,UP,LOWER_UP> mtu 1480 qdisc noqueue state UNKNOWN qlen 1
    link/sit 0.0.0.0 brd 0.0.0.0
    inet6 ::172.19.151.94/96 scope global 
      valid_lft forever preferred_lft forever
    inet6 ::127.0.0.1/96 scope host 
      valid_lft forever preferred_lft forever
8: sit1@NONE: <POINTOPOINT,NOARP,UP,LOWER_UP> mtu 1480 qdisc noqueue state UNKNOWN qlen 1
    link/sit 0.0.0.0 peer 74.82.46.6
    inet6 2001:470:23:130f::2/64 scope global 
      valid_lft forever preferred_lft forever
    inet6 fe80::ac13:975e/64 scope link 
      valid_lft forever preferred_lft forever

验证

[root@g3p-net ~]# ping -6 ipv6.google.com
PING ipv6.google.com(tsa03s02-in-x0e.1e100.net (2404:6800:4008:803::200e)) 56 data bytes
64 bytes from tsa03s02-in-x0e.1e100.net (2404:6800:4008:803::200e): icmp_seq=1 ttl=54 time=331 ms
64 bytes from tsa03s02-in-x0e.1e100.net (2404:6800:4008:803::200e): icmp_seq=2 ttl=54 time=331 ms
^C
--- ipv6.google.com ping statistics ---
3 packets transmitted, 2 received, 33% packet loss, time 2002ms
rtt min/avg/max/mdev = 331.613/331.707/331.801/0.094 ms

支持的系统

Apple Airport  
Check Point R77 GAiA  
Cisco IOS  
CoyotePoint Equalizer  
Debian/Ubuntu  
Fortigate 4.x-5.x  
FreeBSD < 4.4  
FreeBSD >= 4.4  
JunOS  
JunOS ES  
Linux-net-tools  
Linux-route2  
Mac OS X  
Mikrotik  
NetBSD  
OpenBSD  
OpenWRT Backfire 10.03.1  
OpenWRT Barrier Breaker  
pfSense  
ScreenOS 6.2.0r1.0  
Solaris  
Vyatta / Ubiquiti EdgeMAX  
Windows 10  
Windows 2000/XP  
Windows Vista/2008/7/8  

错误

[root@g3p.net~]# ifconfig sit1 inet6 add 2001:470:23:130f::2/64
SIOCSIFADDR: Permission denied
[root@g3p.net~]# sysctl -a | grep disable_ipv6
net.ipv6.conf.all.disable_ipv6 = 1
net.ipv6.conf.default.disable_ipv6 = 1
net.ipv6.conf.eth0.disable_ipv6 = 1
net.ipv6.conf.lo.disable_ipv6 = 1
net.ipv6.conf.sit0.disable_ipv6 = 1
net.ipv6.conf.sit1.disable_ipv6 = 1

修改/etc/sysctl.conf中的disable_ipv6 参数为0

[root@g3p.net~]# sysctl -a | grep disable_ipv6
net.ipv6.conf.all.disable_ipv6 = 0
net.ipv6.conf.default.disable_ipv6 = 0
net.ipv6.conf.eth0.disable_ipv6 = 0
net.ipv6.conf.lo.disable_ipv6 = 0
net.ipv6.conf.sit0.disable_ipv6 = 0
net.ipv6.conf.sit1.disable_ipv6 = 0

思考

如果用Linux-net-tools、Linux-route2的话有一个问题,那就是重启会丢失相关配置,暂时没考虑这么多,所以这篇文章暂时就到这里啦!

参考

  1. https://zh.wikipedia.org/wiki/IPv6

~~这是不起眼的分割线~~~~
简单的介绍就到这里了,如果你有什么疑问可以直接联系我。文章中如有错误之处还请多多指教。

相关实践学习
ECS云服务器新手上路
本实验会自动创建一台ECS实例。首先,远程登陆ECS实例,并部署应用。然后,登陆管理控制台,并对这台ECS实例进行管理操作。
7天玩转云服务器
云服务器ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,可降低 IT 成本,提升运维效率。本课程手把手带你了解ECS、掌握基本操作、动手实操快照管理、镜像管理等。了解产品详情:&nbsp;https://www.aliyun.com/product/ecs
相关文章
|
5天前
|
弹性计算 缓存 安全
阿里云服务器ECS收费标准参考,2核4G配置ECS实例规格整理
阿里云提供多种2核4G ECS实例,如计算型c7、经济型e、u1等,价格不等,从68.0元/月到203.0元/月。ECS通用算力型u1实例采用高性能Intel处理器,网络收发包能力达30万PPS。经济型e实例基于Intel Xeon Platinum,适合入门级需求。2核4G服务器支持的并发访问人数依赖于软件效率、带宽、应用架构和用户行为等因素。更多信息请查看阿里云ECS产品页。
|
14天前
|
Java 应用服务中间件 开发者
【实战指南】Java Socket编程:构建高效的客户端-服务器通信
【6月更文挑战第21天】Java Socket编程用于构建客户端-服务器通信。`Socket`和`ServerSocket`类分别处理两端的连接。实战案例展示了一个简单的聊天应用,服务器监听端口,接收客户端连接,并使用多线程处理每个客户端消息。客户端连接服务器,发送并接收消息。了解这些基础,加上错误处理和优化,能帮你开始构建高效网络应用。
|
13天前
|
IDE Java 开发工具
从零开始学Java Socket编程:客户端与服务器通信实战
【6月更文挑战第21天】Java Socket编程教程带你从零开始构建简单的客户端-服务器通信。安装JDK后,在命令行分别运行`SimpleServer`和`SimpleClient`。服务器监听端口,接收并回显客户端消息;客户端连接服务器,发送“Hello, Server!”并显示服务器响应。这是网络通信基础,为更复杂的网络应用打下基础。开始你的Socket编程之旅吧!
|
5天前
|
存储 缓存 运维
云计算中的服务器选型与配置:技术深度解析
【6月更文挑战第29天】云计算服务器选型与配置深度解析:关注业务需求、技术要求及成本效益。重点包括CPU、内存、存储和网络配置的优化,结合负载均衡、缓存、虚拟化和自动化运维策略,以提升性能和效率,确保云服务的稳定与高效。
|
11天前
|
前端开发 安全 Java
Java服务器端开发实战:利用Servlet和JSP构建动态网站
【6月更文挑战第23天】**Servlet和JSP在Java Web开发中扮演关键角色。Servlet处理业务逻辑,管理会话,JSP则结合HTML生成动态页面。两者协同工作,形成动态网站的核心。通过Servlet的doGet()方法响应请求,JSP利用嵌入式Java代码创建动态内容。实战中,Servlet处理数据后转发给JSP展示,共同构建高效、稳定的网站。虽然新技术涌现,Servlet与JSP仍为Java Web开发的基石,提供灵活且成熟的解决方案。**
|
8天前
|
前端开发 小程序 应用服务中间件
在服务器上正确配置域名https证书(ssl)及为什么不推荐使用宝塔申请免费ssl证书
在服务器上正确配置域名https证书(ssl)及为什么不推荐使用宝塔申请免费ssl证书
50 4
|
10天前
|
运维 Java 测试技术
Spring运维之boo项目表现层测试加载测试的专用配置属性以及在JUnit中启动web服务器发送虚拟请求
Spring运维之boo项目表现层测试加载测试的专用配置属性以及在JUnit中启动web服务器发送虚拟请求
16 3
|
12天前
|
弹性计算 应用服务中间件 Linux
双剑合璧:在同一ECS服务器上共存Apache与Nginx的实战攻略
在ECS服务器上同时部署Apache和Nginx的实战:安装更新系统,Ubuntu用`sudo apt install apache2 nginx`,CentOS用`sudo yum install httpd nginx`。配置Nginx作为反向代理,处理静态内容及转发动态请求到Apache(监听8080端口)。调整Apache的`ports.conf`监听8080。重启服务测试,实现两者高效协同,提升Web服务性能。记得根据流量和需求优化配置。【6月更文挑战第21天】
139 1
|
14天前
|
存储 并行计算 数据处理
蓝易云 - 香港站群服务器1C,4C,8C,16C的配置介绍
以上是对服务器CPU核心数量的基本解释,但实际的服务器配置还会包括其他因素,如内存大小、存储类型和网络带宽等。这些因素都会影响服务器的性能和适用场景。
29 2
|
16天前
配置的代理服务器未响应怎么办
配置的代理服务器未响应怎么办
31 2