このトピックでは、Alibaba Cloud Linux 2 を実行している Elastic Compute Service (ECS) インスタンスのルーティング情報を照会または構成できない問題の原因と解決策について説明します。
問題の説明
以下の構成の ECS インスタンスのルーティング情報を照会または構成できません。
イメージバージョン:
aliyun-2.1903-x64-20G-alibase-20190507.vhd
以前。カーネルバージョン:
kernel-4.19.34-11.al7
以前。uname -r
コマンドを実行して、カーネルバージョンを確認します。
以下の例では、eth1
という名前のセカンダリ ENI (Elastic Network Interface) を使用しています。コマンド内の IP アドレスとその他の情報は、実際の値に置き換えてください。
作成されたルートテーブルを照会できません。
eth1
のゲートウェイアドレスを表示します。ip a
ルートテーブルを作成します。
sudo ip -4 route add default via <Gateway address of eth1> dev eth1 table 1001
ルートテーブルに関する情報を表示します。コマンド出力には情報が含まれていません。
ip route list table 1001
ルートテーブルを再作成します。
sudo ip -4 route add default via <Gateway address of eth1> dev eth1 table 1001
次のエラーメッセージが返されます。
インスタンスのポリシーベースのルートを作成できません。
インスタンスのポリシーベースのルートを作成します。
sudo ip -4 rule add from <Source IP address> lookup 1001
次のエラーメッセージが返されます。
原因
ポリシーベースのルートは、CONFIG_IP_MULTIPLE_TABLES
モジュールに依存しています。 カーネルバージョン kernel-4.19.34-11.al7
以前では、このモジュールは無効になっています。
解決策
カーネルのアップグレードは、互換性と安定性の問題を引き起こす可能性があります。 Alibaba Cloud Linux 2 のリリースノート でカーネルの機能を確認し、カーネルバージョンをアップグレードする際は注意してください。
再起動操作によりインスタンスが一時的に停止し、実行中のサービスが中断され、データが失われる可能性があります。そのため、重要なインスタンスデータをバックアップしてから、オフピーク時にインスタンスを再起動してください。
最新のカーネルバージョンにアップグレードします。
sudo yum update kernel
新しいカーネルバージョンを有効にするために、インスタンスを再起動します。
sudo reboot