Lambda で参照する DNS サーバを変更する方法を教えてください

2024.05.28

困っていた内容

Lambda 関数で名前解決に使用する DNS サーバを変更したいです。
Lambda の設定には DNS サーバを設定する項目が無さそうですが、設定できる場合は方法を教えてください。

どう対応すればいいの?

カスタム DHCP オプションセットを設定した VPC に Lambda を接続してください。

VPC に接続した Lambda 関数(VPC Lambda)の場合、接続先の VPC に設定された DHCP オプションを利用します。

VPC LambdaはDHCPオプションセットの影響を受ける件 | DevelopersIO

カスタム DHCP オプションセットでは任意の DNS サーバを指定できるため、希望の DNS サーバを指定した DHCP オプションセットを設定した VPC に Lambda 関数を接続すると、 Lambda で希望の DNS サーバが使用されます。

VPC に関連付けることができる DHCP オプションセットは 1 つだけで、DHCP オプションセットを変更すると VPC 内の既存 EC2 インスタンスにも反映されます。 変更する際はご注意ください。

また、DHCP オプションセットの設定は変更できないため、設定を変更する場合は新しい DHCP オプションセットを作成して VPC に関連付ける必要があります。

参考資料

カスタムオプションセットを使用する場合、VPC で起動されたインスタンスは、次の図に示すように (1) カスタム DHCP オプションセットのネットワーク設定を使用し、(2) カスタム DHCP オプションセットで指定された DNS、NTP、および NetBIOS サーバーとインタラクションし、(3) VPC のルーターを介してネットワーク内の他のデバイスに接続します。

VPC を作成する際、Lambda は、DHCP オプションのセットを自動的に作成し、VPC に関連付けます。VPC 用に独自の DHCP オプションセットを設定できます。詳細については、Amazon VPC DHCP オプションを参照してください。

VPC アクセスの設定 (コンソール)

ただし、一度に VPC に関連付けることができる DHCP オプションセットは 1 つだけです。

注記 DHCP オプションセットを作成後に変更することはできません。VPC の DHCP オプションを更新するには、新しい DHCP オプションセットを作成して VPC に関連付ける必要があります。