2012-01-25 2 views
11

Bonjour 네트워크에서 사용할 수있는 장치를 검색 할 수있는 C 프로그램을 작성하고 싶습니다.어떻게 네트워크상의 장치를 검색 할 수 있습니까?

기본적으로 우리는 네트워크 IP 카메라를 가지고 있으며 Bonjour 프로토콜을 지원합니다. Bonjour가 활성화 된 이러한 장치를 검색 할 수있는 API를 C로 작성하려고합니다. 누구든지 샘플 코드 나 제안을 어떻게해야합니까? 당신이 요청에 따라

답변

7

다음 링크는 일부 코드 샘플을 제공합니다

mDNSResponder

지수를 mDNSPosix /있는 ReadMe.txt에서 :

mDNSPosix 애플의 멀티 캐스트 DNS 및 DNS 서비스의 포트입니다 Positive 플랫폼에 대한 코드 코드를 찾습니다.

멀티 캐스트 DNS 및 DNS 서비스 검색은 사용자가 IP 기반 서비스를 등록하고 해당 서비스에 대한 네트워크를 탐색 할 수있게 해주는 기술입니다.

포장 목록 : - 핵심 mDNS를 코드를 포함하는 디렉토리 mDNSCore 오

:

샘플은 다음 디렉토리를 사용합니다. 이 코드
은 순수한 ANSI C로 작성되었으며 매우 휴대 성이 뛰어납니다. 모든 플랫폼에는이 핵심 프로토콜 엔진 코드가 필요합니다. mDNSShared 오

- 메인 프로토콜 엔진 자체가 핵심이 아니다 유용한 코드를 포함하는 디렉토리, 그럼에도 불구하고 유용하고
하나 이상의 (그러나 반드시 모든) 플랫폼에서 사용된다.

오 mDNSPosix -하여 Posix 플랫폼에 특정 파일 : 등 리눅스, 솔라리스, FreeBSD의, NetBSD의, 오픈 BSD, 즉 그 주된 목적이 아니다하지만이 코드는 또한,
OS X에서 작동합니다.

클라이언트 - 데몬이 제공하는
서비스에 대한 API 사용 방법을 보여주는 클라이언트 코드의 예제입니다. 컴파일 샘플 ----------------를 사용

, 당신은 얻을 것이다 : 범용 사용을위한 주요 제품 O

(예를 바탕 화면에 컴퓨터) : - mdnsd 은 - nss_mdns (전용 장치 (프린터, 네트워크 카메라, 등 독립형 제품 O를 nss_mdns에 대한 중요한 정보)

에 대한 nss_ReadMe.txt를 참조 - 가 libmdns) - mDNSClientPosix - mDNSResponderPosix - mDNSProxyResponderPosix

테스트 및 디버깅 도구 오

-은 "클라이언트"폴더에서 DNS-SD 명령 줄 도구() - mDNSNetMonitor - mDNSIdentify

SDWrap

ReadMe :

Zeroconf 과 함께 일부 명령을 실행하는 아주 간단한 래퍼 앱이 주소와 포트를 제공합니다. wxWidgets에와 서비스 검색을위한 wxServDisc ...

행운을 빕니다를 사용합니다!

+0

친절한 답변을 보내 주셔서 감사합니다. 그러나 주어진 링크에서 네트워크상의 bonjour 장치를 검색하는 데 사용할 수있는 소스 코드를 찾을 수 없었습니다. –

+1

플랫폼에 맞는 [ReadMe.txt] (https://github.com/jevinskie/mDNSResponder/blob/2942dde61f920fbbf96ff9a3840567ebbe7cb1b6/mDNSPosix/ReadMe.txt)를 읽었습니까? 제품 견적 : "컴파일 할 때 전용 장치 (프린터, 네트워크 카메라 등) 용 독립 실행 형 제품" 소스 코드를 빠르게 읽었습니다. 심하게 댓글을 달았습니다. 특정 플랫폼 용으로 ReadMe를 사용하는 데 시간을 할애하면 원하는 정보를 찾을 수있을 것입니다. – Totoro

관련 문제