내 임베디드 Linux 보드에서는 systemd-networkd를 사용하여 네트워크 인터페이스 구성을 관리합니다. 네트워크 인터페이스가 작동 및 작동 중지될 때 사용자 정의 애플리케이션을 시작/중지하는 일회성 스크립트를 트리거해야 합니다. 내가 찾았어네트워크 디스패처이는 내 요구 사항에 적합하지만 얼마나 리소스 집약적인지, 내 요구 사항에 가장 적합한 솔루션인지 잘 모르겠습니다.
대안이 있나요?
systemd-network-wait-online을 사용하여 네트워크가 시작될 때까지 기다릴 수 있다는 것을 알고 있지만, 내가 아는 한 systemd 대상 종속성은 부팅 순서로 제한됩니다.
답변1
현재 제가 이 문제를 처리하는 방식은 백그라운드에서 실행되고 네트워크 상태와 링크 상태를 관찰하는 자체 스크립트를 도입하는 것입니다. 네트워크가 오프라인이 되거나 다시 온라인이 될 때 systemd 대상을 시작하고 중지합니다. 애플리케이션은 이 특정 네트워크 종속성 대상에 의존합니다.
답변2
이 문제를 해결하기 위해 bash 스크립트를 작성했습니다. https://github.com/waltinator/net-o-matic
연결을 모니터링하고 연결이 끊어지면 사용자가 지정한 작업을 수행하여 다시 연결을 시도합니다. 사용 사례에 따라 조정할 수 있습니다.