Upgrade to Pro — share decks privately, control downloads, hide ads and more …

VPCでもFloatingIPを使いたいんだ

 VPCでもFloatingIPを使いたいんだ

JAWS-UG東京 ランチタイムLT会 #38 の登壇資料です。

More Decks by Yasunobu Kotani (はくひめ)

Other Decks in Technology

Transcript

  1. 自己紹介 名前 所属 仕事 小谷 泰庸 (はくひめ) ビップシステムズ株式会社 AWS基盤設計・構築 クラウド技術推進

    好きなAWSサービス Lambda Step Functions うちの子紹介 羽空(はく) 姫叶(ひめか) 璃空(りく) X @haku__hime © BIP Systems Corporation 2026 2
  2. 先日、ANSに合格しました! 2026年5月24日 AWS Certified Advanced Networking - Specialty (ANS) に合格しました!

    しかし・・・ 少し伸びた 悲しい・・・ © BIP Systems Corporation 2026 3
  3. Floating IPはどんな時に使う? 様々な通信要件の制約により、Floating IPが必要なケースはある DNSではなくIPを使いたい 双方向の通信確立が必要 AWSではRoute 53で接続先を切り替え る方法が代表的。 クライアントからサーバ、サーバからク

    ライアント双方で通信確立が必要な要件。 しかし、連携先のオンプレ環境やデバイ スが、DNS名前解決機能を持たないケー スあり。 製品によっては、クライアント/サーバ 双方からセッションを張り、アプリケー ション間通信を行うケースあり。 © BIP Systems Corporation 2026 5
  4. 今回の前提条件 ⚫ サーバはEC2とする。 ⚫ IPv4通信のみを対象とする。 ⚫ EC2に接続するためのIPアドレスをFloating IPで固定化する。 ⚫ EC2が外部に接続する際のソースIPアドレスの固定化も考慮する。

    本資料での表現について • 以降のスライドで「双方向通信」と表現される通信は、クライアント起点の通信だけでなく、サーバー起点の新規通信でも、同じ固定 IPアドレスを使用する通信を指します。 © BIP Systems Corporation 2026 6
  5. 実現方法①:NLB(Network Load Balancer) ⚫ ネットワーク インターネット/閉域網の両方からの接続に 対応。 ⚫ AZ毎にIPアドレス 有効化したAZごとに1つの静的IPアドレスを

    持つ。 インターネット向けではAZごとにEIPを指定、 閉域網向けではプライベートIPアドレスを指 定できる。 1つのIPアドレスでマルチAZ化はできない。 ⚫ 双方向通信不可 バックエンドのサーバから通信を開始する際 に、送信元IPとしてNLBのIPは使えない。 固定IP 固定IP AZ1 AZ2 NLB 障害 切替 EC2 EC2 ⚫ 自動切替実装 NLBの機能で実現可能。 © BIP Systems Corporation 2026 7
  6. 実現方法②:AWS Global Accelerator+ELB ⚫ ネットワーク インターネットからの通信に対応。 ⚫ マルチリージョン マルチリージョンに対応可能。 世界中のエッジロケーションから最適なエンド

    ポイントにルーティングされる。 ⚫ 双方向通信不可 バックエンドのサーバから通信を開始する際に、 送信元IPとしてGlobal AcceleratorのIPは使え ない。 固定IP×2 Global Accelerator ALB/NLB ALB/NLB 障害 ⚫ 自動切替実装 Global Acceleratorの機能で実現可能。 切替 EC2 © BIP Systems Corporation 2026 EC2 8
  7. 実現方法③:EIPフェイルオーバー ⚫ ネットワーク インターネットとの通信に対応。 ⚫ シングルリージョン、マルチAZ EIPはVPC内のENIに紐づけることが可能なた め、マルチAZのF/Oにも対応。 ⚫ 双方向通信可能

    バックエンドサーバから開始する通信もOK。 EIPのIPアドレスを使用して、双方向通信可能。 固定IP EIP AZ1 障害 ⚫ 自動切替実装 EIPをアクティブなEC2のENIにアタッチする 仕組みが必要。 切替 EC2 © BIP Systems Corporation 2026 AZ2 EC2 9
  8. 実現方法④:ENIフェイルオーバー ⚫ ネットワーク 閉域網からの通信(プライベートIP)に対応。 ⚫ シングルAZ ENIはサブネットに紐づくため、AZを跨いで 移動させることができない。マルチAZ構成に は採用不可。 ⚫

    双方向通信可能 バックエンドサーバから開始する通信もOK。 ENIのIPアドレスを使用して、双方向通信可能。 ⚫ 自動切替実装 ENIをアクティブなEC2にセカンダリENIとし てアタッチする仕組みが必要。 バックエンドサーバから開始する通信も考慮 する場合、セカンダリENIから通信されるよう にOS内のルートテーブルを変更する必要あり。 © BIP Systems Corporation 2026 AZ 障害 固定IP セカンダリ ENI プライマリ ENI 切替 EC2 EC2 10
  9. 実現方法⑤:仮想IPルーティング ⚫ ネットワーク 閉域網からの通信(プライベートIP)に対応。 ⚫ マルチAZ VPC CIDRと重複しないIPアドレスを仮想IP とし、ルートテーブルで通信経路を制御する ため、サブネットのCIDRに縛られない。

    ⚫ 双方向通信可能 バックエンドサーバから開始する通信もOK。 セカンダリIPとして付与する仮想IPアドレス を使用して、双方向通信可能。 ⚫ 自動切替実装 OS上の仮想IPを付与する仕組みが必要。 仮想IP向けのルーティングをルートテーブル に反映する仕組みが必要。 ルートテーブル AZ2 AZ1 障害 切替 EC2 EC2 固定IP ・プライマリIP ・セカンダリIP(仮想IP) VPC CIDRと重複しないIPアドレスをセカンダリIPとして設定する。 ※このIPアドレスは、ENIに割り当てるセカンダリプライベートIPではない。 © BIP Systems Corporation 2026 11
  10. 【補足】仮想IPルーティング+ EC2 ASGの実装 仮想IPルーティングを、EC2 Auto Scaling Groupを使ったオートヒー リングで実現する場合の実装ポイント ENI設定 OS起動時処理

    ライフサイクルフック ENIに付与されているIPアドレ スではない仮想IPを送受信に 使用するため、対象EC2の送 信元/送信先チェックを無効化 する。 EC2インスタンスが起動する 際、ネットワークIFに対して セカンダリIPを付与する。 付与するIPアドレスはVPC外 の仮想IPアドレス。 ASGのインスタンス起動イベ ント契機に、Lambda等によ りルートテーブルを書き換え、 仮想IPアドレス向けの通信を、 新規起動インスタンスのENIに 向ける。 © BIP Systems Corporation 2026 12
  11. まとめ AWS VPCでFloating IPを実現する方法 実現方法 ネットワーク 要件 冗長化スコープ ① NLB

    インターネット /閉域網 マルチAZ AZ毎に異なるIP 不可 単一IPでのマルチAZではない ② Global Accelerator+ELB インターネット マルチリージョン 2つのグローバルIP 不可 グローバル配信・DR向け ③ EIP F/O インターネット マルチAZ 1つのグローバルIP 可能 インターネット向けで双方向通信 するならこれ ④ ENI F/O 閉域網 シングルAZ 1つ以上のプライ ベートIP 可能 同一AZ限定 OS経路制御が必要な場合あり ⑤ 仮想IPルーティング 閉域網 マルチAZ 1つ以上のプライ ベートIP 可能 最もオンプレ要件を実現しやすい 構成だが、一部作り込みも必要 © BIP Systems Corporation 2026 固定IP仕様 ※IPv4前提で記載 双方向通信 コメント 13