CentOS IPアドレス固定設定:サーバー構築に必須の手順を解説

CentOS IPアドレス固定設定:サーバー構築に必須の手順を解説

CentOSをサーバーとして利用する際、IPアドレスを固定することは非常に重要な作業です。IPアドレスがDHCPによって動的に割り振られると、サーバーの再起動やネットワークの変更時にIPアドレスが変わってしまう可能性があります。これは、Webサイト、メールサーバー、データベースサーバーなど、他のシステムからアクセスされるサーバーにとっては致命的な問題となります。

この記事では、CentOSにおけるIPアドレス固定設定の方法を網羅的に解説します。設定ファイルの詳細な解説から、コマンドラインでの設定、ネットワークマネージャーGUIでの設定、そして設定後の確認とトラブルシューティングまで、初心者でも分かりやすく、そして経験者にとっても役立つ情報を提供します。

目次

  1. IPアドレス固定設定の重要性:

    • サーバー運用におけるIPアドレスの役割
    • DHCPと固定IPアドレスの違い
    • IPアドレス固定設定のメリット・デメリット
  2. IPアドレス固定設定に必要な情報:

    • IPアドレス
    • サブネットマスク
    • ゲートウェイ
    • DNSサーバー
  3. ネットワーク設定ファイルの理解:

    • /etc/sysconfig/network
    • /etc/sysconfig/network-scripts/ifcfg-eth0 (または ifcfg-enp0s3など)
    • resolv.conf
  4. コマンドラインでのIPアドレス固定設定:

    • ネットワークインターフェースの設定
    • ネットワークサービスの再起動
    • DNSサーバーの設定
  5. NetworkManager GUIでのIPアドレス固定設定:

    • GUIでの設定方法
    • 設定の確認
  6. 設定後の確認とトラブルシューティング:

    • pingコマンドによる疎通確認
    • ifconfigコマンドによるIPアドレス確認
    • 設定ミスによるトラブルシューティング
    • ネットワーク接続の確認
  7. 複数のネットワークインターフェースを持つサーバーの設定:

    • 複数のインターフェースの設定方法
    • ルーティングテーブルの確認
  8. CentOS 8/9 でのIPアドレス固定設定 (nmcliコマンド):

    • nmcliコマンドの概要
    • nmcliコマンドでのIPアドレス設定
  9. 仮想環境でのIPアドレス固定設定:

    • VirtualBox, VMware, Hyper-Vなど
    • ブリッジ接続とNAT接続の違い
    • 仮想環境特有の設定
  10. セキュリティに関する注意点:

    • ファイアウォールの設定
    • 不正アクセス対策

1. IPアドレス固定設定の重要性

サーバー運用におけるIPアドレスの役割

IPアドレス(Internet Protocol Address)は、ネットワーク上でデバイスを識別するための固有のアドレスです。サーバーは、Webサイト、メール、ファイル共有など、様々なサービスを提供するためにネットワークに接続されます。これらのサービスにアクセスするクライアントは、サーバーのIPアドレスを知っている必要があります。IPアドレスは、サーバーの「住所」のようなものであり、クライアントがサーバーにデータを送るための宛先となります。

DHCPと固定IPアドレスの違い

  • DHCP (Dynamic Host Configuration Protocol): DHCPは、ネットワーク上のデバイスにIPアドレスを自動的に割り当てるプロトコルです。DHCPサーバーは、ネットワークに接続されたデバイスに対して、一定期間IPアドレスをリースします。デバイスがネットワークから切断されたり、リース期間が終了すると、IPアドレスは解放され、別のデバイスに割り当てられる可能性があります。

  • 固定IPアドレス (Static IP Address): 固定IPアドレスは、ネットワーク管理者によって手動で設定されるIPアドレスです。一度設定されると、IPアドレスは変わることがありません。

IPアドレス固定設定のメリット・デメリット

メリット:

  • 安定性: IPアドレスが固定されているため、サーバーの再起動やネットワークの変更時に設定を変更する必要がありません。
  • アクセス容易性: 他のシステムやユーザーは、常に同じIPアドレスでサーバーにアクセスできます。
  • DNS設定: ドメイン名をIPアドレスに関連付ける際に、固定IPアドレスが必須となります。
  • セキュリティ: 特定のIPアドレスからのアクセスのみを許可するなど、セキュリティ設定が容易になります。

