Thursday, January 15th, 2026

키보드 하나로 PC 3대 제어? 오픈소스 KVM ‘Deskflow’

개발자, 디자이너, 혹은 헤비 유저들의 책상을 보면 공통적인 풍경이 있습니다. 메인 작업을 위한 고사양 윈도우 데스크탑, 서버 관리를 위한 리눅스 머신, 그리고 디자인이나 앱 개발을 위한 맥북까지. 다중 기기 환경은 생산성을 높여주지만, 동시에 물리적인 고통을 수반합니다. 책상 위는 키보드와 마우스로 가득 차고, 의자를 돌려가며 다른 입력 장치를 잡아야 하는 번거로움은 작업의 흐름(Flow)을 끊어먹는 주범입니다.

키보드 하나로 PC 3대 제어? 오픈소스 KVM 'Deskflow'

이 문제를 해결하기 위해 많은 이들이 수십만 원짜리 하드웨어 KVM 스위치를 구매하지만, 복잡한 배선과 제한된 포트 수, 그리고 미세한 입력 지연은 여전히 숙제로 남습니다.

오늘 소개할 **’Deskflow’**는 물리적 장비 없이, 오직 소프트웨어와 네트워크만으로 이 모든 문제를 해결하는 오픈소스 솔루션입니다. 과거 유료 소프트웨어였던 ‘Synergy’와 그 파생작인 ‘Barrier’의 계보를 잇는 이 강력한 도구가 어떻게 다중 OS 환경을 하나의 시스템처럼 통합하는지, 그 기술적 원리와 실전 활용법을 심층 분석합니다.

1. 패러다임의 전환: 하드웨어 KVM vs 소프트웨어 KVM

Deskflow를 이해하기 위해서는 먼저 **KVM(Keyboard, Video, Mouse)**의 개념을 재정립해야 합니다.

하드웨어 KVM의 한계

전통적인 하드웨어 KVM은 물리적인 스위칭 박스입니다. 버튼을 누르면 모니터 화면과 USB 신호가 통째로 B 컴퓨터로 넘어갑니다.

  • 단점: 화면이 전환되는 동안의 ‘깜빡임(Blackout)’, 비싼 가격, 그리고 케이블 지옥. 무엇보다 “동시에 두 화면을 보면서 작업하는” 멀티태스킹 환경에는 부적합합니다.

Deskflow가 제시하는 ‘가상 KVM’

Deskflow는 ‘비디오(Video)’를 공유하지 않습니다. 각 컴퓨터는 각자의 모니터를 그대로 유지합니다. 대신 **입력 신호(Input Signal)**만을 네트워크 패킷으로 변환하여 실시간으로 전송합니다.

  • 사용자 경험(UX): 윈도우 PC의 마우스 커서를 화면 오른쪽 끝으로 밀면, 자연스럽게 옆에 있는 맥북의 화면 왼쪽에서 커서가 나타납니다. 그 순간 키보드 입력 권한도 맥북으로 넘어갑니다. 마치 두 컴퓨터가 거대한 하나의 듀얼 모니터 시스템인 것처럼 작동하는 것입니다.

2. 오픈소스의 계보: Synergy부터 Deskflow까지

이 기술의 역사는 꽤 깁니다. 2000년대 초반 Synergy라는 걸출한 오픈소스가 있었지만, 상용화되면서 유료로 전환되었습니다. 이에 반발한 커뮤니티가 코드를 포크(Fork)하여 Barrier를 만들었지만, 최근 유지보수가 정체되었습니다. Deskflow는 이 Barrier를 기반으로(혹은 Input Leap 프로젝트와 궤를 같이하며) 최신 OS 호환성과 보안을 대폭 강화하여 등장한, 현시점 가장 진보된 무료 오픈소스 KVM 솔루션입니다.

3. 아키텍처 및 작동 원리 심층 분석

