すべてのプロダクト
Search
ドキュメントセンター

Object Storage Service:バケットドメイン名を使用した OSS へのアクセス

最終更新日:Nov 16, 2025

OSS は、各バケットに一連のデフォルトエンドポイントを割り当てます。これらのエンドポイントを使用すると、インターネット、内部ネットワーク、転送アクセラレーションネットワークなど、ビジネスニーズやネットワーク環境に基づいて OSS リソースに柔軟にアクセスできます。

コアコンセプト

標準の OSS エンドポイントは、いくつかの部分で構成されています。OSS に正しくアクセスするには、次の 4 つのコアコンセプトを理解することが重要です。

概念

説明

使用法

リージョン ID

一般的なリージョン ID

ap-southeast-1

SDK または ossutil を使用した V4 署名などのシナリオで使用されます。

OSS 固有のリージョン ID

OSS 固有のリージョン ID

oss-ap-southeast-1

エンドポイントを形成するため、および API リクエストとレスポンスパラメーターなどのシナリオで使用されます。

エンドポイント

サービスエンドポイント

oss-ap-southeast-1.aliyuncs.com

SDK または ossutil で構成されます。OSS サービスとのネットワーク接続を確立するなどのシナリオで使用されます。

バケットドメイン名

特定のバケットのエンドポイント

bucket-name.oss-ap-southeast-1.aliyuncs.com

ブラウザからの直接アクセス、署名付き URL の生成、静的 Web サイトのホスティングなどのシナリオで使用されます。

これら 4 つの概念は階層的です。リージョン ID は地理的な場所を識別します。OSS はその場所に、対応する OSS 固有のリージョン ID を割り当てます。OSS 固有のリージョン ID は、ドメイン名のサフィックスと組み合わされてエンドポイント (サービスエンドポイント) を形成します。特定のバケットにアクセスするには、バケット名とエンドポイントを組み合わせて作成されるバケットドメイン名 (リソースエンドポイント) を使用します。

ドメイン名の種類

OSS は、ネットワーク環境とパフォーマンス要件に基づいて、さまざまな種類のエンドポイントを提供します。

重要

パブリックエンドポイント

このエンドポイントは、インターネットアクセス用です。Web アプリケーション、モバイルクライアント、およびリージョン間のアクセスに使用します。

ドメイン名のフォーマット

  • エンドポイント: oss-[RegionID].aliyuncs.com

  • バケットドメイン名: [BucketName].oss-[RegionID].aliyuncs.com

アクセス例

ファイル URL

次の例は、コンソールからプライベートバケット内のファイルの署名付き URL を取得する方法を示しています。詳細については、「署名付き URL を使用してファイルをダウンロードまたはプレビューする」をご参照ください。

  1. [バケットリスト] ページに移動し、ターゲットバケットをクリックします。

  2. ターゲットファイルの [ファイル名] をクリックするか、[操作] 列の [詳細] をクリックします。

  3. [ドメイン名][パブリックエンドポイント] を選択し、[オブジェクト URL のコピー] をクリックします。

  4. ブラウザで URL にアクセスします。

OSS バケットドメイン名を使用して HTML ファイルや画像などのファイルにアクセスすると、ブラウザはオンラインプレビューではなくダウンロードを強制します。ファイルをオンラインでプレビューするには、「カスタムドメイン名を使用して OSS にアクセスする」をご参照ください。

ossutil

次の例は、コマンドラインインターフェイス (CLI) ツール ossutil 2.0 を使用してファイルをダウンロードする方法を示しています。開始する前に、「ossutil 2.0 のインストールと構成」をご参照ください。このツールはデフォルトでパブリックエンドポイントを使用します。-e パラメーターを使用してパブリックエンドポイントを明示的に指定することもできます。

ossutil cp oss://example-bucket/dest.jpg dest.jpg -e oss-ap-southeast-1.aliyuncs.com

SDK

以下のセクションでは、一般的な言語のソフトウェア開発キット (SDK) 統合例を示します。他の言語の統合例については、「SDK リファレンス」の対応する言語の初期化メソッドをご参照ください。

Java SDK V2

