Red Hat Enterprise Linux でのネットワーク設定

Red Hat Enterprise LinuxBeginner
オンラインで実践に進む

はじめに

この実験では、Red Hat Enterprise Linux システムにおけるネットワークインターフェースとホスト名の設定に関する実践的な経験を積みます。システムネットワークの接続性と識別情報を管理するための重要なコマンドラインツールとテクニックを学びます。

この実験を通じて、既存のネットワークインターフェースの状態とIPアドレスを検証し、静的IP設定を持つ新しいネットワーク接続を追加し、それらの接続を有効化および無効化する練習を行います。さらに、既存のネットワーク設定の変更、システムのホスト名と名前解決の設定を行い、最後にネットワーク接続と名前解決をテストして、すべての設定が期待通りに機能していることを確認します。

ネットワークインターフェースの状態とIPアドレスの検証

このステップでは、コマンドラインツールを使用して Red Hat Enterprise Linux システムのネットワークインターフェースの状態とIPアドレスを検証する方法を学びます。ネットワーク設定を理解することは、接続の問題をトラブルシューティングし、ネットワークサービスを管理するために不可欠です。

まず、システム上のすべての利用可能なネットワークインターフェースを一覧表示する ip link コマンドを確認しましょう。このコマンドは、ネットワークアダプターの状態(UP/DOWN)、MACアドレス、MTU(Maximum Transmission Unit)など、ネットワークアダプターの概要を提供します。

ターミナルを開きます。[labex@host ~]$ のようなプロンプトが表示されているはずです。

ip link show

以下のような出力が表示され、lo(ループバック)、eth0 および eth1(代替名を持つイーサネットインターフェース)などのインターフェースが確認できます。

1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP mode DEFAULT group default qlen 1000
    link/ether 00:16:3e:0f:9e:4e brd ff:ff:ff:ff:ff:ff
    altname enp0s6
    altname ens6
3: eth1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP mode DEFAULT group default qlen 1000
    link/ether 00:16:3e:0f:9e:51 brd ff:ff:ff:ff:ff:ff
    altname enp0s7
    altname ens7

システムには2つのイーサネットインターフェース(eth0eth1)があり、それぞれに代替名(enp0s6/ens6 および enp0s7/ens7)があることに注目してください。qdisc mq は、パフォーマンス向上のためにマルチキューネットワークスケジューラが使用されていることを示しています。

次に、ip addr コマンドを使用して、特定のネットワークインターフェースの詳細なデバイス情報とアドレス情報を表示します。このコマンドは、割り当てられたIPアドレス(IPv4およびIPv6)、ブロードキャストアドレス、サブネットマスクに関する情報を提供します。

eth0 インターフェースの詳細を確認してみましょう。

ip addr show eth0

出力には、設定されているIPv4およびIPv6アドレスを含む、eth0 に割り当てられたIPアドレスが表示されます。

2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000
    link/ether 00:16:3e:0f:9e:4e brd ff:ff:ff:ff:ff:ff
    altname enp0s6
    altname ens6
    inet 10.0.0.160/24 brd 10.0.0.255 scope global noprefixroute eth0
       valid_lft forever preferred_lft forever
    inet6 fe80::216:3eff:fe0f:9e4e/64 scope link
       valid_lft forever preferred_lft forever

eth010.0.0.160/24 というIPアドレスを持ち、noprefixroute フラグが付いていることに注目してください。これは、NetworkManager がこのインターフェースのルーティングを管理していることを示しています。

ip -s link show コマンドを使用すると、送受信されたバイト数やパケット数、エラーやドロップされたパケットなど、ネットワークパフォーマンスに関する統計情報を表示できます。これはネットワークトラフィックを素早く確認するのに便利です。

ip -s link show eth0

eth0 インターフェースの統計情報が表示されます。

2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP mode DEFAULT group default qlen 1000
    link/ether 00:16:3e:0f:9e:4e brd ff:ff:ff:ff:ff:ff
    RX:  bytes packets errors dropped  missed   mcast
         90512     884      0       0       0       0
    TX:  bytes packets errors dropped carrier collsns
       1430185    1069      0       0       0       0
    altname enp0s6
    altname ens6

最後に、ip route コマンドを使用してルーティングテーブルを確認しましょう。ルーティングテーブルは、ネットワークトラフィックが宛先にどのように送られるかを決定します。

ip route

