diff --git a/README.md b/README.md new file mode 100644 index 0000000..d975f16 --- /dev/null +++ b/README.md @@ -0,0 +1,217 @@ +# Multicast DNS (mDNS) & DNS-Based Service Discovery (DNS-SD) in Java + +## Introduction +The Multicast DNS (mDNS) [[RFC 6762](http://tools.ietf.org/html/rfc6762)] & DNS-Based Service Discovery (DNS-SD) [[RFC 6763](http://tools.ietf.org/html/rfc6763)] in Java (mdnsjava) project is an extension of dnsjava ([dnsjava.org](http://www.dnsjava.org/)) that implements Multicast DNS (mDNS) [[RFC 6762](http://tools.ietf.org/html/rfc6762)] and DNS-Based Service Discovery (DNS-SD) [[RFC 6763](http://tools.ietf.org/html/rfc6763)] in Java (aka. Bonjour in Java). Unlike other mDNS/DNS-SD implementations mdnsjava does not artificially bind the mDNS and DNS-SD functionality into a single API, instead treating each as a separate feature that is independent from, but related to, the other. This allows clients to use Multicast DNS (mDNS) [RFC 6762](http://tools.ietf.org/html/rfc6762) for name resolution without having to worry about service discovery and simplifies the use of DNS-Base Service Discovery using plain old Unicast DNS (mDNS can be used as a substitiute for DNS for name resolution and DNS can be used as a substitute for mDNS for service discovery). + +## Features + +* Multicast DNS (mDNS) Responder +* Multicast DNS (mDNS) Querier +* Service Registration/Unregistration +* Browsing for Services +* Browsing for DNS/mDNS Resource Records +* Resolving/Looking up Services synchronously and asynchronously +* Resolving/Looking up DNS/mDNS Resource Records synchronously and asynchronously +* Tested with dnsjava versions 2.1.4, 2.1.5, 2.1.6, and 2.1.7. + +## Dependencies +This project depends on: + +* [dnsjava.org](http://www.dnsjava.org/) project, version 2.1.5 or higher. (may work with early versions) +* Java SE 1.5 or higher + +## Command Line Tool Usage +``` +$java -jar mdnsjava.jar dnssd + + Command Line: dnssd