SDK クライアントを初期化すると、デフォルトでパブリックエンドポイントが使用されます。リージョン ID を指定するだけで、エンドポイントを指定する必要はありません。完全な初期化コードサンプルについては、「OSS Java SDK V2 (プレビュー)」をご参照ください。

Java SDK V1

OSS クライアントインスタンスを初期化するときに、パブリックエンドポイントを指定します。完全な初期化コードについては、「OSS Java SDK V1」をご参照ください。

// シンガポールのパブリックエンドポイントを例として使用します。
String endpoint = "oss-ap-southeast-1.aliyuncs.com";
// OSS クライアントを初期化します。
OSS ossClient = OSSClientBuilder.create()
        .credentialsProvider(provider)
        .clientConfiguration(clientBuilderConfiguration)
        .region("ap-southeast-1")
        .endpoint(endpoint)
        .build();

Python SDK V2

SDK クライアントを初期化すると、デフォルトでパブリックエンドポイントが使用されます。リージョン ID を指定するだけで、エンドポイントを指定する必要はありません。完全な初期化コードサンプルについては、「OSS Python SDK V2」をご参照ください。

Python SDK V1

OSS クライアントインスタンスを初期化するときに、パブリックエンドポイントを指定します。完全な初期化コードについては、「初期化 (Python SDK V1)」をご参照ください。

# シンガポールのパブリックエンドポイントを例として使用します。
endpoint = "https://oss-ap-southeast-1.aliyuncs.com"
# OSS クライアントインスタンスを初期化します。
bucket = oss.Bucket(auth, endpoint, bucket, region="ap-southeast-1")

Go SDK V2

SDK クライアントを初期化すると、デフォルトでパブリックエンドポイントが使用されます。リージョン ID を指定するだけで、エンドポイントを指定する必要はありません。完全な初期化コードサンプルについては、「OSS Go SDK V2」をご参照ください。

Go SDK V1

OSS クライアントインスタンスを初期化するときに、パブリックエンドポイントを指定します。完全な初期化コードについては、「クライアントの構成」をご参照ください。

// OSS クライアントインスタンスを作成します。
client, _ := oss.New(
        "oss-ap-southeast-1.aliyuncs.com",	// シンガポールのパブリックエンドポイントを例として使用します。
        "",
        "",
        oss.SetCredentialsProvider(&provider),
        oss.AuthVersion(oss.AuthV4),
        oss.Region("ap-southeast-1"),
)

内部エンドポイント

このエンドポイントは、Alibaba Cloud 内部ネットワーク内からのアクセスに使用されます。ECS インスタンスが同じリージョンの OSS にアクセスする必要があるシナリオに最適です。内部ネットワークを使用して OSS にアクセスすると、パブリックネットワークのトラフィック料金を回避でき、より安定したネットワーク接続と低レイテンシーが提供されます。

ドメイン名のフォーマット

  • エンドポイント: oss-[RegionID]-internal.aliyuncs.com

  • バケットドメイン名: [BucketName].oss-[RegionID]-internal.aliyuncs.com

使用上の注意

  • DNS 構成の最適化

    内部エンドポイントを使用する場合は、Alibaba Cloud のプライベート DNS アドレス (100.100.2.136 および 100.100.2.138) を構成します。これにより、正しい仮想 IP アドレス (VIP) を取得し、DNS 解析の問題による OSS アクセスの問題を回避できます。

  • VIP ネットワークセグメントのルーティングの整合性

    各リージョンで、OSS は内部 VIP ネットワークセグメントに固定のアドレス範囲を割り当てます。システムは、この VIP ネットワークセグメント内で IP アドレスを動的に切り替えます。オンプレミスのデバイスまたはデータセンターが内部ネットワーク経由で OSS にアクセスする場合、ルーティング構成は VIP ネットワークセグメント全体をカバーする必要があります。そうしないと、不完全なネットワークルーティングが原因で接続が失敗する可能性があります。詳細については、「リージョンとエンドポイント」をご参照ください。

    重要

    接続性の問題を回避するために、ルーティング構成が VIP ネットワークセグメント全体をカバーしていることを確認してください。不完全な VIP ネットワークセグメント構成によって引き起こされる OSS サービスの可用性の損失については、お客様が責任を負うものとします。

  • セキュリティグループルールの構成

    ECS インスタンスを使用して内部ネットワーク経由で OSS にアクセスする場合、セキュリティグループルールは VIP ネットワークセグメントへのアクセスをブロックしてはなりません。これにより、適切なネットワーク接続が確保されます。

