1.) nmcliが使用する接続名からインターフェイスの実際の名前を取得したいと思います。私の場合は、VPN接続が複数あります。そのうちの1つを呼び出しますmy-vpn
。これでnmcli con up id my-vpn
、VPN接続が機能し、物理インターフェイス名が割り当てられますtun0
。
具体的には、名前のみを使用するか、基本的なネットワークツールなどを使用してtun0
コマンドからインポートしたいと思います。my-vpn
nmcli
ip
ifconfig
たとえば、試してみましたが、私が取得しようとしたインターフェイスの名前だけが出力nmcli -g connection.interface-name connection show my-vpn
として提供されました。my-vpn
tun0
tun0
2.)または(単純に)デバイス名をに変更できますかmy-vpn
?開始順序(開始順序などで列挙されるため)に気を使わずにVPN接続にパスを追加したいと思いますtun0
。tun1
答え1
nmcli
これを使用してip
IPv4 アドレスを照合して、接続名からインターフェイス名を取得できます。
ip -br addr show to "$(nmcli -g ip4.address con show <connection-name>)" | cut -d ' ' -f 1
答え2
NetworkManagerにはこの情報がありますが、そのデバイスでのみ利用可能です。まずデバイスを入手してから探します。
nmcli -g GENERAL.DEVICES con show <connection-name> | while read dev; do nmcli -g GENERAL.IP-IFACE device show "$dev"; done