> ## Documentation Index
> Fetch the complete documentation index at: https://help.freakhosting.com/llms.txt
> Use this file to discover all available pages before exploring further.

# How to Point a Domain to Your VPS with an A Record

> Point a domain to your VPS with an A record: set @ and www to your server's IPv4 at your DNS provider, add AAAA for IPv6, then check with dig or nslookup.

To point a domain to your VPS, log in where your domain's DNS is managed and create an **A record** with name `@` and value your server's IPv4 address (for example `203.0.113.10`), plus a second A record (or a CNAME to `example.com`) for `www`. If your server has IPv6, add matching **AAAA** records. Check with `dig example.com +short` or `nslookup example.com`, then set up the website and SSL.

| Difficulty | Time | Works on | Needs |
| - | - | - | - |
| Beginner | 10 minutes, plus time for caches to update | Any domain, any VPS or dedicated server (Linux or Windows) | Access to your domain's DNS settings and your server IP |

## Before you start

* **DNS** is the internet's address book. An **A record** links a name to an IPv4 address; an **AAAA record** links it to an IPv6 address; a **CNAME** makes one name an alias of another name.
* Find your server's IP: see [find your server IP address](https://help.freakhosting.com/portals/other/how-to-find-your-server-ip-address.md) or the [VPS Panel Network tab](https://help.freakhosting.com/portals/vps-panel/how-to-view-and-manage-network-settings.md).
* Find where your DNS is managed. It's the provider your domain's **nameservers** point to, which isn't always where you bought the domain:

> [tab] Linux / macOS
>
> ```bash theme={null}
> dig NS example.com +short
> ```

> [tab] Windows
>
> ```powershell theme={null}
> nslookup -type=NS example.com
> ```

## How to point your domain to your server

**1. Open the DNS zone**

Log in to the DNS provider shown by the nameserver check and open the DNS records (zone) for your domain.

**2. Create or edit the root A record**

| Type | Name | Value | TTL |
| - | - | - | - |
| A | `@` | `203.0.113.10` | 3600 (or Auto) |

`@` means the domain itself (`example.com`). If an A record for `@` already exists, edit it instead of adding a second one, or visitors are sent to both addresses.

**3. Add www**

| Type | Name | Value |
| - | - | - |
| CNAME | `www` | `example.com` |

Or use another A record with name `www` and the same IP. Both work.

**4. Add AAAA records if you have IPv6**

| Type | Name | Value |
| - | - | - |
| AAAA | `@` | `2001:db8::10` |

