내 목표는 수신된 데이터를 다른 컴퓨터로 전달하는 것입니다. 동일한 네트워크에 연결된 세 개의 장치(A, B, C)가 있습니다. A는 pyzmq를 사용하여 B가 구독하는 데이터를 게시합니다. 그런 다음 B는 수신된 데이터를 네트워크 네임스페이스를 통해 C로 보내야 합니다. 이것은 B에서 실행한 원래 코드입니다.
import subprocess
import zmq
context = zmq.Context()
socket = context.socket(zmq.SUB)
socket.connect("tcp://10.1.24.50:4000")
socket.subscribe("")
while True:
print("message rcv")
data = socket.recv_string()
command = ['sudo', 'ip', 'netns', 'exec', 'ue1', 'ping', '-i', '1', '-c', '1', '-s', str(len(data)), '8.8.8.8']
print(data)
subprocess.run(command, input=data, text=True)
그러나 아무것도 전송하지 않습니다. 해결책이 있나요?