mDNS Beacon

PyPI - Version PyPI - License PyPI - Python Version Tests Codecov Read the Docs Black pre-commit

Multicast DNS (mDNS) Beacon to announce multiple CNAME aliases across your local network. Under development. Use by your own risk❗

Features

  • ✅ Announce multiple aliases on the local network.

  • ✅ Listening utility to discover services during development.

  • ❌ Configuration file.

  • ❌ Windows support.

Quickstart

Install mdns-beacon from the Python Package Index:

$ pip install mdns-beacon

Usage

$ mdns-beacon --help
Usage: mdns-beacon [OPTIONS] COMMAND [ARGS]...

  Simple multicast DNS (mDNS) command line interface utility.

Options:
  --version  Show the version and exit.
  --help     Show this message and exit.

Commands:
  blink   Announce aliases on the local network.
  listen  Listen for services on the local network.

Announce an example service:

$ mdns-beacon blink example --alias sub1.example --address 127.0.0.1 --type http --protocol tcp
⠋ Announcing services (Press CTRL+C to quit) ...

Listen to a specific service type:

$ mdns-beacon listen --service _http._tcp.local.
                                                                                                            
                                       🚨📡 mDNS Beacon Listener 📡🚨                                       
┏━━━┳━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━┳━━━━━━┳━━━━━━━━━━━━━━━━━━━━━┳━━━━━┓
┃ # ┃ Type              ┃ Name                           ┃ Address IPv4 ┃ Port ┃ Server              ┃ TTL ┃
┡━━━╇━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━╇━━━━━━╇━━━━━━━━━━━━━━━━━━━━━╇━━━━━┩
│ 0 │ _http._tcp.local. │ example._http._tcp.local.      │ 127.0.0.1    │ 80   │ example.local.      │ 120 │
│ 1 │ _http._tcp.local. │ sub1.example._http._tcp.local. │ 127.0.0.1    │ 80   │ sub1.example.local. │ 120 │
└───┴───────────────────┴────────────────────────────────┴──────────────┴──────┴─────────────────────┴─────┘
                                                                                                            
⠧ Listen for services (Press CTRL+C to quit) ...

Credits

This package was created with Cookiecutter and the fedejaure/cookiecutter-modern-pypackage project template.