ethtool -r
自動ネゴシエーションが有効になったときにC ++コードの動作を複製するためにNETLINKソケットを使用したいと思います。 CLIを検索しますethtool
ソースコード私は彼らがIOCTLソケットとethtoolコマンドを使用していることを発見しましたETHTOOL_NWAY_RST
。カーネル文書によるとここ, コマンドが NETLINK ソケットに変換されませんでした。あきらめる前に、同じ動作を達成する他の方法があるかどうかを知りたいです。
今まで試したこと
- インターフェイスに固定パスがあるため、そのパスが失われるため、インターフェイスを閉じて開くことは機能しません。ではこれは起こりません
ethtool -r
。 - 同じ理由で、
ip link set down/up [dev]
この行動は私にとって理想的ではありません。
私のコードは現在CLIを使用して実行されていますが、よりクリーンでethtool
より良いアプローチはユーザースペースAPIを直接使用することです。私のコードはNETLINKソケット用に書かれているので、このアプローチを好みます。
助けてくれてありがとう。ありがとう