Skip to content

Latest commit

Β 

History

9 Commits

Folders and files

NameName
Last commit message
Last commit date
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

⚑ Intent-DNS

Developer-first authoritative DNS hosting.

Fast DNS management Β· Apex ALIAS Β· REST API Β· Generous limits Β· No unnecessary complexity

Website Control Panel Discord


DNS infrastructure without the usual artificial limits.

Host your zones, manage records from a clean control panel, automate everything through the API, and use apex ALIAS records when your provider gives you a hostname instead of an IP.


✨ Why Intent-DNS?

Most DNS hosting platforms are designed around simple record editing. Intent-DNS is designed with developers and infrastructure workflows in mind.

Intent-DNS
🌐 Authoritative DNS PowerDNS-based
⚑ Apex ALIAS Yes
πŸ”Œ REST API API v1
πŸ“¦ Free plan 20 domains Γ— 1,000 records/domain
πŸ’³ Paid plan 100 domains Γ— 1,000 records/domain β€” $1
♾️ Unlimited plan Unlimited domains Γ— unlimited records β€” $4
πŸ” DNS discovery Built in
πŸ”‘ API authentication Bearer tokens
πŸ–₯️ Web panel Included

πŸš€ Get Started

1. Create your account

Open the Intent-DNS control panel:

https://panel.dns.int.yt/

Create an account and start with the Free plan.

2. Add your domain

From the dashboard, add a domain and configure its DNS records.

You can either create records manually or use DNS discovery/import to find existing records.

3. Delegate your domain

Set your domain's authoritative nameservers to:

dns1.int.yt
dns2.int.yt

Always use the exact nameservers shown by the Intent-DNS panel if your account displays different values.

4. Verify DNS

dig example.com
dig @dns1.int.yt example.com
dig @dns2.int.yt example.com

πŸ’° Plans

Choose the amount of DNS infrastructure you actually need.

πŸ†“ Free

$0

20 domains

1,000 records / domain

  • Authoritative DNS
  • Web control panel
  • DNS management
  • API access according to account settings
  • No payment card required

Start for free β†’

πŸ’Ž Paid

$1

100 domains

1,000 records / domain

  • Everything needed for larger projects
  • More domain slots
  • Authoritative DNS
  • Web control panel
  • API access according to account settings

Contact us β†’ admin@int.yt

♾️ Unlimited

$4

Unlimited domains

Unlimited records

  • Designed for large DNS workloads
  • No domain-slot limit
  • No record limit
  • Authoritative DNS
  • Web control panel
  • API access according to account settings

Contact us β†’ admin@int.yt

πŸ’¬ Purchase & Support

Email: admin@int.yt

Discord: https://discord.gg/NCS96PS4MH

Discord is recommended for faster replies.


πŸ”— Apex ALIAS

One of the core Intent-DNS features is apex/root-domain ALIAS support.

Normally, DNS does not allow a standard CNAME at the zone apex:

example.com β†’ CNAME β†’ service.example.com

Intent-DNS supports:

@ β†’ ALIAS β†’ service.example.com.

This is particularly useful when a hosting platform gives you a hostname such as:

your-project.provider.example

but you want:

example.com

to point to it.

Example

example.com
     β”‚
     β–Ό
@  ALIAS  your-project.onrender.com.
     β”‚
     β–Ό
Intent-DNS resolves the target
     β”‚
     β–Ό
Address response returned to the client

ALIAS validation

Intent-DNS protects zones from invalid ALIAS combinations, including:

  • ❌ ALIAS + A at the same owner name
  • ❌ ALIAS + AAAA at the same owner name
  • ❌ ALIAS + CNAME at the same owner name
  • ❌ Multiple ALIAS targets at the same owner name
  • ❌ Self-referential ALIAS targets

Appropriate records such as NS, SOA, MX, TXT, SRV and CAA can coexist where valid.


πŸ“‹ Supported DNS Records

β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚ Type    β”‚ Purpose                              β”‚
β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€
β”‚ A       β”‚ IPv4 address                         β”‚
β”‚ AAAA    β”‚ IPv6 address                         β”‚
β”‚ CNAME   β”‚ Canonical hostname                   β”‚
β”‚ ALIAS   β”‚ Apex hostname / DNS flattening       β”‚
β”‚ MX      β”‚ Mail exchange                        β”‚
β”‚ TXT     β”‚ Text / verification / policy data    β”‚
β”‚ NS      β”‚ Nameserver delegation                β”‚
β”‚ SRV     β”‚ Service discovery                    β”‚
β”‚ CAA     β”‚ Certificate authority policy         β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜

