Red Hat Training

A Red Hat training course is available for RHEL 8

43.2. dhclient の終了フックを実行する NetworkManager の dispatcher スクリプトの作成

本セクションでは、IPv4 アドレスが DHCP サーバーから割り当てられるか、または更新する時に、/etc/dhcp/dhclient-exit-hooks.d/ ディレクトリーに保存されている dhclient 終了フックを実行する NetworkManager の dispatcher スクリプトを記述する方法を説明します。

前提条件

  • dhclient 終了フックは、/etc/dhcp/dhclient-exit-hooks.d/ ディレクトリーに保存されます。

手順

  1. 以下の内容で /etc/NetworkManager/dispatcher.d/12-dhclient-down ファイルを作成します。

    #!/bin/bash
    # Run dhclient.exit-hooks.d scripts
    
    if [ -n "$DHCP4_DHCP_LEASE_TIME" ] ; then
      if [ "$2" = "dhcp4-change" ] || [ "$2" = "up" ] ; then
        if [ -d /etc/dhcp/dhclient-exit-hooks.d ] ; then
          for f in /etc/dhcp/dhclient-exit-hooks.d/*.sh ; do
            if [ -x "${f}" ]; then
              . "${f}"
            fi
          done
        fi
      fi
    fi
  2. root ユーザーをファイルの所有者として設定します。

    # chown root:root /etc/NetworkManager/dispatcher.d/12-dhclient-down
  3. root ユーザーのみが実行できるようにパーミッションを設定します。

    # chmod 0700 /etc/NetworkManager/dispatcher.d/12-dhclient-down
  4. SELinux コンテキストを復元します。

    # restorecon /etc/NetworkManager/dispatcher.d/12-dhclient-down

関連情報

  • man ページの NetworkManager(8)Dispatcher scripts セクション。