2021年5月12日 更新:服务器重启后IPv6无法自动获取,新增解决方案!参考 系统操作 第④步!
21年4月15日甲骨文官网突然宣布服务器都支持了IPv6了!-> 详细文章
这个还是真的不错哇!虽然现在IPv6对国内的路由还是非常一般!但是这么好的资源肯定得试一试啦!
本文主要分为2部分操作!第一部分:控制台面板设置IPv6相关模块。第二部分:在Linux服务器上启动IPv6。
博主已经把坑踩平了!大家可以试一试了!
这里无需重新创建服务器即可添加IPv6,也不用删除子网(删除子网会导致IP变)
面板操作
下面进入正题!登陆甲骨文后台!
① 前往 网络 -> 虚拟云网络 -> 选择查看网络详情
② 其实在控制台面板上主要下面4个步骤。
③ 打开 CIDR块 -> 点击 【添加 IPv6 CIDR块】
添加成功后如图!
④ 打开子网,编辑子网信息
勾选 启用IPV6 CIDR块
输入框随便输入一个值,例如:ee
点击保存!
这里如果出现下面的错误:NotAuthorizedOrNotFound,请移步到 处理错误 部分内容解决!成功后再继续这里的步骤!!
⑤ IPv6 CIDR块添加成功!如图!
⑥ 路由表 -> 路由表详情 -> 添加路由规则,如图设置即可!
目的地 CIDR 块:::/0 (注意2个冒号)
目标类型:Internet网关
⑦ 安全列表 -> 查看详情 -> 添加出站规则 和 添加 入站规则
目的地类型:CIDR
目的地 CIDR:::/0 (注意2个冒号)
IP协议:所有协议
⑧ 查看服务器实例详情 -> 附加的 VNIC -> 点击VNIC详情
右侧可见多了一个IPv6地址 的选项!点击 【分配 IPv6 地址】
⑨ 可以指定一个你想要的IPv6格式,不指定会随机分配一个。
⑩ 至此面板上的操作基本上完成了
系统操作
主要以CentOS7 举例。其他Linux版本请自行测试!
特别提醒一下,甲骨文的CentOS系统重启网卡会报错~ 所以通过重启网卡获取IP是行不通的。
① 获取IPv6(甲骨文网卡名称默认为ens3)
1 | dhclient -6 ens3 |
②查看IPv6是否生效
1 | ip add |
③测试一下IPv6网络情况!
1 | ping6 google.com |
④添加开机启动
服务器重启后,IPv6不会动态获取!那么执行下面的脚本。把获取IPv6的命令写到开机启动!
12 | chmod +x /etc/rc.d/rc.localecho “dhclient -6 ens3” >> /etc/rc.d/rc.local |
处理错误
添加IPv6的时候 提示:NotAuthorizedOrNotFound
据好多童鞋反馈发生这个错误!
有大佬说,是因为没有将免费升级?或者由于试用期已过?这个我也不知道了!
下面说一下解决方案!首选打开 Cloud Shell 执行命令!
① 获取 compartment_id
1 | oci iam compartment list |
② 查询子网(subnet)列表,获取到子网ID(红框内) subnet_id
PS:下面命令中的 [compartment_id] 替换为 上面的 compartment_id,不保留[]符号哦~
1 | oci network subnet list –compartment-id [compartment_id] |
如果你的子网是多个的话,这里会获取多个id,自己创建时间辨别一下到底你操作的是哪个?不知道咋辨别,那就2个ID都试一试!
③ 获取 cidr,如图获取CIDR块地址!
④ 更新子网(subnet)信息
将[subnet_id] 和 [cidr] 替换一下!
1 | oci network subnet update –subnet-id [subnet_id] –ipv6-cidr-block [cidr] |
如果执行提示错误:The requested ipv6CidrBlock 2603:c1:3:b500::/56 is invalid: Subnet can have only 64 bit IPv6 CIDRs.
需要修改一下cidr,2603:c1:3:b500::/56 -> 2603:c1:3:b500::/64
然后再执行一下就成功啦!!!