Basic theory behind mDNS (2024)

    Introduction

    Basic theory behind mDNS

    Why mDNS?

    1- Apple devices use Bonjour to communicate multicast traffic
    2- Bonjour is a Service Discovery Protocol (link local protocol)
    3- Services can be across multitude of subnets , away from the subnet of the service-subscriber
    Multicast Traffic Stream seeking client subscribes/requests for the service, whereas Multicast Traffic Stream Provider provides/serves the traffic for the service.

    From 1,2 and 3, its clear that there needs to be a mechanism , by using with the Services can be advertised across subnets, so that the Apple clients using link local protocol called Bonjour, can discover the services, across subnets.

    Limitation

    Apple clients (which use Bonjour) can talk to multicast servers, only if the latter are in same subnet as that of the former. This is why Bonjour is also termed as a Link Local Protocol.

    How to overcome limitation

    Due to mDNS feature, the aforesaid limitation doesn't apply to the Apple clients, anymore!

    Its a known fact that the purpose of DNS is to serve/provide ip addresses.

    These ip addresses can just not be the ip-equivalent of the FQDNs requested by the browsers but also may refer to the services being requested by the clients.
    (mDNS is nothing but the latter aforesaid feature of any DNS server as indicated in the statement above)

    The mDNS feature, makes the Cisco WLC, act as the mDNS-query-responder, for Apple's wireless clients.

    All those services which may be requested by the wireless clients (serviced by the signals of the APs joined to a controller) are registered with the WLC in question (mDNS responders), so that if-and-when, an mDNS responder (WLC) gets a DNS query for SRV records, the mDNS responder should cognize the service type in the query as a known entity, being asked for, and be able to return PTR records for the requested Service Types.

    Note:

    Its better to understand how Bonjour works, to understand how Apple clients work, to understand what is that the WLC needs to do to work with Apple clients, which use Bonjour protocol.

    Bonjour publishes services to 'mDNS responders'('which' when get queries from multicast clients while discovering for the services) provides those services.

    Scenario

    when a wireless client wants to get multicast stream from a multicast server, and the client is in a vlan different from that of the vlan of the multicast server:

    if (mDNS not being used){the WLC can't see the multicast servers};if (mDNS being used){the WLC can see the multicast servers};

    Benefit

    Since the WLC knows the details of the multicast server and its services, the WLC can provide that info to the wireless in unicast packets. So, it doesn't stand to reason for the WLC to forward the multicast request from the wireless client, into the wired network (so, multicast routing is not required on the wired network so that wireless clients can get their multicast queries routed to the multicast source). Hence, no need to implement multicast routing in the wired network!

    What is mDNS?

    If the multicast source is in the wired network (and in different vlan as that of the multicast client), we can use mDNS, performing the three steps above, and by ensuring that the wlc's port to the switch, must be trunk with allowance to the mcast source's vlan. When we do this, the WLC acts as the default-gateway of the wired mcast source's vlan to the wireless mcast-client's vlan

    How it works

    1. enable global mDNS snooping in the WLC(also to then mention the service query interval)
    2. ensure that the mDNS service profile has been configured/added with the intended services(this includes the service name, string and status)
    3. apply mDNS profile to the client wlan

    So, that the wireless clients using a specific wlan can query the WLC for the services (listed in the mdns profile , mapped to the WLAN , being used to access wireless services)

    As servers advertise their services, the WLC caches the service information along with the IP and MAC of the server. After that, service discovery messages from clients are seen by the WLC which responds based on information in the cache.

    This is what needs to be ensured

    via mDNS, the apple service providers advertise their presence to 'mdns responders'(which may be outside the subnet of the appl service providers)

    (mdns responder: DNS server which provides ip details of the devices which provide services to apple clients)
    (mdns querier : subsci DNS server which provides ip details of the devices which provide services to apple clients)

    For the reason being that, if the WLC does not have knowledge of an appropriate service, it does not respond to the discovery request from the wireless client, the WLC must be able to 'see'? all the multicast servers, and therefore know exactly what services are available on the network, through those servers !

    More Information

    • Cisco 5500 Series Wireless ControllersBonjour Gateway Wireless LAN Controller Deployment Guide, Release 7.5
    • mDNS CLI Configuration
    • Managing Bonjour Services for BYOD
    Basic theory behind mDNS (2024)
    Top Articles
    Latest Posts
    Recommended Articles
    Article information

    Author: Twana Towne Ret

    Last Updated:

    Views: 5847

    Rating: 4.3 / 5 (64 voted)

    Reviews: 87% of readers found this page helpful

    Author information

    Name: Twana Towne Ret

    Birthday: 1994-03-19

    Address: Apt. 990 97439 Corwin Motorway, Port Eliseoburgh, NM 99144-2618

    Phone: +5958753152963

    Job: National Specialist

    Hobby: Kayaking, Photography, Skydiving, Embroidery, Leather crafting, Orienteering, Cooking

    Introduction: My name is Twana Towne Ret, I am a famous, talented, joyous, perfect, powerful, inquisitive, lovely person who loves writing and wants to share my knowledge and understanding with you.