エンジニア男

勉強したことの忘備録としてつらつら書いていきます。

CentOS7のDNSについて

CentOS7のDNSについてのメモ

 

名前解決の順番

①resolverがnsswitch.confで名前解決の順番を確認

②指定された順番通りに名前解決を行う

 

/etc/nsswitch.conf : 名前解決で何を使うかの順番が書いてあるファイル

 

#hosts: db files nisplus nis dns
host: files dns myhostname

files : /etc/hostsファイルを参照して名前解決を行う

dns : /etc/resolv.conf : DNSを使って名前解決を行う。問い合わせるDNSサーバーを設定するファイル。

myhostname : これを記述すると、/etc/hostsに自分のホスト名いれなくても良い

 

 

/etc/hosts : ホスト名とIPアドレスの結び付けを書くファイル。

127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6

IPアドレス  ホスト名 の順に書く。ホスト名は複数記述可能。

 

 

/etc/resolve.conf : 問い合わせるDNSサーバーを設定するファイル。このファイルはデフォルトでNetworkManager経由で管理される。

# Generated by NetworkManager
nameserver 192.168.0.1
domain localhost
search local2 local3

nameserver : DNSサーバーのIPアドレス

domain : コンピュータが所属するドメイン

search : domainを複数指定できるようにしたもの

nameserverは複数書くことが出来る。複数書いた場合は、上から順にDNSサーバーへ問合せしていく

 

domainを書くと、名前解決をする時にホスト名だけを入力した時に、domainの後ろに書いたドメイン名を付加して名前解決を行ってくれる

例: ①のコマンドを実行すると、②のコマンドを実行したのと同じになる

ssh localhost
ssh localhost.localdomain

 

 

searchを書くと、domainを複数指定できるようになる。

例: ①のコマンドを実行すると、②、③のコマンドを実行したのと同じになる。※②で名前解決されたら③は実行されない。

ssh localhost
ssh localhost.local2
ssh localhost.local3

 

 

NetworkManager : ネットワーク管理をするソフトウェア

nmcliコマンドを使用して、ネットワーク管理を行うことが推奨されている。

 

resolver(リゾルバ) : 名前解決を行うソフトウェアプログラム。リゾルバは2種類ある。

 スタブリゾルバ : DNSサーバーへ問合せをする、クライアント側のプログラム。OSから提供されるC言語のライブラリ群らしい。

フルサービスリゾルバ : スタブリゾルバからのリクエストを受けて、IPアドレスの検索を行う。

 

 

★用語まとめ

DNS(Domain Name System) = ホスト名とIPアドレスの結びつけをするシステム。

名前解決 = ホスト名とIPアドレスと結びつける処理のこと。(ホスト名からIPアドレスを調べること)

resolver = 名前解決をするソフトウェア。nsswitch.confはresolverで使用される設定ファイル。