結論:BYOIPとは?
BYOIPは、自社が所有するパブリックIPアドレス範囲をAWSに持ち込んで使える機能です。 通常、AWSではAmazonが管理するIPアドレスが割り当てられますが、BYOIPを使えば既存のIPアドレスをそのままAWS上で利用できます。
これにより、オンプレミスからAWSへの移行時にIPアドレスを変更する必要がなくなり、ファイアウォールルールやDNS設定、IPベースのアクセス制御リストをそのまま維持できます。
たとえ話:「会社の引っ越し」で理解するBYOIP
BYOIPは「オフィスを引っ越しても、既存の電話番号をそのまま使い続ける」ことに似ています
旧オフィス(オンプレミス)
自社ビルで運営
電話番号: 03-XXXX-XXXX
(自社所有のIPアドレス)
(BYOIP)
新オフィス(AWS)
最新ビルに移転
電話番号: 03-XXXX-XXXX
(同じIPアドレスを継続利用)
取引先(ユーザー)は同じ番号(IPアドレス)に連絡するだけ。移転先が変わったことを意識する必要がありません。
provision-byoip-cidr コマンド🧩 BYOIPの4つの構成要素
BYOIPを理解するには、以下の4つの構成要素を押さえましょう。すべて同じ重要度の要素です。
① IPアドレス所有権の証明
自社がそのIPアドレス範囲を正当に所有していることをAWSに証明します。 RIR(地域インターネットレジストリ)へのROA(Route Origin Authorization)登録と、X.509証明書による署名が必要です。
② アドレスプール
持ち込んだIPアドレス範囲は、AWSアカウント内で「BYOIPプール」として管理されます。 このプールが、AWSで使えるIPアドレスの在庫置き場になります。
③ Elastic IPアドレス
BYOIPプールからElastic IP(EIP)を割り当て、EC2インスタンスやネットワークインターフェースに関連付けて使用します。 通常のEIPと同じように扱えます。
④ プログラムによる管理
AWS CLI、SDK、CloudFormationを使って、BYOIPプールやEIPの割り当て・解放をプログラムで自動管理できます。 手動操作は不要です。
📐 BYOIPの全体像
自社IPアドレスがAWSのリソースに到達するまでの流れを見てみましょう。
IPアドレスの流れ:オンプレミスからAWSリソースまで
(203.0.113.0/24)
(APNIC等)
(AWS管理)
⚖️ BYOIPなし vs BYOIPあり
AWS移行時にBYOIPを使う場合と使わない場合の違いを比較しましょう。
❌ BYOIPを使わない場合
✅ BYOIPを使う場合
🔄 BYOIPの導入手順(5ステップ)
自社IPアドレスをAWSで使えるようにするまでの具体的なプロセスです。
📋 RIRでROAを作成する
所有するIPアドレス範囲に対して、RIR(APNIC、ARIN、RIPEなど)でROA(Route Origin Authorization)を作成します。 ROAとは「このIPアドレス範囲は、AWSのAS番号(AS16509)からアナウンスして良い」と宣言するものです。
🔐 自己署名X.509証明書で署名する
RIRのRDAPレコードに自己署名X.509証明書を登録し、その証明書で署名したメッセージをAWSに提出します。 これによりAWSは「IPアドレスの正当な所有者がAWSへの持ち込みを許可した」と確認できます。
# 署名メッセージのテキストを作成 echo "1|aws|| | \ openssl dgst -sha256 -sigopt rsa_padding_mode:pkcs1 \ -sign private-key.pem | openssl base64| "
☁️ AWSにCIDRをプロビジョニングする
AWS CLIでIPアドレス範囲をAWSアカウントに登録します。この操作でBYOIPプールが作成されます。
aws ec2 provision-byoip-cidr \ --cidr 203.0.113.0/24 \ --cidr-authorization-context \ Message="1|aws|123456789012|203.0.113.0/24|20261231",Signature="BASE64_SIGNATURE"
describe-byoip-cidrs でステータスを確認しましょう。
📡 BGPアナウンスを開始する(アドバタイズ)
プロビジョニングが完了したら、AWSからそのIPアドレス範囲のBGPアナウンスを開始します。 これにより、インターネット上のトラフィックがAWSにルーティングされるようになります。
aws ec2 advertise-byoip-cidr \ --cidr 203.0.113.0/24
📌 Elastic IPを割り当ててリソースに関連付け
BYOIPプールからElastic IPアドレスを割り当て、EC2インスタンスやNATゲートウェイなどに関連付けます。
# BYOIPプールからEIPを割り当て aws ec2 allocate-address \ --domain vpc \ --address 203.0.113.10 \ --public-ipv4-pool "ipv4pool-ec2-xxxxxxxxxxxxxxxxx" # EC2インスタンスに関連付け aws ec2 associate-address \ --allocation-id eipalloc-xxxxxxxxxxxxxxxxx \ --instance-id i-xxxxxxxxxxxxxxxxx
🎯 BYOIPの主なユースケース
BYOIPが特に有効な3つの代表的なシナリオを紹介します。
大規模クラウド移行
オンプレミスからAWSへの移行時に、既存のIPアドレスを維持することで、ファイアウォールルールやACLの変更を最小限に抑えます。移行期間中の並行運用もスムーズです。
メール配信のIP維持
メール送信サーバーのIPアドレスは長年かけてレピュテーション(信用度)を構築しています。BYOIPでIPを維持すれば、スパム判定されるリスクを回避できます。
セキュリティ要件の遵守
金融機関や政府機関では、特定のIPアドレス範囲を使うことが規制要件として求められる場合があります。BYOIPにより、コンプライアンスを維持しながらクラウドを活用できます。
📋 BYOIPの前提条件と制限事項
BYOIPを利用するために満たすべき条件と、知っておくべき制限をまとめます。
✅ 前提条件
⚠️ 制限事項
🏆 ベストプラクティス
BYOIPを安全かつ効率的に運用するためのポイントです。
🔍 事前検証を十分に行う
ROAの設定、証明書の有効期限、RDAP/WHOISレコードの整合性を事前にチェックし、プロビジョニング失敗を防ぎましょう。
📊 段階的に移行する
全IPアドレスを一度に移行せず、一部のCIDRから段階的に移行して問題がないことを確認してから拡大しましょう。
🔔 モニタリングを設定する
CloudWatchやBGPモニタリングツールで、アドバタイズ状態やトラフィックの変化を継続的に監視しましょう。
📝 ロールバック計画を準備する
問題発生時にオンプレミスへ切り戻せるよう、旧環境のBGPアナウンス設定を一定期間保持しておきましょう。
❓ よくある質問(FAQ)
advertise-byoip-cidr を実行してBGPアナウンスを開始した時点です。