このコマンドはIPv4ルーティングテーブルを表示し、デフォルトルートや特定のネットワークへのルートを示します。2つのネットワークインターフェースがあるため、複数のルートが表示されます。

default via 10.0.0.253 dev eth0 proto dhcp src 10.0.0.160 metric 100
default via 10.0.0.253 dev eth1 proto dhcp src 10.0.0.161 metric 101
10.0.0.0/24 dev eth0 proto kernel scope link src 10.0.0.160 metric 100
10.0.0.0/24 dev eth1 proto kernel scope link src 10.0.0.161 metric 101

メトリックが異なる(100と101)2つのデフォルトルートがあることに注目してください。メトリック値が低いため eth0 が優先されます。両方のインターフェースは同じネットワークセグメント(10.0.0.0/24)に接続されており、同じゲートウェイ(10.0.0.253)を使用しています。eth0 インターフェースはIPアドレス 10.0.0.160/24 を持ち、eth110.0.0.161/24 を持っています。

IPv6ルーティングテーブルを表示するには、ip -6 route コマンドを使用します。

ip -6 route

両方のインターフェースのIPv6ルーティングエントリが表示されます。

::1 dev lo proto kernel metric 256 pref medium
fe80::/64 dev eth0 proto kernel metric 256 pref medium
fe80::/64 dev eth1 proto kernel metric 256 pref medium

静的IPを持つ新しいネットワーク接続の追加

このステップでは、nmcli コマンドラインツールを使用して、静的IPアドレスを持つ新しいネットワーク接続を追加する方法を学びます。nmcli は、Red Hat Enterprise Linux でネットワーク接続を管理する NetworkManager を制御するための強力なユーティリティです。

まず、現在のネットワークデバイスの状態を確認して、利用可能なインターフェースを特定しましょう。これにより、設定するインターフェースを選択するのに役立ちます。

nmcli dev status

以下のような出力が表示され、eth0eth1 などのデバイスとそれぞれの接続名が確認できます。

DEVICE  TYPE      STATE                   CONNECTION
eth0    ethernet  connected               cloud-init eth0
eth1    ethernet  connected               cloud-init eth1
lo      loopback  connected (externally)  lo

この実験では、eth0 インターフェースを使用して新しい静的接続を作成します。システムには、このイメージのために NetworkManager によって自動生成された cloud-init eth0 および cloud-init eth1 という名前のアクティブな接続が既に存在することに注意してください。

それでは、eth0 インターフェースに static-eth0 という名前の新しいネットワーク接続を追加しましょう。静的IPv4アドレス、サブネットマスク、ゲートウェイを設定します。現在のネットワーク環境(10.0.0.0/24)に基づいて、以下の詳細を使用します。

  • 接続名: static-eth0
  • インターフェース名: eth0
  • IPv4アドレス: 10.0.0.200/24(IPアドレス 10.0.0.200、24ビットサブネットマスク)
  • ゲートウェイ: 10.0.0.253(現在のゲートウェイと同じ)

以下のコマンドを実行して新しい接続を追加します。ネットワーク設定の変更にはroot権限が必要なため、sudo を使用することを忘れないでください。パスワードは求められません。

注意: もし既に異なるIP範囲(例: 192.168.1.10/24)で static-eth0 接続を作成している場合は、まずそれを削除し、この環境に適したIP範囲で再作成する必要があります。

## 誤ったIP範囲で接続が存在する場合は削除
sudo nmcli con delete static-eth0
## 正しいIP範囲で新しい接続を追加
sudo nmcli con add con-name static-eth0 type ethernet ifname eth0 ipv4.addresses 10.0.0.200/24 ipv4.gateway 10.0.0.253 ipv4.method manual

コマンド実行後、接続が正常に追加されたことを示す確認メッセージが表示されます。

Connection 'static-eth0' (d4c42169-4134-4d3a-9b31-e837d62601bd) successfully added.

コマンドの内訳は以下の通りです。

  • sudo nmcli con add: 新しい NetworkManager 接続を追加するための基本コマンド。
  • con-name static-eth0: 新しい接続プロファイルに static-eth0 という名前を割り当てます。
  • type ethernet: イーサネットタイプの接続であることを指定します。
  • ifname eth0: この接続プロファイルを eth0 ネットワークインターフェースにバインドします。
  • ipv4.addresses 10.0.0.200/24: 静的IPv4アドレスとサブネットマスクを設定します。
  • ipv4.gateway 10.0.0.253: この接続のデフォルトゲートウェイを設定します。
  • ipv4.method manual: IPv4アドレスの割り当て方法を手動(静的)に設定し、DHCP経由でのIPアドレス取得を防ぎます。

