Tool for resolving domain names with web interface and API. Meshname/meship supported.

acetone f265051c3a shitty typo 4 weeks ago
cppcodec bf602d6554 0.0.1 1 month ago
html bf602d6554 0.0.1 1 month ago
.gitignore da02423978 Initial commit 1 month ago
HTTPheaders.h 51cfa9de32 Customize options and web page bit fix 1 month ago
LICENSE da02423978 Initial commit 1 month ago
README.md 8dce1a7e06 readme update 1 month ago
funcs.cpp 51cfa9de32 Customize options and web page bit fix 1 month ago
funcs.h 51cfa9de32 Customize options and web page bit fix 1 month ago
main.cpp 51cfa9de32 Customize options and web page bit fix 1 month ago
mario-dns-tool.pro f558c0f0ff HEAD and POST request processing 1 month ago
resolver.cpp f265051c3a shitty typo 4 weeks ago
resolver.h 1eb69354e9 code optimization / 0.1.1 4 weeks ago
version.h 1eb69354e9 code optimization / 0.1.1 4 weeks ago

README.md

Mario DNS tool

Download Mario DNS tool

Tool for resolving domain names with web interface and API. Meshname / meship supported.

C++, Qt5

For what?

The main use of the tool is to translate IPv6 addresses to meship domains for use in services without IPv6 support. Meship (and meshname) domains are resolved by meshnamed.

Also, the tool can be used as a supplement to projects that need to resolve domain names to addresses with some API. Mario DNS provides API with output in JSON format:

# Request:
dns.acetone.ygg

# Answer:
{
    "status": true,
    "answer": [
        "324:71e:281a:9ed3::53"
    ]
}

You can use version request for version information.

To use the API, send a domain or address to a socket without additional headers.

How to start

Pass address and port to bind via parameters:

./mario-dns 192.168.0.1 5000

Several options are supported, which must be specified after the port:

  • --no-api disable API access (only HTTP mode for web browser);
  • --no-http disable HTTP access (only API mode);
  • --no-resolve disable DNS resolving (only meship domains);
  • --no-favicon disable web page favicon (-135KB for faster loading).