VPNクライアントが内部で実行されているDockerコンテナを起動しました。コンテナ内でVPNを使用するために、ホストルーティングテーブルにパスを追加しました。
$ sudo ip route add 123.123.123.123 via 172.17.0.2 mtu 1400 table 3
172.17.0.2
コンテナのアドレスです。パスを追加した後、VPNを使用することに問題はありませんでした。
ただし、次の出力にパスは表示されませんip route
。
❯ ip route
default via 192.168.1.1 dev enp3s0 proto dhcp metric 100
172.17.0.0/16 dev docker0 proto kernel scope link src 172.17.0.1
192.168.1.0/24 dev enp3s0 proto kernel scope link src 192.168.1.42 metric 100
192.168.12.0/24 dev wlp0s20f0u1 proto kernel scope link src 192.168.12.1
同じパスを再度追加するとエラーが発生します。これは、そのルートが実際にルーティングテーブルに追加されたことを意味します。
❯ sudo ip route add 123.123.123.123 via 172.17.0.2 mtu 1400 table 3
RTNETLINK answers: File exists
問題は次のとおりです。
ip route
実際に、ルートテーブルに追加されたときに出力に追加されたルートが表示されないのはなぜですか?- 追加されたルートを確認するにはどうすればよいですか?
答え1
別のルートテーブルにルートを明示的に追加し、デフォルトではデフォルトip route show
テーブルのみが表示されるためです。
ルーティングテーブルを台無しにしてから数年が経ちましたが、パスを追加したテーブルを表示するのは簡単だと思いましたip route show table 3
。