Some of you who did follow my tweets or my Facebook updates, might already know what happened.
Last week, when I was trying to access to some of my websites, I am not able to reach the website.
At first, I thought it was the VPS overload again, since I use the VPS for too many websites and technically, I am abusing the VPS like how people is playing SM. Lol
But when I try to access this blog, hey! This site is still up! The VPS isn’t down and I am able to ssh into the VPS when I directly ssh to this VPS’s IP. And I checked the VPS load, it is only less than 0.8. So it means the VPS is ok. When I tried to access a few more websites that hosted in this same VPS, there is a few other domains is unresolvable. I immediately try to switch my network setting and try to use Google DNS(18.104.22.168) to access those domains that is unresolvable. Amazingly, I am able to reach the websites without problem. So I had confirmed that there is something wrong with the Streamyx DNS.
I called up Streamyx and made a report. Then to make the issues to solve sooner, I called up one of the Streamyx technician I who I know and told him about this. Then he requested me to send the list of domains and the VPS IP so that he can check. He then told me it could be their DNS server having some issues and they will take a look on it. Around less than a week time, all the issues was solved and those websites are able to be access again.
At first, I though that my domains were null routed, since the first domain I find out that is unable to access is my web hosting billing site, where my web hosting, VPS and Dedicated Server clients pays their invoice at that site. I thought it was a sabotage. But then, when I find out that even some of my private sites which is not expose to the public, are also unreachable, so it means it could be some other reason, not a sabotage.
I was so frustrated during the time where the domains is unable to be access. One of the main reason is because a few of the websites that is unreachable is those websites which is very very important to me. Although I am able to access to the websites via Google DNS, but not other people. They might thought that the websites had closed down!
But anyway, since the issues was resolved, I am happy about it already.
WTF Is DNS?
No more stress on fear of unable to receive payment, or frustrated of worrying that my other websites is not able to reach by its visitors.
Ok, for those who do not know what the fuck I am talking about, you may read this part.
This part will explain WTF is DNS and why is it so important to a website.
Ok, please take a look on the first picture of this article. There is “Requested Web Server”, “Root DNS Servers”, “ISP DNS Servers” and the last ones is “Web User”.
Requested Web Server: It is the server where the website you are trying to access is hosted. Usually, it do have its own DNS service to allow the web masters manage the domains pointed to that server in order to create sub domains, point the sub domains to other server etc.
Root DNS Servers: The DNS servers that is holding the records about where is the domain name(.com, .net,.org, and .wat-ever-lah) is pointed to. Usually the records is set to be pointed to an existing name server that had already been setup by the web hosting provider. But in some case, like mine, I pointed my domains to a 3rd party DNS server, then from the 3rd party DNS server, I create A records(IP) and point to my VPS and other servers.(I think I’ll just skip this part, coz it will be very very long if I only focus on this part.)
ISP DNS Servers: This DNS server is the DNS servers which is run by the ISP. In this case, it is Streamyx. Each ISP have their own DNS servers. But you can choose to use 3rd party DNS servers such as Google DNS or OpenDNS, as long as you know the DNS server’s IP.
Web User: Very obvious, that is you, the person who is using the internet.
How The Fuck Do It Work?
When you are trying to browse a website, usually you will type the website address in the browser, and the browser will load and show you the website right? In this process, your browser is actually sent a request to the “ISP DNS Servers” and request for the website’s IP address. It then will be routed to the “Requested Web Server” and when the “Requested Web Server” get the request, it will send back the reply to the browser with the websites which the domain is pointed to for the “Web User” to browse.
Usually, changes of the domain name’s DNS record is done via the domain name’s control panel which it is provided by the domain name registrar. Every time when a web master change the domain’s DNS, the changes will be updated to the “Root DNS Servers”. The DNS records will then fetched by the “ISP DNS Servers” to keep as a cached DNS record. Whenever a “Web User” is trying to browse to any domain, the cached DNS records will be sent to the “Web User” from the “ISP DNS Servers”.
For my case, the issues occurs at the “ISP DNS Servers” where it did not resolve my domains DNS records.
But anyway, the problems is solved now.
If you want to read more about DNS, you can go to HERE and read more details about DNS.