すべてのプロダクト
Search
ドキュメントセンター

:LinuxインスタンスのローカルネットワークインターフェイスコントローラーのDHCP設定チェックと修復

最終更新日:Jan 23, 2025

概要

デフォルトでは、ECSインスタンスはDynamic Host Configuration Protocol (Dynamic Host Configuration Protocol) を使用して、自動的にIPアドレスをElastic Network Interfaceに割り当て、リース有効期限を取得します。 通常、Linuxインスタンスのdhclientプロセスは、インスタンスのIPアドレスの可用性を確保するために、定期的にDHCPサーバーへのリース有効期限を更新します。 次の状況でLinuxインスタンスのDHCPサービスが異常になり、インスタンスのネットワークが切断される可能性があります。

  • ネットワークインターフェースコントローラ设定ファイルエラー
  • ネットワークインターフェイスコントローラーのdhclientプロセスが実行されていません。

この記事では、ローカルネットワークインターフェイスコントローラーのDHCP設定を確認する方法と、例外を修正する方法について説明します。

背景

説明

以下の点にご注意ください。

  • インスタンス設定やデータの変更など、リスクを引き起こす可能性のある操作を実行する前に、データのセキュリティを確保するために、インスタンスのディザスタリカバリ機能とフォールトトレランス機能を確認することを推奨します。
  • ECS (Elastic Compute Service) およびRDS (Relational Database Service) インスタンスを含むインスタンスの設定およびデータを変更できます。 変更前に、スナップショットを作成するか、RDSログバックアップを有効にすることを推奨します。
  • Alibaba Cloud管理コンソールでログインアカウントやパスワードなどの機密情報を承認または送信した場合は、そのような情報をタイムリーに変更することを推奨します。

  1. Linuxインスタンスにリモート接続します。 リモートでログインする方法の詳細については、「ECS接続方法の概要」をご参照ください。
    説明

    注意: SSHを使用してLinuxインスタンスにログインできない場合は、トラブルシューティングガイドを参照してください。 SSHを使用してLinuxインスタンスにリモートログインできない場合

  2. 誤操作によるデータセキュリティリスクを回避するために、スナップショットを使用してECSインスタンスをバックアップすることを推奨します。 スナップショットの作成方法の詳細については、「通常のスナップショットの作成」をご参照ください。
  3. 次のコマンドを実行して、Linuxインスタンスの既存のネットワークインターフェイスコントローラーを確認して記録します。
    ls -al /sys/class/net/
    次の図が表示されます。eth0はネットワークインターフェイスコントローラーです。 以下は、ローカルネットワークインターフェースコントローラーです。たとえば、ECSインスタンスに追加されたElastic network interfaceネットワークインターフェースコントローラーの場合、サブジェクトの実際の状況を示します。
  4. ローカルネットワークインターフェイスコントローラーのみが使用できるLinuxインスタンスの場合は、次の手順を続けて確認してください。 Linuxインスタンス上に複数のネットワークインターフェイスコントローラーがある場合は、手順5〜手順8に従って、各ネットワークインターフェイスコントローラーを確認して修正します。
  5. Linuxインスタンスで次のコマンドを実行して、ネットワークインターフェイスコントローラーの構成ファイルを確認します。
    cat /etc/sysconfig/network-scripts/ifcfg-[$Eth]
    説明

    :[$Eth] は、ローカルネットワークインターフェイスコントローラー名を示します。 オンサイトでチェックするネットワークインターフェースコントローラー名 (eth0など) に置き換えます。

    次の情報が表示されます。BOOTPROTO=dhcpは、ネットワークインターフェイスコントローラーがDHCPを使用してIPアドレスを取得することを示します。
    # インスタンス起動時にcloud-initによって自動的に作成され、編集しないでください。
    # cloud-initを自動的にgenratedしたくない場合は、/etc/cloud/cloud.cfgで無効にできます。# 詳細については、https://www.alibabacloud.com/help/en/doc-detail/57803.htmを参照してください:
    #
    BOOTPROTO=dhcp
    デバイス=[$Eth]
    ONBOOT=はい
    STARTMODE=auto
    TYPE=イーサネット
    USERCTL=no
    次の条件に従って問題を処理します。
    • ローカルネットワークインターフェースコントローラは、非DHCP方法を使用してIPアドレスを取得する。 IPアドレスの取得方法を変更する理由をサーバ管理者に確認してください。 DHCPを使用してIPアドレスを取得する必要がない場合は、この記事をスキップしてください。
    • ローカルネットワークインターフェースコントローラは、DHCPを介してIPアドレスを取得します。次のステップで、ネットワークインターフェースコントローラ設定ファイル内のLinuxインスタンスが存在しないことを確認するには、上記のネットワークインターフェースコントローラ設定ファイルを参照してください。
  6. Linuxインスタンスでは、次のコマンドを実行し、dhclientプロセスの実行ステータスに対応するネットワークインターフェイスコントローラーを確認できます。
    ps aux | grep dhclient | grep [$Eth]
    次の条件に従って問題を処理します。
    • システムがネットワークインターフェイスコントローラに対応するdhclientプロセスを返す場合、ネットワークインターフェイスコントローラのDHCPサービスは正常です。
      説明

      : eth0ネットワークインターフェイスコントローラーを例にとると、サイトは実際の状況に左右されます。

    • 結果が返されない場合、dhclientプロセスは実行されていません。 続けて
  7. Linuxインスタンスでは、次のコマンドを実行できるように、dhclientプロセスの対応するネットワークインターフェイスコントローラーを再起動します。
    ifup [$Eth]
  8. 次のコマンドを再実行して、dhclientプロセス実行状態
    ps aux | grep dhclient | grep [$Eth]
    のネットワークインターフェイスコントローラーに対応することを確認します。

ドキュメント

適用対象

  • Elastic Compute Service