デメリット:

  • 設定の複雑さ: IPアドレス、サブネットマスク、ゲートウェイ、DNSサーバーなどの情報を手動で設定する必要があります。
  • IPアドレスの競合: ネットワーク内で同じIPアドレスが複数のデバイスに割り当てられると、通信に問題が発生する可能性があります。
  • 管理の負担: ネットワーク規模が大きくなると、IPアドレスの管理が煩雑になることがあります。

2. IPアドレス固定設定に必要な情報

IPアドレスを固定設定するには、以下の情報が必要です。これらの情報は、ネットワーク管理者から提供されるか、ネットワークの設定情報から確認できます。

  • IPアドレス: サーバーに割り当てる固有のIPアドレスです。
  • サブネットマスク: ネットワークの規模を定義するために使用されます。通常は255.255.255.0などの形式で表現されます。
  • ゲートウェイ: サーバーが外部ネットワーク(インターネットなど)と通信するために使用するルーターのIPアドレスです。
  • DNSサーバー: ドメイン名をIPアドレスに変換するために使用されるサーバーのIPアドレスです。複数のDNSサーバーを設定することも可能です。

3. ネットワーク設定ファイルの理解

CentOSでは、ネットワーク設定は主に以下のファイルに保存されています。

  • /etc/sysconfig/network: ネットワーク全体の基本設定を定義します。ホスト名やゲートウェイなどの情報を設定できます。

  • /etc/sysconfig/network-scripts/ifcfg-eth0 (または ifcfg-enp0s3など): 各ネットワークインターフェース(eth0, enp0s3など)の設定を定義します。IPアドレス、サブネットマスク、起動時の有効化などの情報を設定できます。インターフェース名は、ip addr コマンドで確認できます。

  • resolv.conf: DNSサーバーのIPアドレスを定義します。

各ファイルの詳細:

  • /etc/sysconfig/network:

NETWORKING=yes
HOSTNAME=your_hostname
GATEWAY=your_gateway_ip

  • NETWORKING: ネットワークを有効にするかどうかを指定します。yes に設定されている必要があります。
  • HOSTNAME: サーバーのホスト名を指定します。
  • GATEWAY: デフォルトゲートウェイのIPアドレスを指定します。

  • /etc/sysconfig/network-scripts/ifcfg-eth0 (例):

TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=static
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=no
NAME=eth0
DEVICE=eth0
ONBOOT=yes
IPADDR=your_ip_address
NETMASK=your_subnet_mask
GATEWAY=your_gateway_ip
DNS1=your_dns_server_ip
DNS2=your_secondary_dns_server_ip

  • TYPE: ネットワークインターフェースの種類を指定します。通常は Ethernet です。
  • PROXY_METHOD: プロキシの設定方法を指定します。通常は none です。
  • BROWSER_ONLY: ブラウザのみで使用するかどうかを指定します。通常は no です。
  • BOOTPROTO: IPアドレスの取得方法を指定します。static に設定すると、固定IPアドレスを使用します。DHCPを使用する場合は dhcp に設定します。
  • DEFROUTE: デフォルトルートとして使用するかどうかを指定します。通常は yes です。
  • IPV4_FAILURE_FATAL: IPv4の設定に失敗した場合に処理を停止するかどうかを指定します。通常は no です。
  • IPV6INIT: IPv6を有効にするかどうかを指定します。no に設定すると、IPv6が無効になります。
  • NAME: インターフェースの名前を指定します。
  • DEVICE: デバイス名を指定します。
  • ONBOOT: システム起動時にインターフェースを有効にするかどうかを指定します。yes に設定されている必要があります。
  • IPADDR: サーバーに割り当てるIPアドレスを指定します。
  • NETMASK: サブネットマスクを指定します。
  • GATEWAY: デフォルトゲートウェイのIPアドレスを指定します。
  • DNS1: プライマリDNSサーバーのIPアドレスを指定します。
  • DNS2: セカンダリDNSサーバーのIPアドレスを指定します (オプション)。

  • resolv.conf:

nameserver your_dns_server_ip
nameserver your_secondary_dns_server_ip (オプション)

  • nameserver: DNSサーバーのIPアドレスを指定します。複数のDNSサーバーを設定する場合は、複数行で記述します。

4. コマンドラインでのIPアドレス固定設定

コマンドラインでIPアドレスを固定するには、以下の手順を実行します。

  1. ネットワークインターフェースの設定:

まず、ネットワークインターフェースの設定ファイルを編集します。ifcfg-eth0 (または ifcfg-enp0s3など) ファイルをテキストエディタで開き、上記で説明した設定値を適切に変更します。

