Closed5

LambdaのアウトバウンドIP固定

osakanaosakana

定石構成でパブリックサブネットにLambdaを置くのは?

結論:そんな構成にはできない

こうなので

  • サブネットとルートテーブルは 1 対 1
  • "パブリック" = インターネットに出ていける道があるということ
    = 送信先 0.0.0.0/0 のターゲットがインターネットゲートウェイ(igw)である
    • ルートテーブルの中に送信先 0.0.0.0/0 のターゲットは1つしか定義できない
    • igwにElastic IPを関連付けることはできない

こうなる

  • VPC内にプライベートサブネットを用意して、0.0.0.0/0 のターゲットをNATゲートウェイにする
  • NATゲートウェイにElastic IPを関連付ける
  • 当該プライベートサブネット内にあるLambdaから外に向けたリクエストのIPが固定される 👏
osakanaosakana

感想

  • 定石構成の意味は理解したけど、IPを固定したいだけなのにNATゲートウェイを使わないといけないのは無駄な気はする
    • NATゲートウェイって本来は「プライベートなネットワークの中からインターネットにアクセスしたい」という要望を叶えるためのものよね?
    • プライベートなネットワークに置く必要はないけど、IP固定したいからNAT使わざるを得ないになっていると思ってる
  • EC2だったらインスタンス自体にElastic IPを関連付けられるけど、Lambdaはサーバーレスだからそれが無理なんよな
    • だからネットワークの道上でIPを固定しないといけないという理解
  • なんかもうちょっといい方法ないのかなあ🤔
    • 裏技が公式に(prod用途でも)使えるようになってほしい
このスクラップは2024/05/10にクローズされました