Netlink 소켓을 사용하여 프로그램을 작성했습니다. 링크 상태 변경 (예 : 네트워크 케이블이 연결/분리되었을 때)을 성공적으로 감지 할 수 있습니다. 그러나 두 경우 모두 RTM_NEWLINK
이벤트가 발생합니다.netlink에서 링크 상태가 변경된 인터페이스 알기
내가 SIOCGIFFLAGS
을 쿼리하고 IFF_UP
상태를 getifaddrs 시스템 호출을 사용하여 상태를 알 수 있다고 생각했습니다. 그렇게하려면 링크 이벤트를 유발 한 인터페이스가 무엇인지 알고 싶습니다. 그걸 알 수있는 방법이 있을까요? 현재 링크 변경을 야기한 인터페이스를 제공하는 구조체 nlmsghdr
또는 sockaddr_nl
의 멤버를 알지 못합니다.