AWSとは
AWSとは、Amazonから提供されている100種類以上のクラウドコンピューティングサービスのことを指します。正式名称を「Amazon Web Services」といいます。
クラウドコンピューティングというのは、インターネットを使って、サーバーやストレージ、データベース、そしてソフトウェアなどといった多種多様なサービスを使用することをいいます。
クラウドコンピューティングは、1台のパソコンと、インターネットに接続が出来る環境があれば、サーバー、ストレージ、データベースなどの利用が必要なだけ可能となります。
AWSのENI

AWSの活用をするためには、ネットワーク回線の準備を万全にし、必要となるネットワークの設計をしなければいけません。
AWSでは、このようなネットワークの設計をするためのサービスが提供されています。例えば、Amazon Route 53やDX(AWS Direct Connect)、そしてVPC(Amazon Virtual Private Cloud)といったものがあります。
ですが、そのサービスだけでは行き届かない場合もあります。AWSへとIPアドレスを複数設定したい時や、固定IPアドレスの付与をしたい時などには、柔軟にネットワークインターフェースを設定しなければいけません。
この記事では、AWSのネットワークインターフェースの設定をするためのサービスである、ENI(Elastic Network Interface)について説明していきます。
AWSのENIとは

VPCを使うことで、仮想的なプライベート環境へとEC2でサーバーの立ち上げが可能となります。
こういった環境において、ネットワークインターフェースをVPCに追加してくれるのがAWSのENIです。
AWSのENIは、物理的環境においてのNIC(Network Interface Card)を指します。NICの場合、複数枚サーバーに挿すことで、サーバーの担う役割の数に応じてIPアドレスを持たせたり、違ったセグメントの間で1台のサーバーを稼働させることが出来ました。
AWSのENIも、仮想的環境においてNICと同じネットワークの設定が出来るようになるといえます。昨今では、場所を選ばず仕事ができる「テレワーク」が普及することにより、ネットワークへの要求レベルは高くなっています。
つまり、上手にNICを活用して利用者の需要に応じることが必要となってくるということです。
インスタンスタイプの選定
EC2上で構築される仮想インスタンスは、仮想環境にあるといえど、物理的サーバーです。すなわち、選定したインスタンスによって、設定の出来るIPアドレスの数に制限が生じます。
例を挙げると、選定した仮想インスタンスが「a1.medium」ならば、ネットワークインターフェースの数は「2」までとなり、ネットワークインターフェースあたりのIPv4アドレスとIPv6アドレスの数は「4」までとなります。
設定するネットワークインターフェースの数やIPアドレスの数に応じて、インスタンスタイプの選定をするようにしましょう。
AWSのENIで可能となること

物理的環境でネットワークインターフェースを増やすためには、サーバーにNICを挿す必要があります。
しかしAWSの場合なら、ENIに対してMACアドレスやIPアドレス、セキュリティグループの登録などの設定をすることでネットワークインターフェースを作成して、それをWebブラウザ上で仮想インスタンスに取り付けたり取り外したりすることが可能です。
ただし仮想インスタンスには、(eth0)というネットワークインターフェースがデフォルトで取り付けられています。このネットワークインターフェースの取り外しは出来ませんので注意して下さい。
仮想インスタンスに対してネットワーク設定するには、まずデフォルトのネットワークインターフェースに対して設定してみて下さい。ネットワークインターフェースの追加が必要となる場合は、AWSのENIを新たに追加しましょう。
管理用ネットワーク
AWSのENIを追加する必要のあるケースとして代表的なものに、管理用ネットワークの作成というものがあります。
ユーザーのアクセスは、デフォルトのネットワークインターフェースによって受け付け、メンテナンスなどの管理が目的のアクセスは、ENIで追加したネットワークインターフェースによって、管理者用のパソコンからのアクセスのみ受け付けられるようにします。
このようにユーザーのアクセスと管理者のアクセスを区別することによって、セキュリティの強化が可能となるのです。
ネットワークインターフェースの冗長化
ほかにも、AWSのENIでネットワークインターフェースの追加をすることで、ネットワークインターフェースを冗長化することも出来ます。
例えば、稼働系ネットワークインターフェースが障害を起こした際に、待機系インターフェースへと切り替わるというプログラムコードを動かせます。
こうしたシステムの実現によって、障害が発生した際、Elastic IPアドレスやプライベートIPアドレス、そしてMACアドレスを、待機系ネットワークインターフェースへと引き継ぎ、ダウンタイムを最小化しながらサービスを継続することが可能となります。
AWSのENIにかかる料金
AWSの場合は、ENIを利用することによって直接必要となる追加の費用は発生しません。
選定をしたインスタンスモデルによってネットワークインターフェースの数に上限がありますが、制限範囲の間ならば追加の費用を負担せずに、ENIを利用することができます。
ただし、AWSのENIの追加をすることによって、それに関連した費用の負担が生じる可能性があるので注意が必要です。
ネットワークトラフィックの増加
まず注意するべき事項は、ネットワークトラフィックの増加についてです。
AWSのENIの追加をすることによって、ネットワークインターフェースも追加されるため、一般的な場合はネットワークトラフィックが増加してしまいます。よって、AWSのENIの追加を行うことで、AWSの料金が増加することがあります。
Elastic IP
その他には、追加をしたネットワークインターフェースへと「Elastic IP」という固定グローバルIPアドレスの割り当てをする場合に、追加の費用が生じる可能性があります。
仮想インスタンス1つにつき1つの「Elastic IP」の割り当てならば料金はかかりません。しかし2つ以上の「Elastic IP」を割り当てる場合、追加の料金が生じますので注意が必要です。
インスタンスモデル
そして忘れてはいけないのが、インスタンスモデルの選定についてです。
多数のネットワークインターフェースの追加をしたいがために、数多くのネットワークインターフェースを追加出来るインスタンスモデルを選んだ場合も、AWSの料金が上がる可能性があることを頭に留める必要があります。
AWSのENIを使用する場合、直接的に料金が増加することはありません。ですが、ネットワークトラフィックが増加する場合や、「Elastic IP」を追加した場合、間接的に利用料が増額する可能性があることも覚えておきましょう。
AWSのENIを活用しましょう

この記事では、AWSのENIに関する説明をしてきました。
AWSにおける仮想的環境では、物理的な配線やネットワーク機器から開放され、必要となる設定をクリック一つで行うことが可能となります。そのネットワークを設定するのに重要な柱となるのがENIです。
AWSの運用をする際、仮想的なNICであるENIを活用することで、ユーザーの複雑な需要にも答えられるネットワーク環境の実現が出来ます。
是非とも、AWSのENIを実際に導入してみて下さい。]]>
この記事の監修者・著者
-
株式会社オープンアップITエンジニア
-
未経験からITエンジニアへのキャリアチェンジを支援するサイト「キャリアチェンジアカデミー」を運営。これまで4500人以上のITエンジニアを未経験から育成・排出してきました。
・AWS、salesforce、LPICの合計認定資格取得件数:2100以上(2023年6月時点)
・AWS Japan Certification Award 2020 ライジングスター of the Year 受賞