Deskflow는 클라이언트-서버(Client-Server) 모델을 따르며, TCP/IP 프로토콜 위에서 작동합니다.

① 서버 (Server): 입력의 주체

키보드와 마우스가 물리적으로 연결된 ‘메인 컴퓨터’가 서버가 됩니다. 서버는 자신의 입력 장치에서 발생하는 이벤트(좌표 이동, 클릭, 키스트로크)를 감시(Hooking)하다가, 커서가 지정된 ‘엣지(Edge)’를 넘어가면 해당 이벤트를 패킷으로 캡슐화하여 네트워크로 쏩니다.

② 클라이언트 (Client): 명령의 수행자

제어를 받는 서브 컴퓨터들이 클라이언트가 됩니다. 서버로부터 패킷을 수신하면, 이를 OS가 이해할 수 있는 가상 입력 신호로 변환하여 실행합니다.

③ 지연 시간(Latency)과 네트워크

“네트워크로 마우스를 움직이면 끊기지 않을까?”라는 우려가 있을 수 있습니다. Deskflow는 마우스 좌표 같은 매우 가벼운 데이터만 전송하므로, 일반적인 로컬 네트워크(LAN) 환경에서는 지연을 거의 느낄 수 없습니다.

  • 권장 환경: 가능하면 모든 기기를 **유선 랜(Ethernet)**에 연결하는 것이 좋습니다. 와이파이 환경이라도 5GHz 대역을 사용하면 쾌적하지만, 2.4GHz 대역이나 신호가 약한 곳에서는 미세한 밀림 현상이 발생할 수 있습니다.

4. 핵심 기능: 단순 공유를 넘어선 통합

Deskflow는 단순히 마우스만 넘겨주는 것이 아닙니다. OS 간의 장벽을 허무는 강력한 기능들을 제공합니다.

클립보드 공유 (Clipboard Sharing)

가장 강력한 기능입니다. 윈도우에서 웹사이트 URL을 Ctrl+C로 복사하고, 마우스를 리눅스 화면으로 넘겨 Ctrl+V를 누르면 즉시 붙여넣기가 됩니다.

  • 기술적 원리: 텍스트(Plain Text), HTML, 비트맵(Bitmap) 등 다양한 MIME 타입을 지원하여 단순 텍스트뿐만 아니라 캡처한 이미지 조각까지 공유할 수 있습니다. (단, 대용량 파일 복사는 OS 간 파일 시스템 차이로 인해 제한적일 수 있습니다.)

보안 연결 (TLS Encryption)

나의 모든 키보드 입력이 네트워크를 타고 날아다닌다는 것은 보안상 큰 리스크입니다. (키로깅의 위험). Deskflow는 이를 방지하기 위해 SSL/TLS 암호화를 지원합니다.

  • 서버와 클라이언트가 처음 연결될 때 고유한 **’지문(Fingerprint)’**을 교환합니다. 사용자가 눈으로 이 코드가 일치하는지 확인하고 승인해야만 연결이 성립되므로, 중간자 공격(MITM)이나 승인되지 않은 기기의 접속을 원천 차단합니다.

5. 설치 및 구성 가이드 (크로스 플랫폼)

Deskflow의 강점은 OS를 가리지 않는다는 점입니다. 윈도우, 맥, 리눅스, 심지어 라즈베리 파이까지 연결할 수 있습니다.

Step 1: 설치

  • Windows/macOS: 깃허브(GitHub) 릴리즈 페이지에서 최신 인스톨러를 다운로드합니다. 윈도우의 경우 ‘Visual C++ Redistributable’이 필요할 수 있습니다.
  • Linux: 우분투/데비안 계열은 sudo apt install deskflow, 페도라는 sudo dnf install deskflow 명령어로 간단히 설치 가능합니다.

