네트워크를 통해 시리얼 포트(COM)에 연결하기

2 weeks ago 5

문제

  • 우리 주변에는 시리얼 포트(흔히 COM 포트라 불리우는)를 통해 연결하는 많은 장치들이 있음. GPS 모듈, IRDA 등등
  • 우리가 원하는것은 실제 장치는 하나의 컴퓨터에 연결하고, 네트워크를 통해 원격 기기에서 애플리케이션을 실행하는 것
  • 애플리케이션은 시리얼 포트에서만 데이터를 읽을 수 있으므로 클라이언트는 가상 시리얼 포트를 사용해야 함
  • 따라서 우리에게 필요한 것은
    • 물리적 시리얼 포트에서 장치와 통신하고, 네트워크를 통해 서비스 하는 서버
    • 서버에 연결된 클라이언트
    • 가상 시리얼 포트

해결책

  • 해결책 중 하나는 텔넷과 RFC2217 - 텔넷 COM 포트 제어 옵션을 함께 사용하는 것
  • 이것은 위의 문제를 완벽하게 해결함
  • Telnet+RFC2217 시리얼 포트 포워딩을 지원하는 소프트웨어가 많이 있음 (윈도와 리눅스를 지원하는 서버, 클라이언트들)
  • 필요하다면 COM 포트를 다중화 하거나, 전송 데이터를 암호화 할 수 있음

적용 예시

윈도

  • 서버는 hub4com으로 구축
  • 클라이언트는 hub4com과 가상 시리얼 포트 드라이버인 com0com을 사용

리눅스

  • 서버는 ser4net으로 구축
  • 클라이언트는 socat 명령을 사용

Read Entire Article