web-dev-qa-db-ja.com

iproute2でデフォルトルートを削除する方法

NetworkManagerを使用してopenVPNサーバーに接続しました。すべてのトラフィックがVPNを通過するように構成されています。

> ip route                    
default via 10.4.4.73 dev tun0  proto static  metric 50 
default via 192.168.178.1 dev wlp2s0  proto static  metric 600 

10.4.4.73はtun0デバイスのピアアドレスです。 2番目のルートは、ローカルルーターを介してトラフィックをルーティングします。デフォルトルートを削除するために、次のコマンドを発行しました。

ip route del default via 10.4.4.73 dev tun0

これはエラーをスローしませんが、ルーティングテーブルも変更しません。そのルートを削除する正しい方法は何ですか?

2
jan

ip route delコマンドは私には問題ないようです。それが機能しない場合は、すべてのプロパティまたはルート(つまり、 'metric'や 'proto'を含むip route showが出力するすべてのもの)を指定する必要があります。そうでない場合は、 'を省略して回避できます。経由 '部分。

とにかく、これを行うと、NetworkManagerは後でルートを復元する可能性があり、OpenVPN接続を再度アクティブ化すると、ルートが確実に復元されます。

おそらく、nmcli connection modify $OVPN_CONN_NAME ipv4.never-default yesを実行する必要があります

man nm-settingsをご覧ください。

1
thaller

それがopenvpn構成なのか、network-managerパラメーターなのかを確認する必要があります。

redirect-gatewayオプションはサーバーによってプッシュすることも、クライアント構成によってセットアップすることもできます。削除またはコメントするだけです。

Network-managerについては、次を参照してください serverfault post

1
maxxvw

起動時に2番目のインターフェイスに追加されたデフォルトルートを削除するのと同じ問題が発生しました。適切なセレクターを使用した正しいコマンドは次のとおりです。

ip route del to default via 192.168.0.1

これにより、192.168.0.1インターフェース上のルートのみが削除されます。 opにはセレクタとして「to」がありませんでした。

0
Martin