본문으로 건너뛰기
로그인 둘러보기
개발·코딩·데이터베이스 · 윈도우즈 유틸

mDNS TUI Browser

0

mDNS TUI Browser는 Rust로 작성된 크로스 플랫폼 터미널 기반 mDNS 서비스 탐색 프로그램으로, ratatui 기반의 TUI 인터페이스를 통해 로컬 네트워크에서 advertise되는 mDNS 서비스를 실시간으로 발견하고 상세 정보를 확인할 수 있도록 만든 도구입니다.

네트워크 서비스 탐색오픈소스크로스플랫폼터미널 UI

소개

mDNS TUI Browser는 Rust로 작성된 크로스 플랫폼 터미널 기반 mDNS 서비스 탐색 프로그램으로, ratatui 기반의 TUI 인터페이스를 통해 로컬 네트워크에서 advertise되는 mDNS 서비스를 실시간으로 발견하고 상세 정보를 확인할 수 있도록 만든 도구입니다. MIT 라이선스 오픈소스로 공개되어 있으며, Windows에서는 winget을, macOS에서는 Homebrew, Linux에서는 AUR 또는 snap 등 다양한 패키지 관리자를 통해 설치할 수 있습니다. 같은 저자가 제공하는 데스크톱용 mDNS-Browser와 동일한 데이터 모델을 공유하면서, 키보드 조작에 최적화된 터미널 환경을 사용자에게 제공합니다.

상세정보

대화형 터미널 인터페이스

ratatui 기반의 풀 터미널 UI가 제공되며, 키보드만으로 서비스 목록을 탐색하고 상세 정보를 확인할 수 있습니다.

서비스 상세 정보 표시

선택한 서비스의 IP 주소, 포트, TXT 레코드 등 핵심 속성을 함께 확인할 수 있습니다.

실시간 서비스 업데이트

비동기 아키텍처를 통해 네트워크에서 발견되는 서비스의 상태가 실시간으로 갱신됩니다.

서비스 메트릭과 상태 모니터링

ServiceDaemon과 애플리케이션 단위의 메트릭을 확인할 수 있는 화면을 제공하여 현재 탐색 상황을 모니터링할 수 있습니다.

서비스 유형별 필터링과 빠른 검색

서비스 유형별로 화면을 분리해 살펴볼 수 있고, 빠른 필터 모드로 모든 서비스 필드를 대상으로 텍스트 검색을 수행할 수 있습니다.

고급 정렬 기능

Host, Type, Name, Port, Address, Time 등 다양한 기준과 오름/내림 차순으로 목록을 정렬할 수 있습니다.

명령줄에서 서비스 유형 지정

CLI 옵션으로 직접 서비스 유형을 지정해 자동 발견이 어려운 서비스도 명시적으로 탐색할 수 있습니다.

JSON 상태 덤프 및 다시 불러오기

TUI 안에서 Ctrl+J 단축키로 현재 애플리케이션 상태를 JSON 파일로 내보낼 수 있으며, 내보낸 JSON을 다시 불러와 읽기 전용 모드로 검사할 수도 있습니다.

소스에서 빌드하여 실행

Rust 환경이 갖춰져 있다면 프로젝트 저장소를 받은 뒤 Cargo로 바로 실행하거나 릴리스 빌드를 만들 수 있습니다.

  • cargo run – 개발 모드로 TUI 애플리케이션을 실행합니다.
  • cargo build –release – 최적화된 릴리스 빌드를 생성합니다.

운영체제별 패키지 설치

  • Arch Linux: AUR에서 yay -S mdns-tui-browser 명령으로 설치할 수 있습니다.
  • macOS: brew tap hrzlgnm/tap 후 brew install –cask mdns-tui-browser 또는 brew install –cask hrzlgnm/tap/mdns-tui-browser로 설치할 수 있습니다.
  • Windows: winget install hrzlgnm.mdns-tui-browser 명령으로 설치할 수 있습니다.
  • Linux: sudo snap install mdns-tui-browser 명령으로 snap 스토어에서 설치할 수 있습니다.

명령줄 옵션

실행 시 다양한 옵션을 지정해 동작을 제어할 수 있습니다.

  • mdns-tui-browser –version 또는 -V: 프로그램 버전을 표시합니다.
  • mdns-tui-browser –help 또는 -h: 사용 가능한 옵션 도움말을 표시합니다.
  • mdns-tui-browser –service-types “_http._tcp.local.,_ssh._tcp.local.” 또는 -s: 자동 발견 대신 지정한 서비스 유형만 살펴봅니다. 짧은 표기(http, ssh 등)도 자동 완성됩니다.
  • mdns-tui-browser -i en0 또는 –interfaces en0,eth0: 사용할 네트워크 인터페이스를 지정합니다.
  • mdns-tui-browser –no-ipv4, –no-ipv6: IPv4 또는 IPv6 mDNS 발견을 비활성화합니다.
  • mdns-tui-browser –load-state state-dump.json 또는 -l: 내보낸 JSON 상태 파일을 읽기 전용 모드로 불러옵니다.

이 프로그램은 어떤 라이선스로 배포되나요?

MIT 라이선스로 배포되며, 소스 저장소의 LICENSE 파일에서 전문을 확인할 수 있습니다.

Windows에서는 어떻게 설치하나요?

winget 패키지 hrzlgnm.mdns-tui-browser를 통해 설치할 수 있으며, 명령은 winget install –id hrzlgnm.mdns-tui-browser –exact 입니다.

특정 네트워크 인터페이스에서만 mDNS를 살펴볼 수 있나요?

-i 또는 –interfaces 옵션으로 사용할 네트워크 인터페이스를 지정할 수 있고, –no-ipv4와 –no-ipv6으로 IPv4/IPv6 mDNS 발견을 각각 끌 수 있습니다.

현재 탐색 상태를 파일로 저장해 다시 확인할 수 있나요?

TUI에서 Ctrl+J를 눌러 현재 상태를 ISO 타임스탬프가 포함된 JSON 파일로 내보낼 수 있고, –load-state 또는 -l 옵션으로 그 JSON을 읽기 전용 모드로 다시 불러올 수 있습니다.

시스템 요구사항

별도의 시스템 요구사항이 등록되지 않았습니다.