Only add AAAA records if IPv6 works on the server and your web server listens on it. A wrong AAAA record breaks the site for visitors with IPv6. See [configure IPv6 on Linux](https://help.freakhosting.com/portals/other/how-to-configure-ipv6-on-linux.md).

**5. Save and wait**

Changes are usually visible within minutes, but resolvers that cached the old record keep it until its **TTL** (time to live, in seconds) runs out. Lowering the TTL a day before a move makes the switch faster.

> [!NOTE]
>
> Using Cloudflare? A **Proxied** (orange cloud) record answers with Cloudflare's addresses and only passes HTTP and HTTPS through. Set records for SSH, game servers, mail or other services to **DNS only**. See [Cloudflare's proxy status documentation](https://developers.cloudflare.com/dns/proxy-status/).

## How to check the domain points to your server

> [tab] Linux / macOS
>
> ```bash theme={null}
> dig example.com A +short
> dig www.example.com +short
> dig example.com AAAA +short
> ```
>
> To see what a specific public resolver returns, bypassing your own cache:
>
> ```bash theme={null}
> dig @1.1.1.1 example.com A +short
> dig @8.8.8.8 example.com A +short
> ```

> [tab] Windows
>
> ```powershell theme={null}
> nslookup example.com
> nslookup example.com 1.1.1.1
> ```
>
> If your PC still shows the old address, clear its cache with `ipconfig /flushdns`.

Expected result:

```text theme={null}
203.0.113.10
```

When the A record returns your server's IP, the domain points to your server.

## What to do next

Pointing the domain only sends visitors to your server. To show a website you also need:

1. A web server that answers for the domain: see [install nginx](https://help.freakhosting.com/portals/other/how-to-install-nginx.md) and [nginx server blocks](https://help.freakhosting.com/portals/other/how-to-set-up-nginx-server-blocks.md), [install Apache](https://help.freakhosting.com/portals/other/how-to-install-apache.md), or [install IIS](https://help.freakhosting.com/portals/other/how-to-install-iis-on-windows-server.md).
2. Ports 80 and 443 open in the server firewall.
3. An SSL certificate: see [free SSL with Certbot](https://help.freakhosting.com/portals/other/how-to-get-a-free-ssl-certificate-with-certbot.md) or [win-acme on IIS](https://help.freakhosting.com/portals/other/how-to-get-a-free-ssl-certificate-on-iis-with-win-acme.md). Let's Encrypt's HTTP check [only uses port 80](https://letsencrypt.org/docs/challenge-types/), so the domain must already point to the server and port 80 must be open.

## Frequently asked questions

### How long does DNS propagation take?

There is no single propagation time. A new record is usually visible within minutes. A changed record can take as long as the old record's TTL to update everywhere, because resolvers keep their cached copy until then.

### Can I use a CNAME for the root domain?

Standard DNS doesn't allow a CNAME on the root (`@`) next to the other records a domain needs, such as NS and MX. Use an A record for `@`. Some providers offer their own workaround (often called CNAME flattening or ALIAS).

### Is this the same as reverse DNS?

No. A records map name to IP and are set where your domain's DNS is hosted. Reverse DNS (PTR) maps IP to name and is set by whoever owns the IP: see [configure reverse DNS](https://help.freakhosting.com/portals/vps-panel/how-to-configure-reverse-dns.md).

### Can I point a subdomain to a different server?

Yes. Create an A record with the subdomain as the name, for example `play` with value `198.51.100.20`, for `play.example.com`.

## Related guides

> [card] [VPS and dedicated server guides](https://help.freakhosting.com/portals/other/vps-and-dedicated-server-guides.md)
>
> Every guide in this section.

> [card] [Find your server IP](https://help.freakhosting.com/portals/other/how-to-find-your-server-ip-address.md)
>
> The address your A record needs.

> [card] [Free SSL with Certbot](https://help.freakhosting.com/portals/other/how-to-get-a-free-ssl-certificate-with-certbot.md)
>
> HTTPS once the domain points here.

> [card] [Website not loading?](https://help.freakhosting.com/portals/other/how-to-fix-website-not-loading-on-your-vps.md)
>
> Find why the site doesn't open.

> [card] [Reverse DNS](https://help.freakhosting.com/portals/vps-panel/how-to-configure-reverse-dns.md)
>
> Set a PTR record for your IP.

***

> [!NOTE]
>
> **Checked against [Cloudflare's DNS record types documentation](https://developers.cloudflare.com/dns/manage-dns-records/reference/dns-record-types/), [Let's Encrypt challenge types](https://letsencrypt.org/docs/challenge-types/) and Microsoft Learn ([ipconfig](https://learn.microsoft.com/en-us/windows-server/administration/windows-commands/ipconfig))** on 4 November 2026; `dig` syntax tested on Ubuntu 24.04 LTS (BIND 9.18). Commands can differ on other systems.

> [!NOTE]
>
> ### Need Extra Help?
>
> If you encounter any issues, our support team is ready to assist:
>
> * **Live Chat:** Quick assistance via our website.
> * **Support Ticket:** [Open a Ticket](https://freakhosting.com/clientarea/submitticket.php)
> * **Discord:** [Join our Community](https://discord.gg/freakhosting)
> * **Email:** [support@freakhosting.com](mailto:support@freakhosting.com)

> [!TIP]
>
> ### Save on Your Hosting
>
> Ready to upgrade your hosting? Use code **KB20** at checkout for **20% off** your first order!

***

**Last Updated:** November 2026


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.