私の仕事では、sshを介してスクリプトを実行するテストマシンがいくつかあります。テスト中、マシンはイーサネット接続を介してローカルネットワークにのみアクセスするようにしますが、その後、クリーンアップとデータ送信のために同じインターフェイスを介してインターネットにアクセスできるようにします。
各マシンに移動して、"Use this connection only for resources on its network"
> network manager
> IPv4 options
のroutes menu
オプションを切り替えることでこれを行うことができますが、できる方がはるかに便利ですこれをテストスクリプトに追加します。
VPN接続に関連する同様の質問をいくつか見つけることができますが、通常のイーサネットインターフェイスのルーティングを正しく処理するようにします。助けてくれてありがとう。
nmcli
を使用して実行できます。キーはipv4.never-default
です。
nmcli connection modify enp3s0 ipv4.never-default true
enp3s0
を独自の接続名に変更します。false
またはtrue
を使用します。ファイルを直接編集する場合は、同様に行うことができます。
/etc/NetworkManager/system-connections/
ディレクトリに移動し、目的の接続を見つけます。 Sudo nano MyNetwork
を使用してネットワークを開きます。
ファイルを開いたら、[ipv4]
セクションを探し、次のようにnever-default=true
を追加します。
[ipv4]
dns-search=
method=auto
never-default=true
IPv6ルートも同様に処理する場合は、[ipv6]
セクションに同じ行を追加します。
[ipv6]
addr-gen-mode=stable-privacy
dns-search=
ip6-privacy=0
method=auto
never-default=true
エディターを保存して終了します Ctrl+X 次に、以下を使用してNetworkManagerを再起動し、変更が反映されるようにします。
Sudo systemctl restart NetworkManager.service
ネットワークに再接続すると、問題なく動作するはずです。
デフォルトルートを削除すると、LANサブネットからのみアクセス可能になります。
ip route delete default
そしてそれを元に戻すには:
ip route add default via <you_gateway_ip_address>