ethtool -r
자동 협상이 활성화되었을 때 C++ 코드의 동작을 복제하기 위해 NETLINK 소켓을 사용하고 싶습니다 . CLI를 검색합니다ethtool
소스 코드나는 그들이 IOCTL 소켓과 ethtool 명령을 사용한다는 것을 발견했습니다 ETHTOOL_NWAY_RST
. 커널 문서에 따르면여기, 명령이 NETLINK 소켓으로 변환되지 않았습니다. 포기하기 전에 동일한 동작을 달성할 수 있는 다른 방법이 있는지 알고 싶습니다.
내가 지금까지 시도한 것
- 인터페이스에 고정 경로가 있으므로 해당 경로가 손실되므로 인터페이스를 닫고 여는 것이 작동하지 않습니다. 에서는 이런 일이 발생하지 않습니다
ethtool -r
. - 같은 이유로
ip link set down/up [dev]
이 행동은 나에게도 이상적이지 않습니다.
내 코드는 현재 CLI를 사용하여 실행되고 있지만 ethtool
더 깨끗하고 더 나은 접근 방식은 사용자 공간 API를 직접 사용하는 것입니다. 내 코드는 NETLINK 소켓용으로 작성되었으므로 이 접근 방식을 선호합니다.
도움을 주시면 감사하겠습니다. 감사해요