bash
sudo vi /etc/sysconfig/network-scripts/ifcfg-eth0

設定ファイルを編集したら、保存して閉じます。

  1. ネットワークサービスの再起動:

設定を反映させるために、ネットワークサービスを再起動します。

bash
sudo systemctl restart network

または、

bash
sudo service network restart

場合によっては、ネットワークマネージャーも再起動する必要があるかもしれません。

bash
sudo systemctl restart NetworkManager

  1. DNSサーバーの設定:

resolv.conf ファイルを編集して、DNSサーバーのIPアドレスを設定します。

bash
sudo vi /etc/resolv.conf

例:

nameserver 8.8.8.8
nameserver 8.8.4.4

保存して閉じます。

5. NetworkManager GUIでのIPアドレス固定設定

CentOSには、NetworkManagerというGUIツールを使用してネットワーク設定を管理することもできます。

  1. GUIでの設定方法:

  2. 画面右上のネットワークアイコンをクリックし、ネットワーク設定を開きます。

  3. 設定したいネットワークインターフェースを選択し、設定アイコンをクリックします。
  4. 「IPv4 Settings」タブを選択します。
  5. 「Method」を「Manual」に変更します。
  6. IPアドレス、サブネットマスク、ゲートウェイ、DNSサーバーの情報を入力します。
  7. 「Apply」をクリックして設定を保存します。

  8. 設定の確認:

設定が正しく適用されたかを確認するには、GUIで設定を確認するか、ターミナルで ifconfig コマンドを実行します。

6. 設定後の確認とトラブルシューティング

IPアドレスを固定設定した後、設定が正しく機能していることを確認する必要があります。

  • pingコマンドによる疎通確認:

pingコマンドを使用して、ゲートウェイやDNSサーバーとの疎通を確認します。

bash
ping your_gateway_ip
ping your_dns_server_ip
ping google.com

pingコマンドが成功すれば、ネットワーク接続が正常であることを意味します。

  • ifconfigコマンドによるIPアドレス確認:

ifconfigコマンドを使用して、ネットワークインターフェースに割り当てられたIPアドレスを確認します。

bash
ifconfig eth0

ifconfigコマンドの出力に、設定したIPアドレス、サブネットマスクが表示されていることを確認します。

  • 設定ミスによるトラブルシューティング:

設定ミスによってネットワークに接続できなくなった場合は、以下の点を確認してください。

  • IPアドレスがネットワーク内で重複していないか。
  • サブネットマスクが正しいか。
  • ゲートウェイのIPアドレスが正しいか。
  • DNSサーバーのIPアドレスが正しいか。
  • ネットワークインターフェースが有効になっているか。

設定ファイルの内容を再度確認し、修正してください。修正後、ネットワークサービスを再起動することを忘れないでください。

  • ネットワーク接続の確認:

    Webブラウザを開いて、Webサイトにアクセスできるかどうかを確認します。

7. 複数のネットワークインターフェースを持つサーバーの設定

複数のネットワークインターフェースを持つサーバーを設定する場合は、各インターフェースに対して個別にIPアドレスを設定する必要があります。各インターフェースの設定ファイル (ifcfg-eth0, ifcfg-eth1 など) を編集し、それぞれ異なるIPアドレスとサブネットマスクを設定します。

ルーティングテーブルを確認し、適切なルーティングが設定されていることを確認することも重要です。route -n コマンドでルーティングテーブルを表示できます。

8. CentOS 8/9 でのIPアドレス固定設定 (nmcliコマンド)

CentOS 8/9では、nmcliコマンドを使用してネットワーク設定を管理することが推奨されています。

  • nmcliコマンドの概要:

nmcli (NetworkManager Command Line Interface) は、NetworkManagerを操作するためのコマンドラインツールです。GUIよりも強力で柔軟性があり、スクリプトでの自動化にも適しています。

  • nmcliコマンドでのIPアドレス設定:

