EC2のMACアドレスを引き継いでみました

この記事は公開されてから半年以上経過しています。情報が古い可能性がありますので、ご注意ください。

はじめに

ソフトウェアのライセンスでMACアドレスを利用するのは珍しい話ではないと思います。
通常であれば、ソフトがインストールされたEC2をそのまま利用すればいいのですが、
何かの事情でMACアドレスを引き継いだ別のEC2が必要となるケースがあるかもしれません。
レアケースかとは思いますが、そんなときのためにブログを書いてみました。

目次

手順の概要

  1. ENIの設定変更
  2. EC2の削除
  3. EC2の立ち上げ
  4. ENIの確認

手順

ENIの設定変更

例のごとく、既にMACアドレスを引き継ぎたいEC2があるものとします。
まずは、EC2に紐づいているENIの設定変更を行います。MACアドレスを引き継ぐための処理です。

EC2に紐づいているENIはEC2のネットワーキングタブから確認することができます。

MACアドレスが確認できました。プライベートIPアドレスも同じ画面で確認ができます。
画面右上の「アクション」から「終了時の動作を変更」を選択します。

有効化のチェックを外して保存します。
こうすることで、EC2が削除されたとしてもENIが自動的に削除されないようになります。
逆に言えば、デフォルトだとEC2の削除時にENIは削除されてしまいます。

EC2の削除

MACアドレスを残したいEC2を削除します。
ENIをデタッチしたいところですが、プライマリENIはデタッチすることができないため、苦肉の策です。
先の手順でENIの設定変更をしているため、EC2を削除してもENIは削除されずに残ります。


EC2を削除した後のENI画面です。右上のインスタンスIDが「-」となっているため、このENIは現在EC2に紐づけられていません。

EC2の立ち上げ

EC2を立ち上げます。注意点のみ、下記に記します。

先ほどのEC2に紐づいていたMACアドレスを引き継ぐ必要があるため、ENIを指定します。
ENIはサブネット依存のため、適切なVPC/サブネットを選択してください。
パブリックIPアドレスは無効にする必要があります。
また、SGについては「既存のセキュリティグループを選択する」を選択しますが、実際のSGは選択せずそのままにします。
ENIはMACアドレスを引き継ぎたいものを選択してください。

残りは任意で問題ありません。EC2を立ち上げます。

ENIの確認

先ほど立ち上げたEC2です。
プライベートIPアドレスは一致しています。

ENIが同じもののため、MACアドレスも同一です。

まとめ

基本的にあまり使う機会はないかと思いますが、どうしてもEC2の立ち上げ直しが必要というケースの際にご利用ください。

投稿者プロフィール

takeshige
そろそろGCPに手を出したい