Obtain a free domain name!

Did you know that you could get a free domain to develop a website?

Featured image

Thanks to GitHub education, it is possible do obtain free domains provided by Namecheap or Name.com. You can also host your website for free on GitHub if you don’t have a personal server!

Requirements


1. Create a GitHub account

First of all, you need to visit github.com and create your account with your school email address if you have one, else use a normal email address. Once you finished filling the registration form, click the verification link in your inbox and log in on your account.

If you already have an account, just make sure that your school email address is marked as default and public in the settings.


2. Join GitHub education

Now you’ll need to head over to education.github.com/discount_requests/new and enter all details asked. Make sure to select the correct school-issued email address/documents and school name. Once you have received your student pack, you may continue with the last step!


3. Get your free domain name

3.1 Free .me domain from NameCheap

Visit nc.me and search for an available .me domain. Add it to your cart and complete the order.\ If asked, ensure you enter your primary email on GitHub (if you have a school email address you need to enter that one)!


Once you’ve finished creating your account, log in on namecheap.com. Click your username and move to your dashboard. In the nameservers section, select Namecheap BasicDNS and apply by clicking the green tick mark.

Move to Advanced DNS in the top menu and add a new record. Fill with:

TYPE HOST VALUE TTL
A record @ 0.0.0.1 30 min
A record @ 0.0.0.2 30 min
A record @ 0.0.0.3 30 min
A record @ 0.0.0.4 30 min


Where 0.0.0.1/2/3/4 is your server’s or GitHub’s IPv4 address(es). You can get your server’s IP it by executing curl:

curl -s checkip.dyndns.org | sed -e 's/.*Current IP Address: //' -e 's/<.*$//'


GitHub’s IPs should be:

185.199.108.153
185.199.109.153
185.199.110.153
185.199.111.153

If they do not work, check the docs for the updated records.


Written by Luka