# Setting up a domain and pointing it anywhere

> How to buy a domain, configure DNS records, and connect it to GitHub Pages, a VPS, or a home server.

*Source: https://velstech.net/setup-domain.hi (Hindi translation of https://velstech.net/setup-domain) · Updated: 2026-08-24*

*Markdown version. [Read the interactive guide](https://velstech.net/setup-domain.hi). English Markdown: https://velstech.net/setup-domain.md.*

---

Domain internet real estate का सबसे powerful टुकड़ा है जिसे आप own कर सकते हैं। यह एक permanent address है जिसे आप control करते हैं – और इसे किसी website, server या home machine पर point करने के लिए सिर्फ कुछ DNS records चाहिए। यह site ठीक इसी तरह चलती है।

## Domain खरीदना

आप domain **registrar** से खरीदते हैं – top-level domain (TLD) में नाम बेचने के लिए authorized कंपनी। समझदारी से चुनें:

- Cloudflare Registrar – cost price पर बेचता है, कोई markup नहीं, मुफ़्त management। बेहतरीन value।

- Namecheap, Porkbun – सस्ते और beginner-friendly।

- GoDaddy – काम करता है, पर checkout पर upsells की उम्मीद रखें।

TLD का चुनाव लोग जितना सोचते हैं उससे ज़्यादा मायने रखता है:

- .com – classic, सबसे भरोसेमंद, पर अक्सर taken।

- .net, .org, .dev, .io – solid विकल्प।

- Fancy TLDs (.xyz, .club) – सस्ते, पर कम serious लगते हैं।

**Renewal price** पर ध्यान दें: कई domains पहले साल सस्ते होते हैं और बाद में महँगे हो जाते हैं। Cloudflare renewal को same price रखकर इससे बचाता है।

## DNS records को समझना

अकेला domain कुछ नहीं करता। आप दुनिया को बताते हैं कि वह कहाँ point करता है **DNS records** से। वे records जिन्हें आप वास्तव में इस्तेमाल करेंगे:

```
Type     Example                         Purpose
──────────────────────────────────────────────────────────
A        185.199.108.153                 IPv4 address
AAAA     2606:4700:4700::1111            IPv6 address
CNAME    velsrocky.github.io             alias to another name
MX       mail.yourdomain.com             email delivery
TXT      "v=spf1 ..."                    verification / security
```

A records domain को IP पर map करते हैं। CNAME domain को दूसरे domain पर map करता है – उन services के लिए handy जो आपको नाम देती हैं (जैसे `username.github.io`)।

## Scenario A: GitHub Pages (यह site)

किसी domain को free GitHub Pages site से connect करने के लिए:

```
A        @      ->  185.199.108.153
A        @      ->  185.199.109.153
A        @      ->  185.199.110.153
A        @      ->  185.199.111.153
CNAME    www    ->  username.github.io
```

- अपने DNS provider पर वे records जोड़ें।

- GitHub repo में: Settings → Pages → Custom domain → अपना domain डालें।

- GitHub records verify करता है और automatic free HTTPS certificate जारी करता है।

## Scenario B: VPS या dedicated server

अगर आप server rent करते हैं (Linode, DigitalOcean, Hetzner, VPS), तो अपने domain को उसके IP पर point करें:

```
A        @   ->  203.0.113.10      (your server's IP)
CNAME    www ->  @                    (www follows the root)
```

फिर अपने web server (Nginx, Apache, Caddy) को अपनी site serve करने के लिए configure करें और free **Let's Encrypt** certificate के साथ HTTPS setup करें।

## Scenario C: Home server

Home networking एक layer जोड़ देता है – आपके घर का एक public IP है, जो NAT के ज़रिए हर device share करता है। आपको चाहिए:

- Port forwarding – अपने router को कहें कि web traffic (port 443) आपके server के private IP पर भेजे।

- Fixed public IP – घर के connections अक्सर IPs बदल देते हैं। DDNS service इस्तेमाल करें जो आपके IP बदलने पर DNS record update कर देती है।

- HTTPS – Let's Encrypt ownership को DNS records के ज़रिए verify कर सकता है, इसलिए यह home IPs पर भी काम करता है।

> Security note: home server को internet पर expose करना गंभीर बात है। सब कुछ updated रखें, SSH keys इस्तेमाल करें, और Cloudflare के free proxy को extra shield के रूप में consider करें जो आपका real IP छिपाता है।

## Email और verification records

`you@yourdomain.com` चाहिए? इसके लिए आपके mail provider (Gmail/Workspace, Zoho, या custom mail server) पर point करने वाले **MX records** चाहिए। Providers **TXT records** (SPF, DKIM) भी माँगते हैं ताकि साबित हो सके कि आपके domain का mail आपका ही है।

## Common gotchas

- Propagation में समय लगता है – DNS changes में मिनटों से 48 घंटों तक लग सकते हैं (अच्छे provider पर आमतौर पर कुछ मिनट)। धैर्य रखें।

- एक ही नाम पर A और CNAME mix न करें – या तो root को A records से point करें, या subdomains के लिए CNAME इस्तेमाल करें।

- HTTPS से पहले DNS – कुछ hosts तब तक certificate जारी नहीं करेंगे जब तक DNS resolve न हो। क्रम: पहले DNS, फिर HTTPS।

- Records को proxied: off (gray cloud) रखें GitHub Pages और home servers के साथ – Cloudflare का proxy direct connections तोड़ सकता है।

🌐 VelsTech CIDR / Subnet Calculator try करें

VPS या home network के लिए address ranges निकाल रहे हैं? किसी भी IP/prefix के लिए network, usable hosts और broadcast सेकंडों में पाएँ।

[Open calculator →](https://velstech.net/cidr-calculator)

## बस इतना ही

नाम own करें, कुछ records जोड़ें, और आपका domain कहीं भी point करता है जहाँ आपका हक़ है। चाहे वह free static hosting हो, rented server हो या आपकी closet में रखा box – DNS records ही glue हैं, और अब आप जानते हैं कि वे कैसे काम करते हैं।

---

*VelsTech – https://velstech.net/setup-domain.hi.md*