アクセス例

ossutil

次の例は、ECS インスタンスでコマンドラインインターフェイス (CLI) ツール ossutil 2.0 を使用して、同じリージョン内のファイルをダウンロードする方法を示しています。開始する前に、「ossutil 2.0 のインストールと構成」をご参照ください。構成中に内部エンドポイントを指定するか、ファイルのダウンロード時に -e パラメーターを使用して指定できます。

ossutil cp oss://example-bucket/dest.jpg dest.jpg -e oss-ap-southeast-1-internal.aliyuncs.com

SDK

以下のセクションでは、一般的な言語の SDK 統合例を示します。他の言語の統合例の詳細については、「SDK リファレンス」の特定の言語の初期化メソッドをご参照ください。

Java SDK V2

OSS クライアントインスタンスを初期化するときに、Endpoint パラメーターを指定するか、useInternalEndpoint(true) を使用して内部エンドポイントを設定できます。完全な初期化コードについては、「OSS Java SDK V2 (プレビュー)」をご参照ください。

  • 方法 1: 内部エンドポイントを指定する

    // シンガポールの内部エンドポイントを例として使用します。
    String endpoint = "oss-ap-southeast-1-internal.aliyuncs.com";
    // OSS クライアントを初期化します。
    OSSClient client = OSSClient.newBuilder()
            .credentialsProvider(provider)
            .region("ap-southeast-1")
            .endpoint(endpoint)
            .build();
  • 方法 2: useInternalEndpoint(true) を使用する

    // OSS クライアントを初期化します。
    OSSClient client = OSSClient.newBuilder()
            .credentialsProvider(provider)
            .region("ap-southeast-1")
            .useInternalEndpoint(true)
            .build();

Java SDK V1

OSS クライアントインスタンスを初期化するときに、内部エンドポイントを指定します。完全な初期化コードについては、「OSS Java SDK V1」をご参照ください。

// シンガポールの内部エンドポイントを例として使用します。
String endpoint = "oss-ap-southeast-1-internal.aliyuncs.com";
// OSS クライアントを初期化します。
OSS ossClient = OSSClientBuilder.create()
        .credentialsProvider(provider)
        .clientConfiguration(clientBuilderConfiguration)
        .region("ap-southeast-1")
        .endpoint(endpoint)
        .build();

Python SDK V2

OSS クライアントインスタンスを初期化するときに、Endpoint パラメーターを指定するか、use_internal_endpoint = True を設定して内部エンドポイントを設定できます。完全な初期化コードについては、「OSS Python SDK V2」をご参照ください。

  • 方法 1: 内部エンドポイントを指定する

    # シンガポールの内部エンドポイントを例として使用します。
    config.endpoint = "https://oss-ap-southeast-1-internal.aliyuncs.com"
    # OSS クライアントを初期化します。
    client = oss.Client(config)
  • 方法 2: use_internal_endpoint = True を使用する

    config.use_internal_endpoint = True
    # OSS クライアントを初期化します。
    client = oss.Client(config)

Python SDK V1

OSS クライアントインスタンスを初期化するときに、内部エンドポイントを指定します。完全な初期化コードについては、「初期化 (Python SDK V1)」をご参照ください。

# シンガポールの内部エンドポイントを例として使用します。
endpoint = "oss-ap-southeast-1-internal.aliyuncs.com"
# OSS クライアントインスタンスを初期化します。
bucket = oss.Bucket(auth, endpoint, bucket, region="ap-southeast-1")

Go SDK V2