Quick examples

@       A       203.0.113.10
www     A       203.0.113.10

@       ALIAS   service.example.com.

@       MX      10 mail.example.com.
@       TXT     "v=spf1 ..."

_service._tcp    SRV    10 5 443 service.example.com.

@       CAA     0 issue "letsencrypt.org"

πŸ”Œ REST API

Automate your DNS infrastructure instead of clicking through a dashboard.

Base API:

https://dns.int.yt/api/v1/

Authentication uses Bearer API tokens.

Authorization: Bearer idns_live_YOUR_TOKEN

Authentication

POST /api/v1/auth/token

Account

GET /api/v1/user

Domains

GET    /api/v1/domains
POST   /api/v1/domains
GET    /api/v1/domains/{id}
DELETE /api/v1/domains/{id}

Records

GET    /api/v1/domains/{id}/records
POST   /api/v1/domains/{id}/records
PUT    /api/v1/domains/{id}/records/{record_id}
DELETE /api/v1/domains/{id}/records/{record_id}

Example

curl https://dns.int.yt/api/v1/domains \
  -H "Authorization: Bearer idns_live_YOUR_TOKEN"

Create a record:

curl -X POST \
  https://dns.int.yt/api/v1/domains/DOMAIN_ID/records \
  -H "Authorization: Bearer idns_live_YOUR_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "www",
    "type": "A",
    "content": "203.0.113.10"
  }'

Check the project's API documentation for the exact request and response schemas.


πŸ” DNS Discovery & Import

Already have DNS records somewhere else?

Intent-DNS can discover existing records before creating a zone.

β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚ Enter domain      β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
          β–Ό
β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚ DNS discovery     β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
          β–Ό
β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚ Review records    β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
          β–Ό
β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚ Select records    β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
          β–Ό
β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚ Create zone       β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
          β–Ό
β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚ Sync to PowerDNS  β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜

This makes migration from an existing DNS provider significantly easier.


🧠 Architecture

Intent-DNS uses a PowerDNS-based authoritative DNS architecture.

                         INTERNET
                            β”‚
                 DNS queries / delegation
                            β”‚
                            β–Ό
                 β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
                 β”‚     Intent-DNS      β”‚
                 β”‚  Authoritative DNS  β”‚
                 β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
                            β”‚
                β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
                β–Ό                       β–Ό
        β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”       β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
        β”‚ dns1.int.yt   β”‚       β”‚ dns2.int.yt   β”‚
        β””β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”˜       β””β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”˜
                β”‚                       β”‚
                β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
                            β–Ό
                 β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
                 β”‚ PowerDNS Authoritativeβ”‚
                 β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
                            β”‚
                            β–Ό
                 β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
                 β”‚  PowerDNS Recursor  β”‚
                 β”‚ ALIAS / flattening  β”‚
                 β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜

Main infrastructure

Nginx
   β”‚
   β”œβ”€β”€ PHP-FPM
   β”‚      └── Intent-DNS application
   β”‚
   └── HTTPS / web routing

MariaDB
   └── Users, domains, records, plans, audit data

PowerDNS Authoritative
   └── Authoritative DNS zones

PowerDNS Recursor
   └── Recursive resolution used by ALIAS handling

πŸ” Security & Authorization

Intent-DNS separates normal users, staff, and administrators.

πŸ‘€ User

Users can manage:

  • Their own account
  • Their permitted domains
  • DNS records within their quotas
  • API keys where enabled

πŸ› οΈ Staff

Staff can manage normal customer resources according to their permissions.

Staff cannot:

  • Access administrator-only functions
  • Create or modify administrator accounts
  • Grant paid/unlimited privileges
  • Change administrator-controlled quotas

πŸ‘‘ Administrator

Production administrator privileges are reserved for the designated administrator accounts.

Administrators can manage:

  • Users
  • Staff
  • Domains
  • DNS records
  • Plans
  • Quotas
  • API access
  • Announcements
  • Administrative settings
  • Audit information