次に、新しい接続プロファイルが作成されたことを確認しましょう。nmcli con show を使用して、利用可能なすべての接続を一覧表示できます。

nmcli con show

接続リストの中に static-eth0 が表示されているはずです。システム生成の接続はアクティブですが、これはまだアクティブではない(デバイスが割り当てられていない)ことに注意してください。

NAME         UUID                                  TYPE      DEVICE
cloud-init eth0  1dd9a779-d327-56e1-8454-c65e2556c12c  ethernet  eth0
cloud-init eth1  3c50eb47-7260-5a6d-801d-bd4f587d6b58  ethernet  eth1
lo           9eac3150-dd39-47e6-a375-f7165442a8eb  loopback  lo
static-eth0  d4c42169-4134-4d3a-9b31-e837d62601bd  ethernet  --

次のステップでは、この新しく作成した接続を有効化する方法を学びます。

ネットワーク接続の有効化と無効化

このステップでは、nmcli コマンドを使用してネットワーク接続を有効化および無効化する方法を学びます。接続を有効化するとネットワークインターフェースが起動し、接続プロファイルで定義された設定が適用されます。接続を無効化するとインターフェースが停止します。

まず、すべてのネットワーク接続を一覧表示して現在の状態を確認しましょう。これにより、eth0 でどの接続がアクティブかを確認できます。

nmcli con show

以下のような出力が表示されます。cloud-init eth0 が現在 eth0 でアクティブであり、static-eth0 はアクティブではないことに注目してください。

NAME         UUID                                  TYPE      DEVICE
cloud-init eth0  1dd9a779-d327-56e1-8454-c65e2556c12c  ethernet  eth0
cloud-init eth1  3c50eb47-7260-5a6d-801d-bd4f587d6b58  ethernet  eth1
lo           8fe3e894-2a2e-446f-9abc-cdf612f0d973  loopback  lo
static-eth0  66094d3b-f21a-44f9-b1ef-3b2b2659e487  ethernet  --

それでは、前のステップで作成した static-eth0 接続を有効化しましょう。

重要な注意: リモート環境で作業しているため、プライマリインターフェース(eth0)で異なるIPアドレスを持つ接続を有効化すると、リモート接続が中断される可能性があります。本番環境では通常、以下の対応を行います。

  1. テスト用にセカンダリインターフェースを使用する。
  2. マシンへのコンソールアクセス権を持つ。
  3. 現在の接続と同じIP範囲とゲートウェイを使用するように接続を設定する。

この実験では、接続の中断を避けるために eth0 ではなく eth1 を使用します。まず、eth1 用の静的接続を作成しましょう。

sudo nmcli con add con-name static-eth1 type ethernet ifname eth1 ipv4.addresses 10.0.0.201/24 ipv4.gateway 10.0.0.253 ipv4.method manual

次に、static-eth1 接続を有効化します。

sudo nmcli con up static-eth1

接続が正常に有効化されたことを示す確認メッセージが表示されます。

Connection 'static-eth1' successfully activated (D-Bus active path: /org/freedesktop/NetworkManager/ActiveConnection/X)

static-eth1 を有効化すると、デバイスごとに1つの接続しかアクティブにできないため、元の cloud-init eth1 接続は自動的に無効化されます。ネットワークデバイスと接続の状態を再度確認しましょう。

nmcli dev status

eth1static-eth1 接続に関連付けられ、eth0 は元の接続のままになっているはずです。

DEVICE  TYPE      STATE      CONNECTION
eth0    ethernet  connected  cloud-init eth0
eth1    ethernet  connected  static-eth1
lo      loopback  connected  lo

接続リストを再度確認して、static-eth1 がアクティブであることを確認します。

nmcli con show --active

他のアクティブな接続とともに、static-eth1 がアクティブな接続として表示されるはずです。

NAME         UUID                                  TYPE      DEVICE
cloud-init eth0  1dd9a779-d327-56e1-8454-c65e2556c12c  ethernet  eth0
lo           9eac3150-dd39-47e6-a375-f7165442a8eb  loopback  lo
static-eth1  xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx  ethernet  eth1

次に、eth1 インターフェースが設定した静的IPアドレスを持っていることを確認します。

ip addr show eth1

出力には、eth1 のIPv4アドレスとして 10.0.0.201/24 が表示されるはずです。

