내 로컬 세션 dbus 데몬에 대한 TCP 프록시를 구축하려고 합니다. 내가 해냈어
socat TCP-LISTEN:55556,reuseaddr,fork,range=127.0.0.1/32 ABSTRACT-CONNECT:/run/user/1000/bus
그러나 DBUS_SESSION_BUS_ADDRESS=tcp:host=127.0.0.1,port=55556 notify-send hello
이 오류가 발생합니다 .
2018/12/31 03:11:56 socat[4316] E connect(5, AF=1 "\0/run/user/1000/bus", 21): Connection refused
2018/12/31 03:11:56 socat[4317] E connect(5, AF=1 "\0/run/user/1000/bus", 21): Connection refused
이 문제를 어떻게 해결할 수 있나요? 오프라인 박스이기 때문에 보안에는 전혀 신경쓰지 않습니다.
답변1
추상 소켓으로 만들기 ss -xnl
위해서는 Unix 소켓이 start로 나타나는지 확인해야 합니다 . @
그런 건 없을 것 같아요 @
. 완전히 다른 버전을 실행하는 두 개의 시스템이 있습니다. 하나는 임의의 항목이 있는 추상 소켓을 사용하여 수신하는 것이고 @/tmp/dbus-QVAhTtSPNB
다른 하나는 unix를 사용하여 수신하는 것입니다(아니요정리) 소켓 /run/user/1000/bus
vs.
올바른 명령은 다음과 같습니다.
socat TCP-LISTEN:55556,reuseaddr,fork,range=127.0.0.1/32 UNIX-CONNECT:/run/user/1000/bus