OSS クライアントインスタンスを初期化するときに、Endpoint パラメーターを指定するか、WithUseInternalEndpoint(true) を使用して内部エンドポイントを設定できます。完全な初期化コードについては、「OSS Go SDK V2」をご参照ください。

  • 方法 1: 内部エンドポイントを指定する

    // OSS クライアントを構成します。資格情報プロバイダーとサービスリージョンを設定します。
    config := oss.LoadDefaultConfig().
            WithCredentialsProvider(credentials.NewEnvironmentVariableCredentialsProvider()).
            WithRegion("ap-southeast-1").
            WithEndpoint("oss-ap-southeast-1-internal.aliyuncs.com") // シンガポールの内部エンドポイントを例として使用します。
    
    // OSS クライアントインスタンスを初期化します。
    client := oss.NewClient(config)
  • 方法 2: WithUseInternalEndpoint(true) を使用する

    // OSS クライアントを構成します。資格情報プロバイダーとサービスリージョンを設定します。
    config := oss.LoadDefaultConfig().
            WithCredentialsProvider(credentials.NewEnvironmentVariableCredentialsProvider()).
            WithRegion("ap-southeast-1").
            WithUseInternalEndpoint(true)
    
    // OSS クライアントインスタンスを初期化します。
    client := oss.NewClient(config)

Go SDK V1

OSS クライアントインスタンスを初期化するときに、内部エンドポイントを指定します。完全な初期化コードについては、「クライアントの構成」をご参照ください。

// OSS クライアントインスタンスを作成します。
client, _ := oss.New(
        "oss-ap-southeast-1-internal.aliyuncs.com", // シンガポールの内部エンドポイントを例として使用します。
        "",
        "",
        oss.SetCredentialsProvider(&provider),
        oss.AuthVersion(oss.AuthV4),
        oss.Region("ap-southeast-1"),
)

転送アクセラレーションエンドポイント

転送アクセラレーションエンドポイントは、「OSS の転送アクセラレーションを有効にする」を有効にした後に利用できる専用のエンドポイントです。Global Accelerator のエッジゾーンを使用してデータ転送パスを最適化し、リージョンや国をまたいだ高速なアップロードとダウンロードを実現します。このエンドポイントは、長距離アクセスのネットワーク品質を大幅に向上させます。

ドメイン名のフォーマット

  • エンドポイント: oss-accelerate.aliyuncs.com

  • バケットドメイン名: [BucketName].oss-accelerate.aliyuncs.com

アクセス例

ossutil

次の例は、シンガポールリージョンの ECS インスタンスで CLI ツール ossutil 2.0 を使用して、別の国からファイルをダウンロードする方法を示しています。開始する前に、「ossutil 2.0 のインストールと構成」をご参照ください。構成中にアクセラレーションエンドポイントを使用するか、ファイルのダウンロード時に -e パラメーターを使用して指定できます。

ossutil cp oss://example-bucket/dest.jpg dest.jpg -e oss-accelerate.aliyuncs.com

SDK

以下のセクションでは、一般的な言語の SDK 統合例を示します。他の言語の例については、「SDK リファレンス」の初期化メソッドをご参照ください。

Java SDK V2

OSS クライアントインスタンスを初期化するときに、Endpoint を指定するか、useAccelerateEndpoint(true) を使用してアクセラレーションエンドポイントを設定できます。完全な初期化コードについては、「OSS Java SDK V2 (プレビュー)」をご参照ください。

  • 方法 1: アクセラレーションエンドポイントを指定する

    String endpoint = "oss-accelerate.aliyuncs.com";
    // OSS クライアントを初期化します。
    OSSClient client = OSSClient.newBuilder()
            .credentialsProvider(provider)
            .region("ap-southeast-1")
            .endpoint(endpoint)
            .build();
  • 方法 2: useAccelerateEndpoint(true) を使用する

    // OSS クライアントを初期化します。
    OSSClient client = OSSClient.newBuilder()
            .credentialsProvider(provider)
            .region("ap-southeast-1")
            .useAccelerateEndpoint(true)
            .build();

Java SDK V1

OSS クライアントインスタンスを初期化するときに、アクセラレーションエンドポイントを指定できます。完全な初期化コードについては、「OSS Java SDK V1」をご参照ください。

String endpoint = "oss-accelerate.aliyuncs.com";
// OSS クライアントを初期化します。
OSS ossClient = OSSClientBuilder.create()
        .credentialsProvider(provider)
        .clientConfiguration(clientBuilderConfiguration)
        .region("ap-southeast-1")
        .endpoint(endpoint)
        .build();

Python SDK V2

