インターネット(Internet)を使用するときに「DNS」という用語について聞いたことがありますか?DNSは(DNS)ドメインネームシステム(Domain Name System)の略です。DNSとは何か、 (DNS)DNSルックアップがどのように機能するかについて説明する前に、 DNSのDが何を表すかを理解しましょう。
ドメインとは
Web URLの形式はhttp:s//www.domainname.tldです。この例では、TLD(tld)はトップレベルドメインを指します。Webの初期の頃、TLDは次のいずれかでした。
- .com(営利団体を指します)
- .org(非営利団体を指します)
- .net(再び商用Webサイト)
- .gov(政府のWebサイト)
- .edu(教育)
- .mil(軍事目的)および
- .int(国際)
ウェブサイトを購入する人の増加に伴い、場所に関連するドメインタイプが導入されました。たとえば、.asia、.us、.in 、および.caは、それぞれアジア(Asia)、米国、インド(India) 、およびカナダ(Canada)を指します。すぐ(Soon)に、ウェブサイトの種類を教えてくれる他の種類のTLDがいくつか登場しました。(TLD)たとえば、.meは個人のWebサイトを指し、.tvはビデオストリーミングWebサイトを指します。TLDカテゴリを増やすことで、消費者の高まる需要に応えながら、タイプに応じてWebサイトを分類できるようになりました。
上記のURLの例(https://www.domainname.tld)では、httpsはデータの転送モードを指し、wwwは(www)ワールドワイドウェブ(World Wide Web)に関連していると述べています。wwwとTLDの間はすべて、Webサイトのドメイン名です。
以前は、Webサイトにアクセスするにはwwwを入力する必要がありました。(www)ホスティングサービスプロバイダーはwww.domainname.tldからdomainname.tldへのリダイレクトを許可しているため、ブラウザーに(domainname.tld)URLを入力するときにwwwの入力をスキップできます。ドメイン名の例は「thewindowsclub」です。ドメイン「thewindowsclub」にアクセスするためのURLは、https://www.thewindowsclub.comまたはhttp://thewindowsclub.comです。(URL)ここで、「thewindowsclub」は.comTLDの一部(.com)です(TLD)。次に、サブドメインが存在する可能性があります。www.news.thewindowsclub.comの場合、「ニュース」は「 (news)thewindowsclub 」のサブドメインです。
ドメインを購入すると、さまざまなTLD(TLDs)に対応する名前を購入できます。.com、.net、.us、またはその他のTLD(TLDs –)を選択できます。ただし、他の誰かがまだ使用していない場合に限ります。住所がわかるまで人々はそれに到達できないので、単にウェブサイトを購入することは役に立ちません。(Simply)購入したドメインには、任意の数のサブドメインを作成して、Webサイトやその他の目的に使用できます。作成するドメインとサブドメインごとに、Webサイトのコンテンツを含むサーバーのアドレスを指定する必要があります。ドメインまたはサブドメインが特定のデバイス(ネットワークプリンターなど)を参照している場合は、そのデバイスのアドレスを指定する必要があります。
インターネット(Internet)上のすべてのドメインとサブドメインにはアドレスが付加されています。それらをIPアドレスと呼びます:インターネットプロトコル(Internet Protocol)アドレス、言い換えれば、インターネット(Internet)で機能するアドレス。ドメイン/サブドメインにアクセスできるのは、そのコンテンツを含むサーバーのIPアドレスがわかっている場合のみです。
DNSとは
あなたはインターネット上(Internet)に無制限のウェブサイトがあることを知っています。繰り返し(Again)ますが、各Webサイトは独自の多くのサブドメインを持つことができます。これらのWebサイトのIPアドレスを覚えておくことは不可能です。これが、ドメイン名を自分の言語で入力できる理由です(URL形式を使用–技術用語ではエイリアスとも呼ばれます)。(alias)あなたがURL(URL)で言及したウェブサイトに接続できるようにドメイン名を解決するシステムが働いています。このシステムは、ブラウザがWebサイトに接続できるように、ブラウザに入力したドメイン名のIPアドレスを見つけるのに役立ちます。このシステムは、ドメインネームシステム(Domain Name System)または略してDNSと呼ばれます。(DNS)
ドメインネームシステム(一般的に知られているDNS)は、ドメイン名からIPアドレスへのマッピングを含む分散データベースです(Domain Name System, or DNS as it is popularly known, is a distributed database that contains the mapping of domain names to their IP addresses)。
最近まで、 InternNIC(InternNIC)と呼ばれる非営利団体 がドメイン名とそのIPアドレスの管理を担当していました。「営利目的」になると独占は終わり、今ではドメイン名に関連するデータベースを管理している企業がたくさんあります。データベースはさまざまな会社によって維持されていますが、DNSサービス(DNS Service)が任意のドメインのIPアドレスを取得できるように相互接続されています。
DNSサービス(DNS Service)は、Webブラウザに入力したドメイン名を解決するのに役立ちます。また、電子メールを送信するとき、またはアクティブなリンクをクリックするときにアドレスを解決するのにも役立ちます。一般に、インターネットサービスプロバイダー(Internet Service Provider)はDNSサービス(DNS Service)を提供します。ISP以外にも、パブリックドメインネーム(Domain Name) サービス(Services)を提供している会社があります。このような企業の例としては、Google、Comodo、OpenDNSなどがあります。リンクをクリックするか、WebブラウザにURLを入力すると、関連する(URL)DNSを解決するためにDNSサービスに接続されます(DNS Service)。ドメインネームシステム(Domain Name System)データベースをスキャンし、接続するホストのIPアドレスを提供するのはDNSサービスの責任です。
ドメイン名とサブドメインはエイリアス(aliases)と呼ぶことができます。さまざまなエイリアスのアドレスに関する情報を含むデータベースを保持しているサーバーは、ネームサーバー(Name Servers)と呼ばれます。ドメインネームシステム(Domain Name System)で動作するサーバーには2つのタイプがあります。最初のタイプはルートサーバーです。これらは(Root Servers)トップレベルドメイン(Top Level Domains)(TLD:.com、.net、.orgなど)に関するデータを保持します。他のタイプには、ドメインとサブドメインをホストするサーバーのアドレスが含まれています。
例1:(Example 1:)abc.xyz.comの場合、ルートサーバーは(Root Servers)xyzが.comであるという情報を保持します。他のいくつかのネームサーバーには、 (Server)xyz.comのアドレスを示すデータベースエントリが含まれます。abc.xyz.comもホストしているため、そのアドレスは、 xyz.comのアドレスを保持している同じネーム(Name)サーバー上にあるか、別のネームサーバー(Server)上にある可能性があります。さらに別のサブドメインをabc.xyz.comに追加した場合(abc.xyz.com)、そのアドレスは、ホストしている場所に応じて、同じまたは異なるNameサーバー上にある場合があります。上記の関係は次のように確立できます。
xyz
com
abc
xyz.com
qwe
xyz.com
qwe
abc.xyz.com
qweのアドレスを確立するには、ドメインネームシステムサービス(Domain Name System Service)が以下を解決する必要があります。
これは、ドメインネームシステムサービス(Domain Name System Service)がキャッシュを使用していない場合です。キャッシュについては、この記事の後半で説明します。上記は、 qwe.abc.xyz.comの(qwe.abc.xyz.com)DNSを解決するために、DNSシステムがDNSデータベースを4回スキャンする必要があることを示しています。URLのさまざまな部分のアドレスがさまざまなネームサーバー(Servers)上にある可能性があるため、これは複雑になります。しかし、インターネット(Internet)の速度により、ページが数ミリ秒、最悪の場合は数秒でダウンロードされるのを見ることができます。
DNSルックアップのしくみ
これで、さまざまなドメインとそのサブドメインのIPアドレスを含むデータベースをホストするさまざまなサーバーがあることがわかりました。また、トップレベルドメイン(Top Level Domains)をホストしているサーバーのIPアドレスを保持するルートサーバー(Root Servers)があることも知っています。これらのルートサーバー(Root Servers)は、メインドメイン名のIPアドレスを保持するデータベースを含むサーバーに到達するのに役立ちます。サブドメインがある場合、それらのアドレスはメインドメイン名と同じサーバー上または別のサーバー上にある可能性があります。これらのサーバーはすべて、使用する必要のある正確なURLのIPアドレスを見つけるためにアクセスできます。インターネット上(Internet)の任意のURLのIPアドレスを見つけるプロセスはDNSとして知られています見上げる。DNSルックアップ(DNS Lookup)がどのように機能するかを確認するには、次の例を取り上げます。
例(Example 2:)2:10台のコンピューターのネットワークについて考えてみます。各コンピュータには独自のアドレスがあるため、ネットワーク内を移動するデータパケットはどこに行くべきかを知ることができます。これらの10台のコンピューターのそれぞれのエイリアス名とそれらのIPアドレスを含むデータベースをホストする11番目のコンピューターがあります。コンピューターユーザーは自分の名前を使用してコンピューターを参照できますが、データパケットには、目的の受信者に到達できるようにコンピューターのIPアドレスが必要です。コンピューターAがコンピューターBに接続されているプリンターを使用する必要がある場合、Aは11台目のコンピューターのデータベースをチェックしてBのIPアドレスを確認し、Bに接続されているプリンターのアドレスを見つけます。プリンターのアドレスを取得した後、A印刷コマンドをBに接続されているプリンターにルーティングします。
この場合、次の反復が発生します。
A接点Computer11A
接点BA接点B
に接続されたプリンタ
同様の方法を使用してDNSレコードを検索します。たとえば、http://thewindowsclub.comをクリックすると、ルーターはDNS解決のためにデフォルトのDNSサービスに接続します。(DNS Service)DNSサービスはルートサーバーに接続し、 (Root Servers).comレコードを含むサーバーのIPアドレスを要求します。このアドレスはDNS(DNS)サービスに返送されます。DNSサービスは、 .comドメインのアドレスを含むネームサーバー(Server)に再度到達し、 http://thewindowsclub.comのアドレスを要求します。thewindowsclub.comをホストするサーバーのIPアドレスを取得すると、DNSサービスはIPアドレスをコンピューターに返し、コンピューターはブラウザーを起動してメインのWebページをダウンロードします。これは、DNSサービスが単純なドメイン名のIPアドレスを受信するために少なくとも2つのリクエストを送信していることを意味します。
以下は、DNSルックアップがどのように機能するかを説明する画像です。(Following is an image that explains how DNS lookup works:)
上記の場合、https://news.thewindowsclub.comを検索すると、DNSサービスはIPアドレスを知るために追加のリクエストを実行する必要がありました。
毎回DNS(DNS)を最初から解決するには時間がかかるため、多くのISP(ISPs)やDNSサービスプロバイダー(DNS Service Providers)は、すでに解決されたアドレスを含むローカルキャッシュを作成します。これらは主に、ある時点でルートサーバー(Root Servers)や他のネームサーバー(Servers)からすでにフェッチされているアドレスです。この場合、URLの要求を送信すると、(URL)ルート(Root)サーバーに直接接続する代わりに、 DNSサービスはローカルDNSキャッシュでURLの解決されたアドレスを検索します。見つかった場合は、解決策をすぐにコンピューターに送り返します。それ以外の場合は、DNSを解決します。(DNS)ルートサーバー(Root Servers)および他のネームサーバー(Servers)に接続する上記の方法を使用します。
一部のオペレーティングシステムにも、コンピュータで一般的に使用するアドレスのローカルキャッシュコピーが含まれています。これも、インターネット(Internet)の使用時間を節約するのに役立ちます。DNSキャッシュについては、後の別の記事で説明します。
DNSルックアップがどのように機能するかについてまだ疑問がある場合は、お知らせください。(Please let us know if you still have any doubts about how DNS lookup works.)
What Is DNS Lookup And How DNS Lookup Works
Ever heard about the tеrm “DNS” whеn uѕing the Internet? DNS stands for Domain Name System. Before we go ahead and talk about what is DNS and how DNS lookup works, let us understand what the D in the DNS stands for.
What Is A Domain
You know that the format of a web URL is http:s//www.domainname.tld. In this example, TLD (tld) refers to the top-level domain. In the early days of the web, TLD was one of the following:
- .com (refers to commercial organizations)
- .org (refers to non-profit organizations)
- .net (commercial websites again)
- .gov (government websites)
- .edu (educational)
- .mil (military purposes) and
- .int (international)
With the increase in people purchasing websites, domain types related to locations were introduced. For example, .asia, .us, .in and .ca refer to Asia, US, India and Canada respectively. Soon, several other types of TLD came in that tell us the type of website. For example, .me refers to a personal website whereas a .tv refers to a video streaming website. Increasing the TLD categories made it possible to categorize websites according to their type while catering to the increasing demands of consumers.
In the above example of the URL (https://www.domainname.tld), https refers to the mode of transfer of data, and www says it relates to the World Wide Web. Anything between www and TLD is the domain name of a website.
Earlier, people had to type in www to access a website. Since the hosting service providers allow redirection of www.domainname.tld to domainname.tld, you can skip typing www while entering the URL into the browser. An example of a domain name is “thewindowsclub”. The URL for accessing domain “thewindowsclub” is https://www.thewindowsclub.com or http://thewindowsclub.com. Here, “thewindowsclub” is part of the .com TLD. Then, there can be sub-domains. In the case of www.news.thewindowsclub.com, “news” is the sub-domain of “thewindowsclub”.
When you buy a domain, you get to purchase a name that goes with different TLDs. You can choose .com, .net, .us or other TLDs – provided it is not taken already by someone else. Simply buying a website will not help as people cannot reach it until it has an address. For any domain you purchase, you can create any number of sub-domains and use it for websites and other purposes. For each domain and sub-domain you create, you need to specify the address of servers that contain the content of your website. If the domain or sub-domain refers to some device (for example, a network printer), you need to specify the address of that device.
All the domains and sub-domains on the Internet have an address attached. We call them the IP address: Internet Protocol address or in other words, an address that works with the Internet. You can access a domain/sub-domain only if you know the IP address of servers containing its content.
What Is DNS
You know that there are unlimited websites on the Internet. Again, each website can have its own many sub-domains. Remembering the IP addresses of these websites is simply not possible. This is why you get to enter the domain name in your own language (using the URL format – also called alias in technical terms). There is a system at work that resolves the domain names so that you can connect to the website you mentioned in the URL. This system helps you in finding the IP address of the domain names you entered in your browser so that the browser can connect to the website. This system is called the Domain Name System or DNS for short.
Domain Name System, or DNS as it is popularly known, is a distributed database that contains the mapping of domain names to their IP addresses.
Until recently, a non-profit organization called InternNIC was responsible for managing the domain names and their IP addresses. When it went “for-profit”, its monopoly ended and now there are many companies that manage the databases related to domain names. Though the databases are maintained by different companies, they are interconnected in a manner that any DNS Service can get the IP address of any domain.
A DNS Service helps you in resolving the domain names that you enter in your web browser. It also helps in resolving the addresses when you are sending emails or when you click on active links. In general, your Internet Service Provider gives you a DNS Service. Other than your ISP, there are companies that offer Public Domain Name Services. Examples of such companies include Google, Comodo, and OpenDNS. When you click on a link or enter a URL into your web browser, the DNS Service is contacted for resolving the related DNS. It is the responsibility of the DNS service to scan the Domain Name System database and provide you with the IP address of the host to which you wish to connect.
The domain names and sub-domains can be called aliases. The servers holding a database containing information on the addresses of different aliases are called Name Servers. There are two types of servers operating in the Domain Name System. The first types are the Root Servers – these hold data about Top Level Domains (TLD: .com, .net and .org, etc.). The other types contain the addresses of servers that host your domains and sub-domains.
Example 1: In the case of abc.xyz.com, Root Servers will hold information about xyz being a .com. Some other Name Server will contain database entries showing the address of xyz.com. Since you also are hosting abc.xyz.com, its address can be either on the same Name server holding the address of xyz.com or on a different Name Server. If you add yet another sub-domain to abc.xyz.com, its address may again be on the same or on a different Name server depending upon where you are hosting it. The relation between the above can be established as below:
xyz
com
abc
xyz.com
qwe
xyz.com
qwe
abc.xyz.com
To establish the address of qwe, the Domain Name System Service will have to resolve:
This is a case when the Domain Name System Service is not using any cache. We will talk about caches a little later in this article. The above shows that to resolve the DNS of qwe.abc.xyz.com, the DNS system has to scan the DNS database four times. This becomes complex given that the addresses of different parts of the URL can be on different Name Servers. But due to the speed of the Internet, you can see the page downloading in a matter of few milliseconds and in worst cases, few seconds.
How DNS Lookup Works
By now, you know that there are different servers hosting databases that contain the IP addresses of different domains and their sub-domains. You also know that there are Root Servers that hold the IP address of servers hosting Top Level Domains. These Root Servers help in reaching the servers containing databases that hold the IP address of the main domain name. If there are sub-domains, their address can be on the same servers as of the main domain name or on a different server. All these servers are accessible for finding out the IP address of the exact URL that you need to use. The process of finding out the IP address of any URL on the Internet is known as DNS lookup. To find out how DNS Lookup works, take the following example.
Example 2: Consider a network of ten computers. Each computer has its own address so that data packets traveling in the network know where to go. There is an 11th computer that hosts a database containing the alias names of each of these ten computers and their IP addresses. While the computer users can refer to the computers using their names, the data packets need the IP addresses of the computers so that they can reach the intended recipient. If computer A needs to use the printer attached to computer B, A will check the database on 11th computer to know the IP address of B and then find out the address of printer attached to B. Only after obtaining the address of the printer, A will route the print command to the printer attached to B.
In this case, the following iterations happen:
A contacts Computer11
A contacts B
A contacts printer attached to B
A similar method is used to lookup DNS records. For example, when you click on http://thewindowsclub.com, your router will contact your default DNS Service for DNS resolution. The DNS service will contact Root Servers and ask for the IP address of the server containing .com records. This address is sent back to your DNS service. The DNS service again reaches the Name Server containing addresses of .com domains and asks it for the address of http://thewindowsclub.com. Upon obtaining the IP address of the servers that host thewindowsclub.com, your DNS service will return the IP address to your computer which then fires up your browser to download the main webpage. This means your DNS service is sending at least two requests to receive the IP address of a simple domain name.
Following is an image that explains how DNS lookup works:
In the above case, if you were to look for https://news.thewindowsclub.com, your DNS service had to run a request extra to know its IP address.
Since resolving DNS from scratch every time takes up time, many ISPs and DNS Service Providers create local caches that contain already resolved addresses. These are primarily the addresses they already fetched from Root Servers and other Name Servers at some point in time. In this case, when you send a request for a URL, instead of contacting the Root server directly, the DNS service would look up the resolved address of the URL in its local DNS cache. If found, it would send the resolution back to your computer instantly else would go ahead and resolve the DNS using the above method of contacting Root Servers and other Name Servers.
Some operating systems too, contain a locally cached copy of addresses that you commonly use on your computer. This too, helps in saving time while using the Internet. We will talk about DNS caches in a different article at some later point of time.
Please let us know if you still have any doubts about how DNS lookup works.