GNU/Linux >> Linux の 問題 >  >> Cent OS

CentOS/RHEL 8 で IPv6 を無効にする方法

CentOS/RHEL 8 システムでは、デフォルトで IPv6 が有効になっています。ただし、特定の状況では、一部のユーザーは IPv6 サポートを無効にすることが望ましい場合があります。この投稿では、CentOS/RHEL 8 システムで ipv6 を無効にする手順について説明します。

NetworkManager を使用するシステムの場合

NetworkManager を実行するすべてのシステムでは、オプション ipv6.method を使用して、各インターフェースで IPv6 を無効にする必要があります。 無効に設定 .この手順は、次のセクションで示す方法を使用して IPv6 を無効にすることに加えて実行する必要があります。

# nmcli connection modify [Connection Name] ipv6.method "disabled"

方法 1:GRUB2 を使用する

1. ipv6 組み込みカーネル モジュールを無効にします。 /etc/default/grub を編集 ipv6.disable=1 を追加します GRUB_CMDLINE_LINUX へ 以下に示すように:

GRUB_CMDLINE_LINUX="rd.lvm.lv=rhel/swap crashkernel=auto rd.lvm.lv=rhel/root ipv6.disable=1"

2. grub2-mkconfig を実行します grub.cfg ファイルを再生成するコマンド:

# grub2-mkconfig -o /boot/grub2/grub.cfg

または、UEFI システムでは、次を実行します。

# grub2-mkconfig -o /boot/efi/EFI/redhat/grub.cfg

3. システムを再起動して、IPv6 サポートを無効にします。

# systemctl reboot

方法 2:sysctl を使用する

または、これは sysctl 設定を介して行うこともできます。 sshd_config に AddressFamily inet が含まれていない限り、これにより SSH Xforwarding が中断されることに注意してください。

1. /etc/sysctl.d/ipv6.conf という名前の新しいファイルを作成します 次のオプションを追加します:

# vi /etc/sysctl.d/ipv6.conf
# First, disable for all interfaces
net.ipv6.conf.all.disable_ipv6 = 1
# If using the sysctl method, the protocol must be disabled all specific interfaces as well. 
net.ipv6.conf..disable_ipv6 = 1

2. 次に、新しい設定を再読み込みする必要があります:

# sysctl -p /etc/sysctl.d/ipv6.conf

3. 変更を加える前に、initramfs のバックアップを作成します。

# cp /boot/initramfs-$(uname -r).img /boot/initramfs-$(uname -r).bak.$(date +%m-%d-%H%M%S).img

4. 次に、以下を使用して初期 RAM ディスク イメージを再構築します。

# dracut -f -v

5. ファイルのインクルードの確認:

# lsinitrd /boot/initramfs-[version].img  | grep 'etc/sysctl.d/ipv6.conf'

6. ::1 localhost アドレスを含む、/etc/hosts にあるすべての IPv6 アドレスをコメントアウトします。変更を行う前に、ファイルのバックアップを作成してください:

# cp -p /etc/hosts /etc/hosts.disableipv6
# sed -i 's/^[[:space:]]*::/#::/' /etc/hosts

確認

1. ipv6 モジュール無効化オプションの現在の状態は、sysfs 経由で確認できます:

# cat /sys/module/ipv6/parameters/disable
1

2. sysctl disable_ipv6 の現在の状態は、sysctl コマンドで確認できます:

# sysctl -a 2>/dev/null | grep disable_ipv6
net.ipv6.conf.all.disable_ipv6 = 1
net.ipv6.conf.default.disable_ipv6 = 0
net.ipv6.conf.eth0.disable_ipv6 = 0

3. システムに割り当てられた IPv6 アドレスを一覧表示するには:

# ip -6 addr

4. IPv6 TCP または UDP ソケットを一覧表示するには、次のようなものを使用できます:

# ss -6 -pan

結論

場合によっては、方法 1 (GRUB2) を使用しているときに、audit.log ファイルに avc:denied { module_request } などの Selinux 拒否メッセージが表示される場合は、次のように /etc/sysctl.d/ipv6.conf ファイルから ipv6 を無効にします。方法 2. オプションで、ipv6 を無効にした後に rpc* メッセージが出力されないようにするには、/etc/netconfig を編集します。 udp6 および tcp6 で始まる行の場合。 3 列目の「v」を「-」(ハイフン/ダッシュ) に変更します。

CentOS/RHEL 8 で IPv6 を有効にする方法


Cent OS
  1. CentOS / RHEL 7 で NetworkManager を無効にする方法

  2. CentOS / RHEL 7 で IPv6 を有効にする方法

  3. CentOS / RHEL 5 で IPv6 を無効にする方法

  1. CentOS / RHEL 5 で IPv6 を有効にする方法

  2. CentOS/RHEL で lvmetad を無効にする方法

  3. CentOS/RHEL 8 で IPv6 を有効にする方法

  1. CentOS / RHEL 7 で IPv6 を無効にする方法

  2. CentOS/RHEL 7 で ACPI を無効にする方法

  3. CentOS / RHEL 6:telnet サービスを無効にする方法