使用IPv6访问OBS
OBS除支持IPv4外,还支持使用IPv6访问OBS桶。
背景介绍
双栈域名是指一个互联网域名(如 www.example.com)在域名系统(DNS)中同时配置了IPv4和IPv6两种地址记录。用户访问该域名时,DNS会根据访问者自身的网络能力,提供最合适的IP地址:
- 如果用户的网络和设备支持更新的IPv6,则将其解析到IPv6地址(格式如:2001:db8::1)。
- 如果用户仍在使用传统的IPv4网络,则将其解析到IPv4地址(格式如:192.0.2.1)。
双栈域名机制能够帮助用户从IPv4向IPv6平滑过渡,确保了在使用IPv6的同时可以兼容现有的IPv4用户,提供无缝、自动的访问体验。
OBS双栈域名
OBS双栈域名同时支持IPv4和IPv6,格式为“BucketName.obs.dualstack.RegionID.myhuaweicloud.com”,双栈域名的终端节点为“obs.dualstack.RegionID.myhuaweicloud.com”。其中BucketName为桶名,RegionID为区域ID,获取区域ID请参见区域和区域ID,例如华北-北京四名为examplebucket的桶,它的双栈域名为“examplebucket.obs.dualstack.cn-north-4.myhuaweicloud.com”,终端节点为“obs.dualstack.cn-north-4.myhuaweicloud.com”。
原有的桶访问域名“BucketName.obs.RegionID.myhuaweicloud.com”仅支持IPv4。
约束与限制
- 可使用IPv6的区域和对应的终端节点(endpoint)可参考表1。
为了确保您正常使用IPv6,请在使用前先提交工单确认区域的支持情况。
表1 可使用IPv6的区域和对应的终端节点 区域
终端节点(endpoint)
非洲-约翰内斯堡
obs.dualstack.af-south-1.myhuaweicloud.com
华北-北京四
obs.dualstack.cn-north-4.myhuaweicloud.com
华北三
obs.dualstack.cn-north-12.myhuaweicloud.com
华北-乌兰察布一
obs.dualstack.cn-north-9.myhuaweicloud.com
华东二
obs.dualstack.cn-east-4.myhuaweicloud.com
华东-青岛
obs.dualstack.cn-east-5.myhuaweicloud.com
华东-上海一
obs.dualstack.cn-east-3.myhuaweicloud.com
华南-广州
obs.dualstack.cn-south-1.myhuaweicloud.com
拉美-圣地亚哥
obs.dualstack.la-south-2.myhuaweicloud.com
土耳其-伊斯坦布尔
obs.dualstack.tr-west-1.myhuaweicloud.com
西南-贵阳一
obs.dualstack.cn-southwest-2.myhuaweicloud.com
亚太-马尼拉
obs.dualstack.ap-southeast-5.myhuaweicloud.com
亚太-曼谷
obs.dualstack.ap-southeast-2.myhuaweicloud.com
中东-利雅得
obs.dualstack.me-east-1.myhuaweicloud.com
中国-香港
obs.dualstack.ap-southeast-1.myhuaweicloud.com
- 使用IPv6前,请确保您的客户端和网络支持IPv6。
- 通过IPv6访问OBS桶时,不支持静态网站托管。
注意事项
- 如果您在IAM或存储桶策略中使用IP地址作为过滤条件,则需要更新策略以包含IPv6地址范围。
- 使用IPv6时,日志文件会以IPv6格式记录IP地址。您需要更新用于解析日志文件的现有工具、脚本和软件,使其能够解析IPv6格式。
使用方式
obsutil:
初始化配置obsutil时,将endpoint设置为双栈域名对应的endpoint。例如Windows操作系统使用永久AK、SK进行初始化obsutil:
obsutil config -i=ak -k=sk -e=https://obs.dualstack.cn-north-4.myhuaweicloud.com
API:
构造API请求时,Host填写双栈域名。例如调用创建桶API:
1 2 3 4 5 6 7 8 9 |
PUT / HTTP/1.1 Host: BucketName.obs.dualstack.cn-north-4.myhuaweicloud.com Content-Length: length Date: date Authorization: authorization x-obs-az-redundancy: 3az <CreateBucketConfiguration xmlns="http://obs.cn-north-4.myhuaweicloud.com/doc/2015-06-30/"> <Location>location</Location> </CreateBucketConfiguration> |
SDK:
初始化SDK客户端时,endpoint设置为双栈域名对应的endpoint。以Java客户端初始化为例:
1 2 3 4 5 6 7 8 9 10 11 12 |
// 使用双栈域名初始化SDK,以华北-北京四为例 String endPoint = "https://obs.dualstack.cn-north-4.myhuaweicloud.com"; // 认证用的ak和sk硬编码到代码中或者明文存储都有很大的安全风险,建议在配置文件或者环境变量中密文存放,使用时解密,确保安全;本示例以ak和sk保存在环境变量中为例,运行本示例前请先在本地环境中设置环境变量ACCESS_KEY_ID和SECRET_ACCESS_KEY_ID。// 您可以登录访问管理控制台获取访问密钥AK/SK,获取方式请参见https://support.huaweicloud.com/usermanual-ca/ca_01_0003.html String ak = System.getenv("ACCESS_KEY_ID"); String sk = System.getenv("SECRET_ACCESS_KEY_ID"); // 创建ObsClient实例ObsClient obsClient = new ObsClient(ak, sk, endPoint); // 使用访问OBS // 关闭obsClient obsClient.close(); |