OSS クライアントインスタンスを初期化するときに、Endpoint を指定するか、use_accelerate_endpoint = True を使用してアクセラレーションエンドポイントを設定できます。完全な初期化コードについては、「OSS Python SDK V2」をご参照ください。

  • 方法 1: アクセラレーションエンドポイントを指定する

    config.endpoint = "oss-accelerate.aliyuncs.com"
    # OSS クライアントを初期化します。
    client = oss.Client(config)
  • 方法 2: use_accelerate_endpoint = True を使用する

    config.use_accelerate_endpoint = True
    # OSS クライアントを初期化します。
    client = oss.Client(config)

Python SDK V1

OSS クライアントインスタンスを初期化するときに、アクセラレーションエンドポイントを指定できます。完全な初期化コードについては、「初期化 (Python SDK V1)」をご参照ください。

endpoint = "oss-accelerate.aliyuncs.com"
# OSS クライアントインスタンスを初期化します。
bucket = oss.Bucket(auth, endpoint, bucket, region="ap-southeast-1")

Go SDK V2

OSS クライアントインスタンスを初期化するときに、Endpoint を指定するか、WithUseAccelerateEndpoint(true) を使用してアクセラレーションエンドポイントを設定できます。完全な初期化コードについては、「OSS Go SDK V2」をご参照ください。

  • 方法 1: アクセラレーションエンドポイントを指定する

    // OSS クライアントを構成します。資格情報プロバイダーとサービスリージョンを設定します。
    config := oss.LoadDefaultConfig().
            WithCredentialsProvider(credentials.NewEnvironmentVariableCredentialsProvider()).
            WithRegion("ap-southeast-1").
            WithEndpoint("oss-accelerate.aliyuncs.com")
    
    // OSS クライアントインスタンスを初期化します。
    client := oss.NewClient(config)
  • 方法 2: WithUseAccelerateEndpoint(true) を使用する

    // OSS クライアントを構成します。資格情報プロバイダーとサービスリージョンを設定します。
    config := oss.LoadDefaultConfig().
            WithCredentialsProvider(credentials.NewEnvironmentVariableCredentialsProvider()).
            WithRegion("ap-southeast-1").
            WithUseAccelerateEndpoint(true)
    
    // OSS クライアントインスタンスを初期化します。
    client := oss.NewClient(config)

Go SDK V1

OSS クライアントインスタンスを初期化するときに、アクセラレーションエンドポイントを指定できます。完全な初期化コードについては、「クライアントの構成」をご参照ください。

// OSS クライアントインスタンスを作成します。
client, _ := oss.New(
        "oss-accelerate.aliyuncs.com",
        "",
        "",
        oss.SetCredentialsProvider(&provider),
        oss.AuthVersion(oss.AuthV4),
        oss.Region("ap-southeast-1"),
)

プロトコルサポート

HTTP/HTTPS プロトコル

すべてのリージョンのすべてのエンドポイントとバケットドメイン名は、HTTP および HTTPS 経由のアクセスをサポートしています。安全なデータ転送のために、本番環境では HTTPS を使用してください。

IP プロトコル

すべてのリージョンは IPv4 アクセスをサポートしています。一部のリージョンでは、IPv4 および IPv6 経由のエンドポイントへのデュアルスタックアクセスもサポートしています。これにより、IPv6 ネットワーク環境のクライアントが OSS リソースに直接接続できます。IPv6 をサポートするエンドポイントの場合、クライアントは特別な構成を必要としません。純粋な IPv6 またはデュアルスタックネットワーク環境では、DNS は自動的に IPv6 アドレスを解決し、接続を優先します。クラシックネットワークの ECS インスタンスは、IPv4 または IPv6 経由で OSS リソースにアクセスできません。

エンドポイントの IPv6 サポートを確認する方法

dig AAAA コマンドを使用して、エンドポイントが IPv6 アクセスをサポートしているかどうかを確認できます。

dig AAAA ap-southeast-1.oss.aliyuncs.com

エンドポイントが IPv6 をサポートしている場合、コマンド出力の ANSWER SECTION に AAAA レコードが表示されます。このレコードは、ドメイン名に IPv6 アドレスが構成されていることを示します。

ap-southeast-1.oss.aliyuncs.com. 60 IN  AAAA    240b:4000:f10::2c5

リファレンス