2010-03-31 3 views
0

dbus를 사용하여 활성 네트워크 연결을 시뮬레이트하기 위해 Python을 사용하는 방법이 있습니까? dbus에서 getstate()를 호출하면 현재 네트워크 상태를 가져올 수 있습니다. 현재 상태를 4 (Connection Present)로 설정하려고합니다. 네트워크 관리자가 모뎀을 사용하여 연결할 수없고 다른 도구를 사용하여 연결할 수 있기 때문입니다. 피진 (Pidgin), 공감 (Empathy) 및 기타 소프트웨어는 네트워크를 감지 할 수 없습니다.dbus에서 네트워크 존재를 시뮬레이션하십시오.

+0

getState()를 호출하면 연결 상태를 얻을 수 있습니다. 즉, 네트워크 관리자가 상태를 어딘가에 설정하고 있음을 의미합니다. 신청서에서 어떻게 할 수 있는지 알고 싶습니다. – BlueSilver

답변

1

네트워크 관리자 트레이 아이콘을 마우스 오른쪽 버튼으로 클릭하고 해제 할 때 Pidgin과 Empathy가 모두 온라인 상태라고 가정합니다. 네트워크 사용. 따라서 비 NM 메커니즘을 통해 연결할 때이 작업을 수행 할 수 있습니다. 코드 필요 없음!

(NetworkManager와 동일한 D-Bus 인터페이스를 구현하고 시스템 버스에 앉아 온라인으로 가장하는 응용 프로그램을 작성한 다음 네트워크를 사용하여 실제 NetworkManager 프로그램을 종료하고 가짜 것,하지만 그건 나에게 잔인한 냄새 ...)

+0

감사합니다. 다만 네트워크 상태를 설정하고 싶다면 쉽게 할 수 있습니까? 상태를 4 (연결됨)로 설정하기 만하면됩니다. 아마도 신호를 내보내거나 어딘가에서 변수를 변경할 수 있습니다. – BlueSilver

+0

NetworkManager를 해킹하거나 위조 된 것을 쓸 수 있습니다. – wjt

0

옵션은 네트워크 매니저의 D-버스 인터페이스를 조롱 뭔가를 작성하거나 사용하는 도구를 지원 NetworkManager를위한 모듈을 작성한다.

관련 문제