3: eth1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000
    link/ether 00:16:3e:0f:9e:51 brd ff:ff:ff:ff:ff:ff
    altname enp0s7
    altname ens7
    inet 10.0.0.201/24 brd 10.0.0.255 scope global eth1
       valid_lft forever preferred_lft forever
    inet6 fe80::216:3eff:fe0f:9e51/64 scope link
       valid_lft forever preferred_lft forever

最後に、ネットワーク接続を無効化する方法を学びます。デバイスを切断すると、そのデバイス上のアクティブな接続が停止します。

sudo nmcli dev disconnect eth1

確認メッセージが表示されます。

Device 'eth1' successfully disconnected.

デバイスの状態を再度確認します。eth1disconnected 状態になっているはずです。

nmcli dev status
DEVICE  TYPE      STATE         CONNECTION
eth0    ethernet  connected     cloud-init eth0
eth1    ethernet  disconnected  --
lo      loopback  connected     lo

デバイスを切断すると、以前そのデバイスでアクティブだった接続も無効化されることに注意してください。元の cloud-init eth1 接続を再度有効にしたい場合は、sudo nmcli con up "cloud-init eth1" を使用して再度有効化します(スペースが含まれているため、接続名を引用符で囲むことに注意してください)。この実験では、eth1 は切断したままにしておきます。

既存のネットワーク接続設定の変更

このステップでは、nmcli コマンドを使用して既存のネットワーク接続の設定を変更する方法を学びます。これは、IPアドレス、DNSサーバー、またはその他のネットワークパラメータを更新する必要がある場合に一般的なタスクです。

まず、設定を変更するため、static-eth1 接続がアクティブであることを確認します。アクティブでない場合は、今すぐ有効化してください。

sudo nmcli con up static-eth1

有効化された場合、または既にアクティブである場合は、確認メッセージが表示されます。

Connection 'static-eth1' successfully activated (D-Bus active path: /org/freedesktop/NetworkManager/ActiveConnection/X)

次に、static-eth1 接続の現在の設定を表示します。このコマンドは、接続のすべての設定プロパティを表示します。

nmcli con show static-eth1

接続プロパティの詳細な出力が表示されます。ipv4.addressesipv4.gateway の行に注目してください。

connection.id:                          static-eth1
connection.uuid:                        xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
connection.interface-name:              eth1
...
ipv4.addresses:                         { ip = 10.0.0.201/24, gw = 10.0.0.253 }
ipv4.gateway:                           10.0.0.253
...

static-eth1 のIPv4アドレスを 10.0.0.221/24 に変更し、ゲートウェイ 10.0.0.253 はそのままにします。

sudo nmcli con mod static-eth1 ipv4.addresses 10.0.0.221/24 ipv4.gateway 10.0.0.253

このコマンドで接続プロファイルが変更されます。ただし、変更を有効にするには、接続を無効化してから再度有効化する必要があります。

まず、eth1 デバイスを切断します。

sudo nmcli dev disconnect eth1

以下のように表示されます。

Device 'eth1' successfully disconnected.

次に、static-eth1 接続を再度有効化します。

sudo nmcli con up static-eth1

以下のように表示されます。

Connection 'static-eth1' successfully activated (D-Bus active path: /org/freedesktop/NetworkManager/ActiveConnection/X)

IPアドレスとゲートウェイが更新されたことを確認しましょう。

ip addr show eth1

出力には新しいIPアドレス 10.0.0.221/24 が反映されているはずです。以前の設定によるセカンダリIPアドレスが表示される場合もあります。

3: eth1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000
    link/ether 00:16:3e:0f:a2:70 brd ff:ff:ff:ff:ff:ff
    altname enp0s7
    altname ens7
    inet 10.0.0.221/24 brd 10.0.0.255 scope global noprefixroute eth1
       valid_lft forever preferred_lft forever
    inet 10.0.0.161/24 brd 10.0.0.255 scope global secondary noprefixroute eth1
       valid_lft forever preferred_lft forever

ルーティングテーブルを確認してゲートウェイを確認します。

ip route

両方のインターフェースのルートが表示され、eth1 が新しいIPアドレスを持っているはずです。セカンダリIPアドレスがある場合は、追加のルートが表示されることがあります。

default via 10.0.0.253 dev eth0 proto dhcp src 10.0.0.160 metric 100
default via 10.0.0.253 dev eth1 proto static metric 101
10.0.0.0/24 dev eth0 proto kernel scope link src 10.0.0.160 metric 100
10.0.0.0/24 dev eth1 proto kernel scope link src 10.0.0.221 metric 101
10.0.0.0/24 dev eth1 proto kernel scope link src 10.0.0.161 metric 101