以下の手順で、nmcliコマンドを使用してIPアドレスを固定設定できます。

  1. 接続名 (connection name) を確認:

    まず、設定したいネットワークインターフェースの接続名を確認します。

    bash
    nmcli connection show

    出力される接続名 (NAME) をメモしておきます。

  2. IPアドレス、ゲートウェイ、DNSサーバーを設定:

    以下のコマンドを、実際の値に置き換えて実行します。

    bash
    nmcli connection modify "接続名" ipv4.method manual ipv4.addresses "IPアドレス/プレフィックス長" ipv4.gateway "ゲートウェイIPアドレス" ipv4.dns "DNSサーバーIPアドレス" connection.autoconnect yes

    例:

    bash
    nmcli connection modify enp0s3 ipv4.method manual ipv4.addresses "192.168.1.10/24" ipv4.gateway "192.168.1.1" ipv4.dns "8.8.8.8" connection.autoconnect yes

    • "接続名": 手順1で確認した接続名。
    • "IPアドレス/プレフィックス長": IPアドレスとサブネットマスクをCIDR表記で指定します (例: 192.168.1.10/24)。
    • "ゲートウェイIPアドレス": ゲートウェイのIPアドレス。
    • "DNSサーバーIPアドレス": DNSサーバーのIPアドレス。
    • connection.autoconnect yes: 起動時に自動的に接続するように設定します。
  3. 接続を再起動:

    設定を反映させるために、接続を再起動します。

    bash
    nmcli connection down "接続名"
    nmcli connection up "接続名"

  4. 設定の確認:

    設定が正しく適用されたかを確認するには、以下のコマンドを実行します。

    bash
    nmcli connection show "接続名" | grep ipv4

    設定したIPアドレス、ゲートウェイ、DNSサーバーの情報が表示されていることを確認します。

9. 仮想環境でのIPアドレス固定設定

仮想環境 (VirtualBox, VMware, Hyper-Vなど) でCentOSを動作させる場合、ネットワーク設定は仮想環境の設定にも依存します。

  • ブリッジ接続とNAT接続の違い:

  • ブリッジ接続: 仮想マシンは、ホストマシンと同じネットワークに直接接続されます。ホストマシンと仮想マシンは、同じネットワークセグメントに属し、同じルーターを共有します。この場合、仮想マシンにはホストマシンとは異なるIPアドレスを割り当てる必要があります。

  • NAT (Network Address Translation) 接続: 仮想マシンは、ホストマシンのIPアドレスを共有してインターネットにアクセスします。ホストマシンがルーターの役割を果たし、仮想マシンのトラフィックをNAT変換します。この場合、仮想マシンにはホストマシンとは異なるプライベートIPアドレスが割り当てられます。

  • 仮想環境特有の設定:

  • VirtualBox: 「ネットワーク」設定で「割り当て」を「ブリッジアダプター」または「NAT」に設定します。ブリッジアダプターの場合は、使用する物理インターフェースを選択します。

  • VMware: 「ネットワークアダプター」設定で「ネットワーク接続」を「ブリッジ」または「NAT」に設定します。
  • Hyper-V: 「仮想スイッチマネージャー」で「外部」、「内部」、「プライベート」のいずれかの仮想スイッチを作成します。外部仮想スイッチはブリッジ接続、内部仮想スイッチはホストマシンとのみ通信、プライベート仮想スイッチは仮想マシン間でのみ通信します。

仮想環境でIPアドレスを固定設定する場合は、仮想環境の設定とCentOSのネットワーク設定の両方を整合させる必要があります。

10. セキュリティに関する注意点

IPアドレスを固定設定する際には、セキュリティにも注意する必要があります。

  • ファイアウォールの設定:

ファイアウォールを設定して、不要なポートへのアクセスを制限します。CentOSでは、firewalld がデフォルトで有効になっている場合があります。

bash
sudo firewall-cmd --zone=public --add-port=80/tcp --permanent # HTTP
sudo firewall-cmd --zone=public --add-port=443/tcp --permanent # HTTPS
sudo firewall-cmd --reload

上記は、HTTP(80番ポート)とHTTPS(443番ポート)へのアクセスを許可する例です。必要なポートのみを許可するように設定してください。

  • 不正アクセス対策:

不正アクセスを防ぐために、以下の対策を講じます。

  • 強力なパスワードを使用する。
  • 定期的にパスワードを変更する。
  • 不要なサービスを停止する。
  • セキュリティアップデートを適用する。
  • SSHのポート番号を変更する (デフォルトの22番ポートから変更)。
  • Fail2banなどの侵入検知システムを導入する。

まとめ

CentOSにおけるIPアドレス固定設定は、サーバーの安定運用に不可欠な作業です。この記事では、その設定方法を網羅的に解説しました。コマンドライン、GUI、nmcliコマンドなど、様々な方法でIPアドレスを固定できます。

設定後は、必ず疎通確認を行い、問題が発生した場合はトラブルシューティングの手順に従って原因を特定し、修正してください。

また、セキュリティ対策も忘れずに行い、安全なサーバー環境を構築しましょう。

コメントする

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

上部へスクロール