デフォルトでは、Function Compute の関数は、組み込みのドメイン名システム (DNS) サーバである 100.100.2.136 と 100.100.2.138 を使用します。サイトアクセス高速化などのシナリオでは、これらのデフォルト設定をオーバーライドするためにカスタム DNS を構成します。
カスタム DNS を構成すると、Function Compute は、指定した設定で関数の /etc/resolv.conf ファイルを上書きします。resolv.conf の構文については、Linux で man 5 resolver を実行してください。マニュアルページがインストールされていない場合は、ご利用の Linux ディストリビューションに基づいてマニュアルページをインストールしてください。詳細については、「Linux マニュアルページ」をご参照ください。
制限事項
カスタム DNS は、Function Compute が提供する組み込みランタイムとカスタムランタイムでのみサポートされています。
前提条件
開始する前に、以下を準備してください。
関数。詳細については、「関数の作成」をご参照ください。
カスタム DNS の構成
Function Compute コンソールにログインします。Function Compute コンソール。
左側のナビゲーションウィンドウで、[サービスと機能] をクリックします。
上部のナビゲーションバーで、リージョンを選択します。
「[サービス]」ページで、対象のサービスをクリックします。
[関数] ページで、目的の関数を見つけ、[操作] 列の [設定] をクリックします。
「DNS 設定」セクションで、次の表に記載されているパラメーターを設定し、[保存] をクリックします。

| パラメーター | 説明 | 例 |
|---|---|---|
| Name Servers | 使用する DNS サーバの IP アドレス。1 つ以上の IP アドレスを追加します。Function Compute のデフォルト設定に戻すには、100.100.2.136 と 100.100.2.138 を入力します。 | 223.5.5.5, 223.6.6.6 |
| Search Domain | DNS 検索ドメイン。ホスト名を解決できない場合、各検索ドメインがホスト名に追加され、解決が再試行されます。1 つ以上のドメインを追加します。 | mydomain.com |
| DNS Options | 追加のリゾルバーオプションを key:value フォーマットで指定します (キーは必須、値はオプション)。 | attempts:1 |
構成の検証
保存後、カスタム DNS 設定がアクティブになっていることを確認します。
関数の詳細ページで、[コード] タブをクリックします。
以下の Python 3 のコードをコードエディタに貼り付け、[デプロイ] をクリックし、その後 [関数のテスト] をクリックします。
# -*- coding: utf-8 -*- import logging import subprocess def handler(event, context): logger = logging.getLogger() f = open('/etc/resolv.conf') logger.info("".join(f.readlines())) f.close() output = subprocess.check_output(["ping", "-c", "1", "www.aliyun.com"]) return output結果を確認します。
レスポンス:resolv.conf ファイルに基づいて生成されたコンテンツを表示します。
[ログ出力] — ドメイン名の返された IP アドレスを表示します。
