# mDNS Beacon
<div align="center">
[![PyPI - Version](https://img.shields.io/pypi/v/mdns-beacon.svg)](https://pypi.python.org/pypi/mdns-beacon)
[![PyPI - Python Version](https://img.shields.io/pypi/pyversions/mdns-beacon.svg)](https://pypi.python.org/pypi/mdns-beacon)
[![tests](https://github.com/fedejaure/mdns-beacon/actions/workflows/tests.yml/badge.svg)](https://github.com/fedejaure/mdns-beacon/actions/workflows/tests.yml)
[![Codecov](https://codecov.io/gh/fedejaure/mdns-beacon/branch/main/graph/badge.svg)](https://codecov.io/gh/fedejaure/mdns-beacon)
[![Read the Docs](https://readthedocs.org/projects/mdns-beacon/badge/)](https://mdns-beacon.readthedocs.io/)
[![PyPI - License](https://img.shields.io/pypi/l/mdns-beacon.svg)](https://pypi.python.org/pypi/mdns-beacon)
[![Black](https://img.shields.io/badge/code%20style-black-000000.svg)](https://github.com/psf/black)
[![pre-commit](https://img.shields.io/badge/pre--commit-enabled-brightgreen?logo=pre-commit&logoColor=white)](https://github.com/pre-commit/pre-commit)
[![Contributor Covenant](https://img.shields.io/badge/Contributor%20Covenant-2.0-4baaaa.svg)](https://www.contributor-covenant.org/version/2/0/code_of_conduct/)
</div>
Multicast DNS (mDNS) Beacon to announce multiple CNAME aliases across your local network. Under development. Use by your own risk❗
* GitHub repo: <https://github.com/fedejaure/mdns-beacon.git>
* Documentation: <https://mdns-beacon.readthedocs.io>
* Free software: MIT
## 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][pypi]:
```
$ 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][cookiecutter] and the [fedejaure/cookiecutter-modern-pypackage][cookiecutter-modern-pypackage] project template.
[cookiecutter]: https://github.com/cookiecutter/cookiecutter
[cookiecutter-modern-pypackage]: https://github.com/fedejaure/cookiecutter-modern-pypackage
[pypi]: https://pypi.org/
Raw data
{
"_id": null,
"home_page": "https://github.com/fedejaure/mdns-beacon",
"name": "mdns-beacon",
"maintainer": null,
"docs_url": null,
"requires_python": "<3.13,>=3.10",
"maintainer_email": null,
"keywords": "mdns-beacon, mdns, beacon, avahi, zeroconf, bonjour",
"author": "Federico Jaureguialzo",
"author_email": "fedejaure@gmail.com",
"download_url": "https://files.pythonhosted.org/packages/35/cd/5aa74803d9735be024955c17679a05cec6e6ab22d1f842e89ec02faf7d65/mdns_beacon-1.0.0.tar.gz",
"platform": null,
"description": "# mDNS Beacon\n\n<div align=\"center\">\n\n[![PyPI - Version](https://img.shields.io/pypi/v/mdns-beacon.svg)](https://pypi.python.org/pypi/mdns-beacon)\n[![PyPI - Python Version](https://img.shields.io/pypi/pyversions/mdns-beacon.svg)](https://pypi.python.org/pypi/mdns-beacon)\n[![tests](https://github.com/fedejaure/mdns-beacon/actions/workflows/tests.yml/badge.svg)](https://github.com/fedejaure/mdns-beacon/actions/workflows/tests.yml)\n[![Codecov](https://codecov.io/gh/fedejaure/mdns-beacon/branch/main/graph/badge.svg)](https://codecov.io/gh/fedejaure/mdns-beacon)\n[![Read the Docs](https://readthedocs.org/projects/mdns-beacon/badge/)](https://mdns-beacon.readthedocs.io/)\n[![PyPI - License](https://img.shields.io/pypi/l/mdns-beacon.svg)](https://pypi.python.org/pypi/mdns-beacon)\n\n[![Black](https://img.shields.io/badge/code%20style-black-000000.svg)](https://github.com/psf/black)\n[![pre-commit](https://img.shields.io/badge/pre--commit-enabled-brightgreen?logo=pre-commit&logoColor=white)](https://github.com/pre-commit/pre-commit)\n[![Contributor Covenant](https://img.shields.io/badge/Contributor%20Covenant-2.0-4baaaa.svg)](https://www.contributor-covenant.org/version/2/0/code_of_conduct/)\n\n</div>\n\nMulticast DNS (mDNS) Beacon to announce multiple CNAME aliases across your local network. Under development. Use by your own risk\u2757\n\n\n* GitHub repo: <https://github.com/fedejaure/mdns-beacon.git>\n* Documentation: <https://mdns-beacon.readthedocs.io>\n* Free software: MIT\n\n\n## Features\n\n* \u2705 Announce multiple aliases on the local network.\n* \u2705 Listening utility to discover services during development.\n* \u274c Configuration file.\n* \u274c Windows support.\n\n## Quickstart\n\nInstall `mdns-beacon` from the [Python Package Index][pypi]:\n\n```\n$ pip install mdns-beacon\n```\n\n#### Usage\n\n```\n$ mdns-beacon --help\nUsage: mdns-beacon [OPTIONS] COMMAND [ARGS]...\n\n Simple multicast DNS (mDNS) command line interface utility.\n\nOptions:\n --version Show the version and exit.\n --help Show this message and exit.\n\nCommands:\n blink Announce aliases on the local network.\n listen Listen for services on the local network.\n```\n\nAnnounce an example service:\n\n```\n$ mdns-beacon blink example --alias sub1.example --address 127.0.0.1 --type http --protocol tcp\n\u280b Announcing services (Press CTRL+C to quit) ...\n```\n\nListen to a specific service type:\n\n```\n$ mdns-beacon listen --service _http._tcp.local.\n\n \ud83d\udea8\ud83d\udce1 mDNS Beacon Listener \ud83d\udce1\ud83d\udea8\n\u250f\u2501\u2501\u2501\u2533\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2533\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2533\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2533\u2501\u2501\u2501\u2501\u2501\u2501\u2533\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2533\u2501\u2501\u2501\u2501\u2501\u2513\n\u2503 # \u2503 Type \u2503 Name \u2503 Address IPv4 \u2503 Port \u2503 Server \u2503 TTL \u2503\n\u2521\u2501\u2501\u2501\u2547\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2547\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2547\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2547\u2501\u2501\u2501\u2501\u2501\u2501\u2547\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2547\u2501\u2501\u2501\u2501\u2501\u2529\n\u2502 0 \u2502 _http._tcp.local. \u2502 example._http._tcp.local. \u2502 127.0.0.1 \u2502 80 \u2502 example.local. \u2502 120 \u2502\n\u2502 1 \u2502 _http._tcp.local. \u2502 sub1.example._http._tcp.local. \u2502 127.0.0.1 \u2502 80 \u2502 sub1.example.local. \u2502 120 \u2502\n\u2514\u2500\u2500\u2500\u2534\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2534\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2534\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2534\u2500\u2500\u2500\u2500\u2500\u2500\u2534\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2534\u2500\u2500\u2500\u2500\u2500\u2518\n\n\u2827 Listen for services (Press CTRL+C to quit) ...\n```\n\n## Credits\n\nThis package was created with [Cookiecutter][cookiecutter] and the [fedejaure/cookiecutter-modern-pypackage][cookiecutter-modern-pypackage] project template.\n\n[cookiecutter]: https://github.com/cookiecutter/cookiecutter\n[cookiecutter-modern-pypackage]: https://github.com/fedejaure/cookiecutter-modern-pypackage\n[pypi]: https://pypi.org/\n\n",
"bugtrack_url": null,
"license": null,
"summary": "Multicast DNS (mDNS) Beacon to announce multiple CNAME aliases across your local network.",
"version": "1.0.0",
"project_urls": {
"Bug Tracker": "https://github.com/fedejaure/mdns-beacon/issues",
"Documentation": "https://mdns-beacon.readthedocs.io",
"Homepage": "https://github.com/fedejaure/mdns-beacon",
"Repository": "https://github.com/fedejaure/mdns-beacon"
},
"split_keywords": [
"mdns-beacon",
" mdns",
" beacon",
" avahi",
" zeroconf",
" bonjour"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "689d3b334e120ecf4a549d39e5ca8b969a7092a3a269a28d1b0c03ce308fec87",
"md5": "1c2e270b80c1a8e1da9eb877ee47c824",
"sha256": "d1e963ebf08b72a47813b8602b274a404d899422673fb0237d9089337a1a1306"
},
"downloads": -1,
"filename": "mdns_beacon-1.0.0-py3-none-any.whl",
"has_sig": false,
"md5_digest": "1c2e270b80c1a8e1da9eb877ee47c824",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": "<3.13,>=3.10",
"size": 11485,
"upload_time": "2024-09-09T21:28:00",
"upload_time_iso_8601": "2024-09-09T21:28:00.702337Z",
"url": "https://files.pythonhosted.org/packages/68/9d/3b334e120ecf4a549d39e5ca8b969a7092a3a269a28d1b0c03ce308fec87/mdns_beacon-1.0.0-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "35cd5aa74803d9735be024955c17679a05cec6e6ab22d1f842e89ec02faf7d65",
"md5": "6b8947945f443c0ee0e63f2a1c5ac408",
"sha256": "1f9470a9748bec79caf895d91bc635ea6792cb1da837078d04872a9176172ae1"
},
"downloads": -1,
"filename": "mdns_beacon-1.0.0.tar.gz",
"has_sig": false,
"md5_digest": "6b8947945f443c0ee0e63f2a1c5ac408",
"packagetype": "sdist",
"python_version": "source",
"requires_python": "<3.13,>=3.10",
"size": 10905,
"upload_time": "2024-09-09T21:28:01",
"upload_time_iso_8601": "2024-09-09T21:28:01.611768Z",
"url": "https://files.pythonhosted.org/packages/35/cd/5aa74803d9735be024955c17679a05cec6e6ab22d1f842e89ec02faf7d65/mdns_beacon-1.0.0.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-09-09 21:28:01",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "fedejaure",
"github_project": "mdns-beacon",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"lcname": "mdns-beacon"
}