Step 2: 서버 구성 (메인 PC)

  1. 앱을 실행하고 **”Server (share this computer’s mouse and keyboard)”**를 체크합니다.
  2. ‘Configure Server’ 버튼을 누르면 그리드(Grid) 화면이 나옵니다.
  3. 우측 상단의 모니터 아이콘을 드래그하여, 실제 책상 위 모니터 배치와 똑같이 놓습니다. (예: 메인 모니터 오른쪽에 노트북 배치)

Step 3: 클라이언트 구성 (서브 PC)

  1. 앱을 실행하고 **”Client (use another computer’s keyboard and mouse)”**를 체크합니다.
  2. 서버 IP 항목에 메인 PC의 IP 주소를 입력하거나, Auto config를 체크합니다.
  3. Start를 누르면 서버 쪽에서 “새로운 클라이언트가 접속을 시도합니다”라는 로그와 함께 지문 확인 팝업이 뜹니다. 승인하면 연결 완료!

6. 트러블슈팅: 전문가를 위한 문제 해결

잘 되다가도 안 될 때가 있습니다. 특히 리눅스 환경에서는 몇 가지 기술적 장벽이 존재합니다.

① 리눅스와 Wayland 이슈

최근 리눅스 배포판들이 X11 대신 Wayland 디스플레이 서버를 채택하면서 문제가 생겼습니다. Wayland는 보안 구조상 응용 프로그램이 다른 프로그램의 입력에 간섭하는 것을 엄격히 차단하기 때문입니다.

  • 증상: 마우스 커서는 보이지만 클릭이 안 되거나, 클립보드 공유가 먹통이 됨.
  • 해결책:
    1. 로그인 화면(GDM 등)의 설정(톱니바퀴 아이콘)에서 세션을 ‘Ubuntu on Xorg’ 또는 **’X11’**로 변경하여 부팅합니다. (가장 확실한 방법)
    2. Wayland를 고수해야 한다면 libei 라이브러리를 지원하는 최신 빌드의 Deskflow(또는 Input Leap)를 사용해야 합니다.

② 방화벽과 포트 포워딩

연결이 타임아웃(Timeout) 된다면 99% 방화벽 문제입니다.

  • 기본 포트: Deskflow는 TCP 24800 포트를 사용합니다.
  • 해결:
    • Windows: 제어판 방화벽 설정에서 Deskflow 앱 통신 허용.
    • Linux: sudo ufw allow 24800 명령어로 포트 개방.
    • 명령어 확인: sudo lsof -nP -i:24800 명령어로 해당 포트가 ‘LISTEN’ 상태인지 확인하세요.

③ 한영 전환 문제

OS가 섞여 있을 때(예: 윈도우 서버 -> 맥 클라이언트) 한영 키가 제대로 작동하지 않을 수 있습니다. 이는 키 코드(Key Code) 매핑이 서로 다르기 때문입니다.

  • 해결: 맥 설정에서 Caps Lock을 한영 전환으로 쓰도록 설정하거나, Deskflow 설정 파일에서 키 매핑(Key Mapping) 스크립트를 수정하여 해결할 수 있습니다.

7. 결론: 책상 위의 자유를 찾아서

Deskflow는 단순한 유틸리티 프로그램이 아닙니다. 물리적인 경계를 허물고, 파편화된 컴퓨팅 환경을 하나로 묶어주는 **’워크플로우 통합 플랫폼’**입니다.

이 도구를 도입함으로써 여러분은:

  1. 책상 위를 어지럽히던 키보드와 마우스를 치워버리고,
  2. 의자를 돌리는 불필요한 움직임을 없애고,
  3. 직관적인 마우스 이동만으로 OS를 넘나드는 **’몰입(Immersion)’**을 경험하게 될 것입니다.

지금 당장 Deskflow를 설치하세요. 윈도우의 생산성과 리눅스의 개발 환경, 맥의 디자인 툴이 마우스 커서 하나로 연결되는 마법 같은 경험이 여러분을 기다립니다.

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다