更新时间:2025-09-23 GMT+08:00
分享

使用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();

相关文档