DNSサーバーのような複数値の設定に対して、特定の値を追加または削除することもできます。static-eth1 接続にDNSサーバー 8.8.8.8 を追加してみましょう。

sudo nmcli con mod static-eth1 +ipv4.dns 8.8.8.8

この変更を適用するには、再度接続を無効化して有効化する必要があります。これらのコマンドを別々の行で実行するか、組み合わせることができます。

sudo nmcli dev disconnect eth1
sudo nmcli con up static-eth1

DNS設定を確認します。

nmcli con show static-eth1 | grep ipv4.dns

DNSサーバーとして 8.8.8.8 が表示されているはずです。

ipv4.dns:                               8.8.8.8

システムホスト名と名前解決の設定

このステップでは、システムのホスト名を設定し、名前解決設定を管理する方法を学びます。ホスト名はネットワーク上でシステムを識別する一意の名前であり、名前解決はホスト名をIPアドレスに(またはその逆に)変換するプロセスです。

まず、hostname コマンドを使用してシステムの現在のホスト名を確認しましょう。

hostname

hostlocalhost.localdomain のようなデフォルト値が表示されるはずです。

host

静的ホスト名を設定するには、hostnamectl コマンドを使用します。このコマンドは /etc/hostname ファイルを変更し、再起動後もホスト名を保持します。ホスト名を server.labex.example.com に設定しましょう。

sudo hostnamectl set-hostname server.labex.example.com

ホスト名を設定した後、hostnamectl status を使用して確認できます。

hostnamectl status

新しい静的ホスト名が表示されているはずです。

 Static hostname: server.labex.example.com
       Icon name: computer-vm
         Chassis: vm 🖴
      Machine ID: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
         Boot ID: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
  Virtualization: kvm
Operating System: Red Hat Enterprise Linux 9.6 (Plow)
     CPE OS Name: cpe:/o:redhat:enterprise_linux:9::baseos
          Kernel: Linux 5.14.0-xxx.el9.x86_64
    Architecture: x86-64
 Hardware Vendor: Alibaba Cloud
  Hardware Model: Alibaba Cloud ECS

/etc/hostname ファイルの内容を直接確認することもできます。

cat /etc/hostname

新しいホスト名が表示されます。

server.labex.example.com

次に、名前解決を設定しましょう。Linuxシステムは通常、DNSサーバーに問い合わせる前に、ローカルのホスト名からIPアドレスへのマッピングのために /etc/hosts ファイルを使用します。IPアドレス 192.168.1.100 を持つ架空のサーバー webserver.labex.example.com のエントリを /etc/hosts に追加しましょう。

sudo nano を使用して /etc/hosts ファイルを編集します。

sudo nano /etc/hosts

ファイルの末尾に以下の行を追加します。

192.168.1.100   webserver.labex.example.com

Ctrl+X を押し、Y で保存し、Enter でファイル名を確定します。

次に、エントリが /etc/hosts に存在することを確認します。

cat /etc/hosts

追加したエントリが表示されるはずです。

127.0.0.1       localhost localhost.localdomain localhost4 localhost4.localdomain4
::1             localhost localhost.localdomain localhost6 localhost6.localdomain6
192.168.1.100   webserver.labex.example.com

/etc/hosts ファイルを使用したホスト名解決をテストするには、getent hosts コマンドを使用します。このコマンドは、/etc/hosts を含むネームサービススイッチ(NSS)設定を照会します。

getent hosts webserver.labex.example.com

/etc/hosts ファイルから解決されたIPアドレスが表示されるはずです。

192.168.1.100   webserver.labex.example.com

最後に、DNSクエリがどのように実行されるかを制御する /etc/resolv.conf ファイルを見てみましょう。NetworkManager は通常このファイルを管理します。前のステップで、static-eth1 接続にDNSサーバーとして 8.8.8.8 を追加しました。それが /etc/resolv.conf に表示されていることを確認しましょう。

cat /etc/resolv.conf

他のシステムネームサーバーとともに nameserver 8.8.8.8 が表示されているはずです。

## Generated by NetworkManager
search labex.example.com
nameserver 100.100.2.136
nameserver 100.100.2.138
nameserver 8.8.8.8

