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

Function Compute:静的パブリックIPアドレスの設定

最終更新日:Jul 19, 2024

Function Computeのデフォルトの送信IPアドレスは動的で、固定のCIDRブロックはありません。 Function Computeがデータベース、WeChatミニプログラム、およびサードパーティサービスにアクセスできるようにするには、ホワイトリストを設定する必要があります。 Function Computeの静的パブリックIPアドレス機能を使用して、静的パブリックIPアドレスをバインドし、静的パブリックIPアドレスをホワイトリストに追加できます。 このトピックでは、Function Computeコンソールでアウトバウンド静的パブリックIPアドレスを設定する方法について説明します。

使用上の注意

  • 静的パブリックIPアドレスを使用するには、仮想プライベートクラウド (VPC) にインターネットNATゲートウェイが必要です。 具体的には、インターネットNATゲートウェイを作成し、EIP (elastic IP address) を関連付けて、NATゲートウェイのSNAT (source network address translation) エントリを作成する必要があります。 これにより、VPC接続インスタンスはEIPを使用してインターネットにアクセスできます。 この場合、受信側から取得できるクライアントIPアドレスは、NATゲートウェイに関連付けられたEIPです。

  • NAT GatewayとEIPはどちらも、リージョンの特定のゾーンでのみ使用できます。 購入したNATゲートウェイとEIPがFunction Computeのサービスとは異なるゾーンにある場合、vSwitchを使用してゾーン間のインターネット接続を確立する必要があります。 詳細については、「Function Computeが利用可能なゾーン」をご参照ください。

  • EIPは、同じリージョン内のすべてのサービス間で共有されます。

  • RAMユーザーが静的IPアドレス機能を使用する前に、RAMコンソールにログインし、RAMユーザーにAliyunECSFullAccessAliyunVPCFullAccessAliyunEIPFullAccess、およびAliyunNATGatewayFullAccessのポリシーをアタッチする必要があります。

課金ルール

静的パブリックIPアドレスを設定すると、NATゲートウェイとEIPが作成される可能性があります。 この場合、料金が発生します。 詳細については、「インターネットNATゲートウェイの課金」および「課金の概要」をご参照ください。

静的パブリックIPアドレスを初めて設定する

前提条件

  • ネットワークが設定され、関数がVPCリソースにアクセスできるようにするために必要な権限がサービスに付与されます。 詳細については、「」をご参照ください。

  • サービス設定で、[VPCへのアクセス] パラメーターが [はい] に設定されています。 詳細については、「」をご参照ください。

手順

  1. Function Computeコンソールにログインします。 左側のナビゲーションウィンドウで、[関数] をクリックします。

  2. 上部のナビゲーションバーで、リージョンを選択します。 [関数] ページで、管理する関数をクリックします。

  3. 関数の詳細ページで、設定タブをクリックします。

  4. 左側のナビゲーションウィンドウで、[ネットワーク][変更] の順にクリックします。 [ネットワーク] パネルで、[静的パブリックIPアドレス] パラメーターを [はい] に設定し、[デフォルトNICのインターネットへのアクセスを許可] パラメーターを [いいえ] に設定します。

    説明

    機能が期待どおりにインターネットにアクセスできるようにするには、[デフォルトNICのインターネットへのアクセスを許可][はい] に設定し、静的パブリックIPアドレス設定が有効になるのを待ちます。 静的パブリックIPアドレス設定が有効になったら、[デフォルトNICのインターネットへのアクセスを許可][いいえ] に設定します。

  5. [OK] をクリックします。 [静的パブリックIPアドレス設定] ダイアログボックスで、メッセージを読み、チェックボックスをオンにして [OK] をクリックします。

    ネットワーク設定が完了するまでに1〜2分かかります。 完了後、ネットワーク設定を表示できます。 VPCコンソールに移動して、関連付けられた、または作成されたリソースに関する情報を表示することもできます。

Verify the result

  1. Function Computeコンソールにログインします。 左側のナビゲーションウィンドウで、[関数] をクリックします。

  2. 上部のナビゲーションバーで、リージョンを選択します。 [関数] ページで、管理する関数をクリックします。

  3. 関数の詳細ページで、コードタブをクリックし、コードエディターでコードを記述します。

    この例では、関数コードはPythonで記述されています。

    # -*- coding: utf-8 -*-
    import logging
    import requests
    
    def handler(event, context):
      logger = logging.getLogger()
      try:
        r = requests.get('https://myip.ipip.net')
        clientIP = r.content.split()[1]
        logger.info('Client IP: ' + clientIP)
      except:
        r = requests.get('http://ipinfo.io')
        clientIP = r.json()['ip']
        logger.info('Client IP: ' + clientIP)
      return clientIP
  4. コードを書いたら、デプロイをクリックしテスト機能をクリックします。

  5. コードが実行された後、応答でクライアントIPアドレスを表示できます。 クライアントIPアドレスは、割り当てられた静的パブリックIPアドレスです。

静的パブリックIPアドレスを追加する

静的パブリックIPアドレスを追加するには、次の手順を実行します。

  1. 関数の詳細ページで、[設定] タブをクリックします。 左側のナビゲーションウィンドウで [ネットワーク] をクリックし、[変更] をクリックします。 [ネットワーク] パネルで、[静的パブリックIPアドレス] の下にある [EIPの作成] をクリックします。

    VPCコンソールに移動します。

  2. VPCコンソールでEIPを作成し、使用するNATゲートウェイに関連付けます。 詳細については、「EIPの申請」をご参照ください。

    VPCコンソールで操作が完了したら、Function Computeコンソールのネットワーク設定ページに戻り、保存された設定を表示します。

その他操作

静的パブリックIPアドレス機能を無効にするか、割り当てられたIPアドレスを削除する場合は、Function Computeコンソールで [デフォルトNICのインターネットへのアクセスを許可] パラメーターを [はい] に設定し、VPCコンソールに移動してVPCに関連付けられているすべてのNATゲートウェイを削除します。