EC2 Redhat - マルチIP

EC2 Redhat - マルチIP

2つのサブネット(サブネットAとサブネットB)を持つVPCがあります。
私たちのチームは、各サブネットで1つのIPをインスタンスに複数のIPに割り当てようとしています。インスタンスの起動時に
既にプライマリインスタンスのプライベートIPがあり、SubnetAコンソールオプションを介して別のプライベートIPを接続しました。コンソールのオプションで両方のIPを表示できます。インスタンスを再起動し、再起動すると両方のIPが表示されることが予想されますが、デフォルトのIPのみが表示されます。SubnetBAttach network Interface
Managed IP Address
ifconfig

プライベートIPが実際にインスタンスに接続されていることを確認するには、次のコマンドを使用してインスタンスメタデータを照会します。

  • curl -s http://169.254.169.254/latest/meta-data/network/interfaces/macs/02:14:46:91:bc:34/local-ipv4s
  • curl -s http://169.254.169.254/latest/meta-data/network/interfaces/macs/02:1d:2a:75:ax:04/local-ipv4s

上記の2つのコマンドの出力で、それぞれ両方のIPを見ることができます。

NETWORKMANAGERステータスを確認しましたが停止systemctl status NetworkManager しました。

次のコマンドを使用してサービスを開始し、起動時にNetworkManagerを自動的に有効にしました。
systemctl start NetworkManager
systemctl enable NetworkManager

その後、出力を確認しました。ifconfig

今回は2つのMACアドレスが表示されました。唯一の違いは、2番目のMACアドレスではIPアドレスを見ることができないことでした。したがって、デフォルトではインターフェイスが動作するため、基本デバイスを見つけることができます。このインターフェイスに関連付けられたIPアドレスはありません。

そのため、IPを関連付ける2つのオプションを試しました。

IPアドレスを手動で割り当てるには:
sudo ifconfig ens6 w.x.y.z

または、DHCPサーバー(ある場合)に連絡して、インターフェイスのIPアドレスを提供するようにします。
sudo dhclient -v ens6

両方とも機能し、その下に両方のIPが表示されますinet

最後の問題は、インスタンスを再起動するたびにこれを行う必要があることです。そこで、次のコマンドを使用して永続パスを追加してみました。

sudo /sbin/route add default gw 1xx.xx.2xx.193
ここでIPは2番目のIPですが、SubnetBエラーが発生します。 SIOCADDRT: Network is unreachable

上記の問題を解決するために私がしたことは、プライマリIPの詳細を含む
/etc/sysconfig/network-scripts/ifcfg-ens5ファイルがすでに存在し、
/etc/sysconfig/network-scripts/ifcfg-ens6セカンダリIPの必要な詳細を含む他のファイルを追加したことです。

これこれが私が言及したものです。

再起動して動作しています。

ただし、セカンダリIPをpingすることはできません。。 2番目のサブネットでもう1つ追加する必要があるようですが、Gatewayわかりません。

セカンダリIPを使用してトラフィック、ping、sshをルーティングするには、さらに行う必要があります。

私のVPCサブネットCIDRSを参照してください。

サブネットA:1.7.2.128/26 サブネットB:1.7.2.192/26

出力ip routeここに画像の説明を入力してください。

修正する:

今日サーバーを起動すると、テストインスタンスの1つでセカンダリIP(200)をpingできましたが、プライマリIP(136)はpingできませんでした。また、これはsshデフォルトのIPを使用して行われます。

ベストアンサー1

ip route add default via 1XX.XX.XXX.X9X dev ens6 table 2000;
ip route add 1XX.7X.2XX.X9X dev ens6 table 2000;
ip rule add from 1XX.7X.2XX.1XX lookup 2000;

上記のコマンドは問題を解決するのに役立ち、セカンダリIPをpingできました。再起動後もこの設定を維持するために同じコマンドrc.local

最初の行のIPは、ゲートウェイIP(サブネット範囲の2番目のIP)です。コマンドの2行目と3行目に記載されているIPは、私のサーバーの実際のセカンダリIPです。

おすすめ記事