2012-01-25 21 views
11

Tôi muốn viết chương trình C có thể tìm kiếm các thiết bị được bật trên mạng Bonjour.Cách khám phá các thiết bị trên mạng?

Về cơ bản chúng tôi có một Camera IP mạng, nó hỗ trợ giao thức Bonjour. Tôi muốn viết API trong C có thể tìm kiếm các thiết bị này đã bật Bonjour. Có ai có mẫu mã hoặc gợi ý về làm thế nào tôi nên làm điều đó?

Trả lời

7

Các liên kết sau đây cung cấp một số mẫu mã, như bạn yêu cầu:

mDNSResponder

Quotes từ mDNSPosix/ReadMe.txt:

mDNSPosix là một cảng Multicast DNS của Apple và Dịch vụ DNS Discovery mã tới nền tảng Posix.

DNS đa phương tiện và dò tìm dịch vụ DNS là các công nghệ cho phép bạn đăng ký dịch vụ dựa trên IP và duyệt mạng cho các dịch vụ đó.

Danh sách Đóng gói:

Các mẫu sử dụng các thư mục sau:

o mDNSCore - Một thư mục chứa các lõi mDNS mã. Mã này
được viết bằng ANSI C tinh khiết và đã được chứng minh là rất di động. Mỗi nền tảng cần mã công cụ giao thức cốt lõi này.

o mDNSShared - Một thư mục chứa mã hữu ích đó không phải là cốt lõi để động cơ giao thức chính bản thân, nhưng dù sao hữu ích, và được sử dụng bởi
nhiều hơn một (nhưng không nhất thiết phải tất cả) các nền tảng.

o mDNSPosix - Các tập tin mà là đặc trưng cho nền tảng Posix: Linux, Solaris , FreeBSD, NetBSD, OpenBSD, vv code này cũng sẽ làm việc trên
OS X, mặc dù đó không phải là mục đích chính của nó.

o Khách hàng - Mã khách hàng mẫu hiển thị cách sử dụng API cho các dịch vụ
do daemon cung cấp.

Sử dụng mẫu ---------------- Khi bạn biên dịch, bạn sẽ nhận được:

o Sản phẩm chủ yếu để sử dụng mục đích chung (ví dụ như trên một máy tính để bàn máy tính): - mdnsd - libmdns - nss_mdns (Xem nss_ReadMe.txt cung cấp thông tin quan trọng về nss_mdns)

o sản phẩm độc lập cho các thiết bị chuyên dụng (máy in, camera mạng, , vv) - mDNSClientPosix - mDNSResponderPosix - mDNSProxyResponderPosix

o Kiểm tra và gỡ lỗi các công cụ - công cụ dòng lệnh dns-sd (từ "Khách hàng" thư mục) - mDNSNetMonitor - mDNSIdentify

SDWrap

ReadMe:

Ứng dụng trình bao bọc hoàn toàn đơn giản để thực hiện một số lệnh với Zeroconf địa chỉ và cổng được cung cấp. Sử dụng wxWidgets và wxServDisc cho khám phá dịch vụ ...

Chúc may mắn!

+0

Cảm ơn câu trả lời của các bạn. Nhưng trong liên kết đã cho, tôi không thể tìm thấy bất kỳ mã nguồn nào mà tôi có thể sử dụng để tìm kiếm các thiết bị bonjour trên mạng. –

+1

Bạn đã đọc [ReadMe.txt] (https://github.com/jevinskie/mDNSResponder/blob/2942dde61f920fbbf96ff9a3840567ebbe7cb1b6/mDNSPosix/ReadMe.txt) cho nền tảng của bạn chưa? Trích dẫn: "Khi bạn biên dịch, bạn sẽ nhận được: Các sản phẩm độc lập cho các thiết bị chuyên dụng (máy in, camera mạng, v.v.)" Tôi đã đọc nhanh mã nguồn. Nó được nhận xét rất nhiều, và nếu bạn dành thời gian để sử dụng ReadMe cho nền tảng cụ thể của bạn như là một hướng dẫn tôi nghĩ bạn sẽ tìm thấy chính xác những gì bạn đang tìm kiếm. – Totoro

Các vấn đề liên quan