注意: search ディレクティブとシステムネームサーバーは環境によって異なる場合があります。重要なのは、リストに 8.8.8.8 が含まれていることです。

ネットワーク接続と名前解決のテスト

この最後のステップでは、さまざまなコマンドラインツールを使用してネットワーク接続と名前解決をテストします。これにより、ネットワーク設定が期待通りに機能していることを確認できます。

まず、ping コマンドを使用して、既知のIPアドレスへの基本的なネットワーク接続をテストしましょう。前のステップで設定したゲートウェイ 10.0.0.253 にpingを送信します。-c3 オプションは3つのパケットのみを送信します。

ping -c3 10.0.0.253

ゲートウェイへの接続を示す成功した応答が表示されるはずです。

PING 10.0.0.253 (10.0.0.253) 56(84) bytes of data.
64 bytes from 10.0.0.253: icmp_seq=1 ttl=64 time=0.052 ms
64 bytes from 10.0.0.253: icmp_seq=2 ttl=64 time=0.049 ms
64 bytes from 10.0.0.253: icmp_seq=3 ttl=64 time=0.045 ms

--- 10.0.0.253 ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 2000ms
rtt min/avg/max/mdev = 0.045/0.049/0.052/0.003 ms

注意: 必要に応じて、Ctrl+C を押すことでいつでもpingコマンドを中断できます。

次に、/etc/hosts に追加した webserver.labex.example.com エントリの名前解決をテストします。getent hosts は最初に /etc/hosts を参照するため、再度これを使用します。

getent hosts webserver.labex.example.com

IPアドレス 192.168.1.100 が返されるはずです。

192.168.1.100   webserver.labex.example.com

次に、host コマンドを使用して、google.com のような外部ホスト名のDNS解決をテストします。このコマンドは、設定されたDNSサーバー(static-eth1 接続からの 8.8.8.8 を含むはずです)を照会します。

host google.com

google.com のIPアドレスが表示されるはずです。

google.com has address 142.251.46.174
google.com has IPv6 address 2607:f8b0:4005:802::200e
google.com mail is handled by 10 smtp.google.com.

dig コマンドは、DNSネームサーバーを照会するためのもう一つの強力なツールです。DNSクエリに関するより詳細な情報を提供します。

dig google.com

応答したDNSサーバーやクエリの詳細を含む、より詳細な出力が表示されます。

; <<>> DiG 9.16.23-RH <<>> google.com
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 21983
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 0

;; QUESTION SECTION:
;google.com.                    IN      A

;; ANSWER SECTION:
google.com.             1       IN      A       142.251.46.174

;; Query time: 1 msec
;; SERVER: 100.100.2.136#53(100.100.2.136)
;; WHEN: Mon Jun 16 10:18:26 CST 2025
;; MSG SIZE  rcvd: 44

最後に、ss コマンドを使用してソケット統計を表示し、アクティブなネットワーク接続を確認します。TCPソケットには -t を、すべての(リスニングおよび確立された)ソケットには -a を使用します。

ss -ta

システム上のTCP接続とリスニングポートのリストが表示されます。

State                                Recv-Q                                Send-Q                                                               Local Address:Port                                                                      Peer Address:Port
LISTEN                               0                                     128                                                                        0.0.0.0:exlm-agent                                                                     0.0.0.0:*
LISTEN                               0                                     128                                                                        0.0.0.0:ssh                                                                            0.0.0.0:*
ESTAB                                0                                     0                                                                       10.0.0.160:exlm-agent                                                                 10.0.0.251:36354
LISTEN                               0                                     128                                                                           [::]:ssh                                                                               [::]:*

これでネットワーク管理に関する実験は終了です。ネットワーク設定の検証、接続の追加と変更、ホスト名と名前解決の設定、および接続テストを正常に完了しました。

まとめ

この実験では、Red Hat Enterprise Linux システムにおけるネットワークインターフェースとホスト名の設定を管理する実践的な経験を積みました。まず、ip link および ip addr コマンドを使用してネットワークインターフェースの状態とIPアドレスを検証し、ネットワーク診断のためにその出力を解釈する方法を理解しました。

続いて、静的IPアドレスを持つ新しいネットワーク接続を追加し、それらの接続を有効化および無効化し、既存のネットワーク設定を変更する方法を学び、ネットワーク管理のための nmcli の習熟度を高めました。最後に、システムのホスト名と名前解決を設定し、ネットワーク接続と名前解決を検証することで、Linux ネットワークの重要な概念についての理解を深めました。