---
title: "MDNS_Generic"
url: "https://maker.wiznet.io/taylor/projects/MDNSGeneric/"
markdown_url: "https://maker.wiznet.io/taylor/projects/MDNSGeneric/md"
type: "UCC: User Created Content"
author: "taylor"
author_url: "https://maker.wiznet.io/taylor/"
original_author: "taylor"
original_url: "https://github.com/khoih-prog/MDNS_Generic"
published: "2020-09-17"
language: "en"
hardware: ["Arduino", "Ethernet Shield"]
likes: 0
views: 411
comments: 0
source: "WIZnet Makers (https://maker.wiznet.io/)"
---

# MDNS_Generic

> MDNS_Generic

Original author: taylor (source: https://github.com/khoih-prog/MDNS_Generic)

## Components

- **Arduino** x 1
- **Ethernet Shield** x 1

## Documents and links

- [Github](https://github.com/khoih-prog/MDNS_Generic) (code)

## Article

### Why do we need this [MDNS_Generic library](https://github.com/khoih-prog/MDNS_Generic)

MDNS ([**Multicast DNS**](https://en.wikipedia.org/wiki/Multicast_DNS)) is a protocol to resolve **hostnames to IP addresses** within small networks that do not include a local name server. It is a zero-configuration service, using essentially the same programming interfaces, packet formats and operating semantics as the unicast Domain Name System (DNS). The mDNS protocol, published as [RFC 6762](https://tools.ietf.org/html/rfc6762), uses IP multicast User Datagram Protocol (UDP) packets, and is implemented by the [Apple Bonjour](https://en.wikipedia.org/wiki/Bonjour_%28software%29) and open source [Avahi software packages](https://en.wikipedia.org/wiki/Avahi_%28software%29). mDNS can work in conjunction with DNS Service Discovery (DNS-SD), a companion zero-configuration networking technique specified separately in [RFC 6763](https://tools.ietf.org/html/rfc6763). This [MDNS_Generic library](https://github.com/khoih-prog/MDNS_Generic) is based on and modified from [Dario Pennisi's ArduinoMDNS Library](https://github.com/arduino-libraries/ArduinoMDNS) to provide support to many more boards, such as **Arduino SAMD21, Adafruit SAMD21/SAMD51, Seeeduino SAMD21/SAMD51, nRF52, STM32F/L/H/G/WB/MP1, Teensy, SAM DUE, AVR Mega, etc.** and enable those boards to use MDNS services. The currently supported modules/shield is **W5x00 using Ethernet or EthernetLarge library**. The **WiFiNINA, ENC28J60 and LAN8742A Ethernet modules/shields are not yet supported** as library modifications are needed.

---

Source: https://maker.wiznet.io/taylor/projects/MDNSGeneric/