Normal signup cannot create an administrator account.


πŸ“Š Quotas

The plan system separates roles from plan capabilities.

Account role
     β”‚
     β”œβ”€β”€ User
     β”œβ”€β”€ Staff
     └── Administrator

Plan
     β”‚
     β”œβ”€β”€ Free
     β”œβ”€β”€ Paid
     └── Unlimited

Resource controls include:

max_domains
max_records_per_domain
api_enabled

This structure allows future billing/payment integrations without replacing the authorization model.


πŸ–₯️ Control Panel

The Intent-DNS panel provides a complete web interface for DNS management.

Included

  • πŸ“Š Dashboard
  • 🌐 Domain management
  • 🧾 DNS record management
  • πŸ” DNS discovery/import
  • πŸ‘€ Profile management
  • πŸ” Password management
  • πŸ”‘ API key management
  • πŸ“š API documentation
  • πŸ› οΈ Staff portal
  • πŸ‘‘ Administrator portal
  • πŸ“’ Announcements
  • πŸ“ Audit information
  • πŸ“ˆ Quota/plan information
  • πŸ“± Responsive navigation
  • ⚠️ Validation and error feedback
  • βœ… Success notifications
  • ⏳ Loading states

πŸ§ͺ Production Verification

The production implementation includes testing around:

Authentication

  • User signup/login/logout
  • Password and session handling
  • CSRF protection
  • Administrator restrictions
  • Staff lifecycle
  • User/staff/admin authorization boundaries

API

  • API token generation
  • Authenticated API requests
  • Domain CRUD
  • DNS record CRUD

DNS

  • A
  • AAAA
  • CNAME
  • ALIAS
  • MX
  • TXT
  • SRV
  • CAA
  • Apex ALIAS resolution
  • PowerDNS synchronization
  • Authoritative DNS resolution

Discovery/import

  • DNS discovery
  • Discovery token handling
  • Record selection
  • Zone creation
  • Database persistence
  • PowerDNS synchronization
  • Real DNS resolution

Infrastructure

Nginx
PHP-FPM
MariaDB
PowerDNS Authoritative
PowerDNS Recursor

πŸ› οΈ Technology Stack

Layer Technology
Backend PHP
Database MariaDB
Authoritative DNS PowerDNS Authoritative
Resolver PowerDNS Recursor
Web server Nginx
Runtime PHP-FPM
API REST API v1
Frontend JavaScript / CSS
UI CoreUI-style interface

πŸ“‘ DNS Troubleshooting

Check your authoritative nameservers:

dig NS example.com

Query a specific Intent-DNS nameserver:

dig @dns1.int.yt example.com
dig @dns2.int.yt example.com

Check an individual record:

dig A example.com
dig AAAA example.com
dig MX example.com
dig TXT example.com

For ALIAS:

dig example.com

If a nameserver change was made recently, remember that delegation and cached DNS responses can take time to update.


🀝 Contributing

Contributions, bug reports, feature ideas, and infrastructure improvements are welcome.

Before opening an issue

Please include:

  • What you expected
  • What actually happened
  • Relevant DNS output
  • Relevant API response
  • Steps to reproduce
  • Environment information where useful

Never include:

  • Passwords
  • API tokens
  • Private keys
  • Session cookies
  • Other credentials

πŸ›‘οΈ Responsible Use

Intent-DNS is intended for legitimate DNS hosting and infrastructure use.

Users are responsible for the domains and records they operate through the service.

Abuse, malicious activity, spam, phishing, or other prohibited activity may result in restrictions or account termination.


πŸ“¬ Contact

🌐 Website https://dns.int.yt/
βš™οΈ Control Panel https://panel.dns.int.yt/
πŸ“§ Email admin@int.yt
πŸ’¬ Discord https://discord.gg/NCS96PS4MH

Discord is recommended for faster replies.


⭐ Like Intent-DNS?

Star the repository and help more developers discover it.

🌐 Visit Website Β· βš™οΈ Open Control Panel Β· πŸ’¬ Join Discord


Intent-DNS β€” DNS infrastructure built for developers.


πŸ“„ License

Add the project's chosen open-source license here once the licensing decision has been made (for example, MIT, Apache-2.0, or GPL-3.0).

Releases

Packages

Contributors

Languages