EC2インスタンス(Linux OS)があり、それに2番目のネットワークインターフェイスを追加しました。公開Elastic IPを取得し、ネットワークインターフェイスに割り当てました。次に、EC2インスタンスにネットワークインターフェイスを割り当てました。
EC2インスタンスで実行すると
ifconfig
プライベートIPアドレスが正しく割り当てられたeth0およびeth1情報を取得します。 AWSでEC2インスタンスの「IPアドレスの管理」を選択すると、次のようになります。
両方のネットワークインターフェイスが同じサブネットとセキュリティグループに属しています。 eth0のパブリックIPをpingできますが、eth1のパブリックIPをpingできません。
何が欠けていますか?
更新:2番目のパブリックDNS(IP 52.27.x.x)は最初のIP 34.212.x.xとまったく同じであることに気付きました
WindowsまたはAWS Linuxを使用している場合を除き、インターフェイスを手動で構成する必要があります。
複数のネットワークインターフェイスを持つAmazon LinuxまたはWindows Serverインスタンスを起動すると、インスタンスのオペレーティングシステムでインターフェイス、プライベートIPv4アドレス、およびルートテーブルが自動的に構成されます。
Best Practices
セクションには、同じサブネット上に2つ(またはそれ以上)のインターフェースがあることによる潜在的な問題についての警告もあります。
同じサブネットからインスタンスに2つ以上のネットワークインターフェースを接続すると、非対称ルーティングなどのネットワークの問題が発生する可能性があります。可能であれば、代わりにプライマリネットワークインターフェイスでセカンダリプライベートIPv4アドレスを使用してください。詳細については、「セカンダリプライベートIPv4アドレスの割り当て」を参照してください。
警告次の手順は、下記の2番目の参照、ymmvの解析済みバージョンです。
セカンダリインターフェイスを作成するために実行した手順は次のとおりです。
/ etc/sysconfig/network-scripts/ifcfg-eth1ファイルを次のように作成します。
DEVICE=eth1
NAME=eth1
HWADDR=<value of link/ether from "ip a" command>
BOOTPROTO=dhcp
ONBOOT=yes
TYPE=Ethernet
USERCTL=no
NM_CONTROLLED=no
/ etc/sysconfig/networkを編集して以下を追加します:
GATEWAYDEV=eth0
Cloud-initが変更を上書きしないようにするには、/ etc/cloud/cloud.cfgを編集して以下を追加します。
network:
; config: disabled
ネットワークを再起動します
systemctl restart network
セカンダリルーティングテーブルを作成する
ip route add default via <default route ip from "ip route" output> dev eth1 table <new table number>
ルートを新しいテーブルに追加する
ip route add <secondary private ip> dev eth1 table <new table number from above>
ポリシーデータベースにルールを設定する
ip rule add from <secondary private ip> lookup 1000
静的ルートファイル/ etc/sysconfig/network-scripts/route-eth1を作成し、以下を追加します。
default via <default route IP> dev eth1 table 1000
<private ip> dev eth1 table 1000
Rule-eth1/etc/sysconfig/network-scripts/rule-eth1のルールファイルを作成します。
from <secondary private ip> lookup <new table number>
[〜#〜]ノート[〜#〜]
ステップ4で、ネットワークの再起動中にエラーが発生する場合があります。その場合は、ifcfg-eth0
ファイルとpkill dhclient
を移動/名前変更してください。次に、再起動時にそれを取得するために、ifcfg-eth0ファイルを元に戻す必要がありました。
参照
https://docs.aws.Amazon.com/AWSEC2/latest/UserGuide/using-eni.html
https://aws.Amazon.com/premiumsupport/knowledge-center/ec2-centos-rhel-secondary-interface/
https://docs.aws.Amazon.com/AWSEC2/latest/UserGuide/MultipleIP.html#ManageMultipleIP