見出し画像

CentOS8に入門してみる(ネットワーク3)

前回はnmcliコマンドだけにフォーカスして基本的な使い方を見ていきました

今回はまたLinux(CentOS8)でのネットワーク関係に範囲を広げつつちょっとずつ学習していきます

見ていくのは今回もネットワークの設定関係です


nmtuiコマンド

nmtuiコマンドもnmcliコマンド同様、ネットワーク関係の設定を参照したり変更したりできるものですがこちらはよりグラフィカルに弄ることができるものとなっています

実はネットワーク学習を進めるにあたってVirtualBoxにNICを追加する作業を行ったのですがその中ですでに使用しています


最初はnmtuiがインストールされているか確認します

[vagrant@centuser ~]$ which nmtui
/usr/bin/nmtui

上記のようにすでにインストールされていればOKですがされてない場合は下記コマンドでインストールします

sudo dnf -y install NetworkManager-tui

起動も管理者権限でnmtuiコマンドを実行するだけとなっています

[vagrant@centuser ~]$ sudo nmtui


実行すると下の画像のような画面が出てきます

スクリーンショット 2020-09-12 16.15.25

・Edit a connection : 接続の設定を行えます

・Activate a connection : 接続を非アクティブにしたりアクティブにしたりでき、接続設定の変更を行った際は一旦非アクティブ→アクティブにするような使い方をします

・Set system hostname : hostnameの設定が行えます


Edit a connection 

Edit a connectionを選択したまま、Enterを押下すると下のような画面が表示されます

存在する接続が表示されています(nmcli cで出てくる接続)

スクリーンショット 2020-09-12 16.19.40

設定を変更したい接続を選択したままEnterを押下すると下の画面へ遷移します

ここで接続の設定を変更できるようになります

既に存在する接続の設定変更なのでnmcli c modify ~ と似たことをGUIでできるイメージです

スクリーンショット 2020-09-12 16.20.32

スクリーンショット 2020-09-12 16.22.39


Activate a connection

Edit a connectionで行った変更を反映するには接続を一旦DeactivateしてからActivateする必要があります

このようなDeactivateやActivateに使うのがActivate a connectionです

下の画像のようにDeactivateしたい接続を選択してEnterを押下します

スクリーンショット 2020-09-12 16.23.27

反応が薄いので気付きにくいですが、再度同じ接続を選択すると実行できる選択がActivateになっているのでDeactivateができていそうです

スクリーンショット 2020-09-12 16.23.39


Set system hostname

hostnameの設定を行えます(/etc/hostnameファイルの変更と同じ)

スクリーンショット 2020-09-12 16.24.24

スクリーンショット 2020-09-12 16.24.40

ここで変更されたhostnameは/etc/hostnameに書き込まれます

つまり、恒久的な変更と同義になります(一旦変更するときはhostnameコマンドで対応)


ネットワーク設定ファイル(ifcfgファイル)

今までnmcliやnmtuiといったNetworkManagerの機能でネットワーク設定の変更などを行ってきましたがこれはCentOS7からの標準機能なので

CentOS6以前はネットワーク設定ファイル(/etc/sysconfig/network-scripts/ifcfg-*)を編集してネットワークの設定変更を行っていたようです

CentOS7以降はNetworkManager機能での設定変更が推奨されている為、このネットワーク設定ファイルを編集することは非推奨となっているようです

[vagrant@centuser ~]$ cat /etc/sysconfig/network-scripts/ifcfg-eth1
#VAGRANT-BEGIN
# The contents below are automatically generated by Vagrant. Do not modify.
NM_CONTROLLED=yes
BOOTPROTO=none
ONBOOT=yes
IPADDR=192.168.XXX.XXX
NETMASK=255.255.255.0
DEVICE=eth1
PEERDNS=no
#VAGRANT-END
TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no
PREFIX=24
GATEWAY=192.168.XXX.XXX
DNS1=192.168.56.1
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=no
NAME="System eth1"
UUID=9c92fad9-6ecb-3e6c-eb4d-8a47c6f50c04

環境構築する際にVagrantが作ったネットワーク設定ファイルなので一部それに関連した記載が入ってますが特に気にする必要ありません

もしこのCentOS7以降でもこのファイルを使用してネットワークの設定を管理したい場合は該当するネットワークデバイスをNetworkManager管理の管轄外にしてあげる必要があります

$sudo nmcli d set XXXXX managed no


hostsファイル

DNSを使って名前解決を動的に行わずに静的に行う場合は/etc/hostsファイルを編集します

[vagrant@centuser ~]$ cat /etc/hosts
127.0.0.1	centuser	centuser
127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6

127.0.0.1 centos8.localdomain

例えばホスト名「svr.example.com」のIPアドレスが192.168.100.1と決まっている場合は下記のように記述します

192.168.100.1 srv srv.example.com

「srv」「srv.example.com」のようにドメイン名を含まないものと含むもの両方記述しておきます


ネームサービススイッチ

名前解決する際の問合せ順を設定します

設定するには/etc/nsswitch.confを編集します

下記のようにhosts行に注目して見てみると

[vagrant@centuser ~]$ cat /etc/nsswitch.conf | grep "^hosts"
hosts:      files dns myhostname

files dns myhostnameとなっていることが確認できます

これは、名前解決するのに「最初に/etc/hostsファイルを参照、それで名前解決できなければdnsサーバーに問合せ、それでも無理だった場合は最終的にサーバーのhostnameを使用する」という意味です


最後に

ネットワークの設定関係に関してはこれで以上となります

基本的な部分を知るところから始めているのでまだ実務レベルの知識学習に至っていない部分もあるかもしれませんが、

そういう部分は気付き次第追記していきたいと思います

次回からはネットワークの管理やトラブルシュート時に役立つコマンドの学習を行っていきます




この記事が気に入ったらサポートをしてみませんか?