各種ネットワーク設定ファイルについて(後編)
今回は、前回に引き続き各種ネットワーク設定ファイルについての解説です。【連載コラム:Linuxシステム管理標準教科書を読む(12)】
Linuxの基本的なスキルを習得したら、Linuxサーバーをシステムとして長期に運用管理していくためのスキルを身につけるのはいかがでしょうか。このコラムでは、「Linuxシステム管理標準教科書」の全体調整を担当した筆者が改めて大切なポイントを解説していきます。
前回は/etc/sysconfig/networkファイルが使われなくなったこと、ホスト名の設定について解説しました。今回は/etc/hostsや/etc/nsswitch.conf、/etc/resolv.confについて解説します。これらのファイルは名前解決に関わる重要なファイルです。
目次
/etc/hostsによる静的名前解決
/etc/hostsは、ホスト名からIPアドレスを調べる名前解決において、ファイルに記述する形で行う静的名前解決で使用するファイルです。現在はほとんどがDNSを使った動的名前解決ですが、DNSを設定するほどでもない小規模なシステムや一時的な実験環境では変わらず使用されるファイルです。
$ cat /etc/hosts
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
IPv6についても記述されるようになりました。pingコマンドで試してみると、IPv6が使われているのがわかります。
$ ping localhost
PING localhost(localhost (::1)) 56 data bytes
64 バイト応答 送信元 localhost (::1): icmp_seq=1 ttl=64 時間=0.303ミリ秒
/etc/nsswitch.confによる名前解決順序の指定
hostsファイルを使うか、DNSを使うかの優先順位は/etc/nsswitch.confの記述で指定します。
$ cat /etc/nsswitch.conf
#
# /etc/nsswitch.conf
(略)
hosts: files dns myhostname
(略)
filesが先なのでhostsファイルを使って静的名前解決を行い、その後にDNSで動的名前解決を行うように設定されています。
nsswitch.confファイルは、LDAPを使った認証の設定などにも使うので、覚えておくとよいでしょう。
/etc/resolv.confによる名前解決の情報
/etc/resolv.confは変わらず存在し、名前解決の情報を記述しています。しかし、NetworkManagerによって生成されているので、基本的に直接編集しない方がよいでしょう。一時的に変更するような場合にはエディタで修正してもよいですが、再起動をすると元の設定に戻る点ので恒久的に変更する場合にはツールを使ってください。
$ cat /etc/resolv.conf
# Generated by NetworkManager
search localdomain example.com
nameserver 192.168.156.2
/etc/servicesと/etc/protocolsは参照用
/etc/servicesと/etc/protocolsはそれぞれサービスのポート番号、プロトコル番号を参照するためのファイルです。
/etc/servicesは、IANAが管理しているポート番号の情報を元にしています。非常に沢山のポート番号が登録されているので、興味があればいろいろなプロトコルを見てみても面白いでしょう。
IANAのWebサイト
https://www.iana.org/form/ports-services
- 筆者紹介
宮原 徹 氏
Linux標準教科書、Linuxサーバー構築標準教科書などの監修者。LinuCレベル1/レベル2 Version10.0の改訂作業にも協力。また、幅広いOSSに関する情報提供の場として「オープンソースカンファレンス(OSC)」の企画運営も。
<Linuxシステム管理標準教科書とは>
「Linuxシステム管理標準教科書」(システム管理教科書)は2015年4月にリリースされた標準教科書シリーズの1冊です。Linuxシステムの運用管理という観点で書かれており、システム管理者という業務において知っておかなければならない基本的なトピックが解説されています。「Linux標準教科書」「Linuxサーバー構築標準教科書」でコマンド操作やサーバー構築の基本を学んだら、このシステム管理教科書を読んで、単にLinuxを使うのではなく、システムとして長期的に管理運用していくためのスキルを身につけてください。
バックナンバー
第11回:各種ネットワーク設定ファイルについて(前編)
第10回:NetworkManagerの利用
第9回:ネットワークの管理の変化
第8回:SSHサーバーの設定
第7回:SSHによるリモートログイン