Domain Registrars
Categories:
5 minute read
You’ve probably configured DNS for someone else’s project. Maybe you’ve set up an internal zone on Windows Server or routed traffic through some enterprisey load balancer. But for whatever reason, you’ve never actually bought a domain yourself.
Let’s fix that.
This page gives you a no-nonsense intro to domain names, DNS, and how to register your own .com
and wire it up to your site.
About Domain Registrars
A domain registrar is a company that sells you the right to use a domain name like itbyjohnd.com
.
When you “buy” a domain, you’re not really buying it forever. You’re leasing it, usually year-to-year. That registration info is stored in a giant global database, maintained by a nonprofit called Internet Corporation for Assigned Names and Numbers (ICANN)), which operates under Internet Assigned Numbers Authority (IANA).
Registrars like Cloudflare, Namecheap, and Google Domains are licensed to interact with ICANN and manage your domain records on your behalf. They have varying amounts of markup to cover their costs, but they all provide the same basic service: registering your domain and allowing you to manage its DNS records.
Recommended Registrars
If you don’t already have a preference, we recommend:
Cloudflare
- Zero upsells
- Free WHOIS privacy
- Easy DNS editing
- Free WAF, caching, and SSL
- Great if you plan to host on Cloudflare Pages later, a competitor to GitHub Pages (both are free).
Namecheap
- Long-time reliable registrar
- Clean UI, easy to manage
- Often cheaper for specialty domains (
.dev
,.io
)
Both work great. We lean toward Cloudflare for its extra features and tight integration with modern hosting.
What’s DNS?
DNS stands for Domain Name System. It’s basically the internet’s phonebook. It translates human-readable domains like itbyjohnd.com
into IP addresses that computers use to route traffic.
When you type a URL into your browser, here’s (roughly) what happens:
- Your browser checks if it knows the IP already
- If not, it asks a DNS resolver
- That resolver queries the authoritative DNS server for that domain
- It returns the IP address (an
A
record), and your browser connects
Types of DNS Records You Should Know
When you register a domain, you’ll get a control panel where you can manage DNS records. Here are the common types:
- A Record – Points a name to an IPv4 address (
192.0.2.1
) - AAAA Record – Same idea, but for IPv6
- CNAME Record – Points one domain to another domain (e.g.
www
toitbyjohnd.github.io
) - MX Record – Mail Exchange, used for email routing
- TXT Record – Freeform text, often used for verification or SPF/DKIM settings
- NS Record – Name Server; tells the world which DNS servers are authoritative for your domain
You will mostly use CNAME and A records for pointing your domain to a web host like GitHub Pages.
Example: Buying and Wiring Up itbyjohnd.com
Let’s say you want a real domain that points to your GitHub Pages site (itbyjohnd.github.io
) that you set up over in Your Brand Website. Here’s what that actually looks like.
1. Search and Register
- Go to dash.cloudflare.com or namecheap.com
- Search for
itbyjohnd.com
for example, but this is where you would search for your real brand domain. - If it’s available, add to cart and register it (1 year is fine to start)
You now own the domain.
2. Set Up DNS Records
Once you have the domain, open the DNS dashboard and create:
For Cloudflare:
Type | Name | Value | TTL |
---|---|---|---|
CNAME | @ | itbyjohnd.github.io | Auto |
CNAME | www | itbyjohnd.github.io | Auto |
This tells the world that both itbyjohnd.com
and www.itbyjohnd.com
should load from your GitHub Pages site.
For Namecheap or others:
You may need to set up redirects or enable GitHub Pages support explicitly. Each registrar is a little different, but you’ll find the DNS tab in your dashboard.
3. Configure GitHub Pages
In your repo (itbyjohnd.github.io
):
- Go to Settings -> Pages
- Under Custom domain, type:
itbyjohnd.com
- GitHub will auto-check the DNS setup. If it sees the CNAMEs pointing in correctly, you’re good.
- Turn on Enforce HTTPS
It might take a few minutes to propagate, but once it does, visiting https://itbyjohnd.com
will serve your GitHub Pages site.
CNAME
fileOnce you link a custom domain, GitHub will add a CNAME
file in your repo. Leave it alone! That’s what tells GitHub what domain to serve.
Why Domains Costs Money
Running the global DNS system takes infrastructure, coordination, and security. Your fee supports that and gets you:
- Ownership of your domain name
- WHOIS privacy (hides your info from the public record)
- DNS editing
- Renewal reminders so no one snipes your name
It’s usually ~$10–15/year for a .com
, and totally worth it.
Summary
Getting your own domain is a tiny step with huge upside. It gives you:
- A legit place to build your brand
- Control over your email and web presence
- Future-proofing (you can move hosts but keep your domain)
Start by:
- Picking a registrar (Cloudflare or Namecheap)
- Buying your domain
- Creating CNAME records to point to your GitHub Pages site
From there, it’s all yours.
Just get the domain. That alone is a good win for today.