.. zephyr:code-sample:: mdns-responder
:name: mDNS responder
:relevant-api: net_core dns_sd bsd_sockets
Listen and respond to mDNS queries.
Overview
********
This application will wait mDNS queries for a pre-defined hostname and
respond to them. The default hostname is **zephyr** and it is set in the
:file:`prj.conf` file.
Requirements
************
- :ref:`networking_with_host`
- avahi or similar mDNS capable application that is able to query mDNS
information.
Building and Running
********************
Build and run the mdns-responder sample application like this:
.. zephyr-app-commands::
:zephyr-app: samples/net/mdns_responder
:board: <board to use>
:conf: <config file to use>
:goals: build
:compact:
After the mdns-responder sample application is started, it will await queries
from the network.
Open a terminal window in your host and type:
.. code-block:: console
$ avahi-resolve -4 -n zephyr.local
If the query is successful, then following information is printed:
.. code-block:: console
zephyr.local 192.0.2.1
For a IPv6 query, type this:
.. code-block:: console
$ avahi-resolve -6 -n zephyr.local
If the query is successful, then following information is printed:
.. code-block:: console
zephyr.local 2001:db8::1
Lastly, resolve services using DNS Service Discovery:
.. code-block:: console
$ avahi-browse -t -r _zephyr._tcp
If the query is successful, then the following information is printed:
.. code-block:: console
+ zeth IPv6 zephyr _zephyr._tcp local
= zeth IPv6 zephyr _zephyr._tcp local
hostname = [zephyr.local]
address = [192.0.2.1]
port = [4242]
txt = []