RHEL 8 및 CentOS 8에서 네트워크 서비스 재시작 방법

Red Hat Enterprise Linux 8(RHEL 8) 및 CentOS 8에서는 이전 버전과 달리 네트워크 관리 방식이 크게 변경되었습니다. 대표적인 변화 중 하나는 기존의 network.service가 더 이상 기본 제공되지 않는다는 점입니다. 따라서 아래와 같은 명령어를 실행하면 오류가 발생합니다:

# systemctl restart network.service

출력되는 오류 메시지는 다음과 같습니다:

Failed to restart network.service: Unit network.service not found.

이 오류는 network.service 유닛이 시스템에 존재하지 않기 때문에 발생합니다. RHEL 8과 CentOS 8부터는 네트워크 관리를 위한 기본 도구로 NetworkManager(NM)가 채택되었으며, 모든 네트워크 설정은 NetworkManager 기반으로 수행되어야 합니다.

네트워크 인터페이스 확인

먼저 사용 중인 네트워크 인터페이스 이름을 확인해야 합니다. 일반적으로 ens33, enp0s3 등의 형식을 따릅니다. 다음 명령어로 인터페이스 목록을 조회할 수 있습니다:

# ip addr

NetworkManager 기반 네트워크 설정 방법

RHEL 8/CentOS 8에서는 주로 다음 세 가지 방법으로 네트워크를 구성할 수 있습니다.

방법 1: ifcfg 파일 수동 편집 후 NetworkManager로 적용

기존의 /etc/sysconfig/network-scripts/ifcfg-xxx 파일을 직접 수정한 후 NetworkManager에 다시 로드하는 방식입니다.

# vi /etc/sysconfig/network-scripts/ifcfg-ens33

예시 설정 내용:

TYPE=Ethernet
BOOTPROTO=static
NAME=ens33
DEVICE=ens33
ONBOOT=yes
IPADDR=192.168.1.100
NETMASK=255.255.255.0
GATEWAY=192.168.1.1
DNS1=8.8.8.8

설정 후에는 다음 명령어로 NetworkManager에 반영합니다:

# nmcli connection reload

변경 사항을 활성화하려면 해당 연결을 재시작합니다:

# nmcli connection up ens33

방법 2: nmcli 명령어로 직접 설정 관리

모든 네트워크 설정을 nmcli 명령어를 통해 수행할 수 있습니다.

  • 현재 연결 목록 확인:
  • # nmcli connection show
  • 특정 인터페이스 정보 보기:
  • # nmcli connection show ens33
  • IPv4 주소 설정 (수동):
  • # nmcli connection modify ens33 ipv4.addresses 192.168.1.100/24
  • 게이트웨이 설정:
  • # nmcli connection modify ens33 ipv4.gateway 192.168.1.1
  • DNS 서버 추가:
  • # nmcli connection modify ens33 ipv4.dns "8.8.8.8,1.1.1.1"
  • IP 할당 방식을 정적으로 변경:
  • # nmcli connection modify ens33 ipv4.method manual
  • 여러 설정을 한 번에 지정:
  • # nmcli connection modify ens33 ipv4.addresses 192.168.1.100/24 ipv4.gateway 192.168.1.1 ipv4.dns "8.8.8.8"
  • 변경 사항 적용:
  • # nmcli connection up ens33

방법 3: nmtui를 사용한 텍스트 기반 GUI 설정

명령어 사용에 익숙하지 않은 사용자는 텍스트 기반 그래픽 도구인 nmtui를 활용할 수 있습니다.

# nmtui

실행 후 인터페이스 선택, IP 설정, 게이트웨이 및 DNS 입력 등 직관적인 메뉴를 통해 네트워크를 구성할 수 있으며, 저장 후 자동으로 적용됩니다.

network-scripts 패키지 설치 (비추천)

이전 방식의 network.service를 사용하고 싶다면 network-scripts 패키지를 설치할 수는 있습니다:

# yum install network-scripts -y

그러나 Red Hat은 향후 버전에서 완전히 제거될 예정이라고 공지했으므로, 학습 및 운영 환경 모두에서 NetworkManager 기반 설정을 사용하는 것이 권장됩니다.

인터페이스 이름 변경 방법

인터페이스 이름을 변경하려면 다음 단계를 따릅니다.

  1. 기존 연결 삭제:
  2. # nmcli connection delete ens33
  3. GRUB 설정 파일 수정:
  4. # vi /etc/default/grub
  5. 커널 부팅 파라미터에 net.ifnames=0 biosdevname=0 추가:
  6. GRUB_CMDLINE_LINUX="... net.ifnames=0 biosdevname=0"
  7. GRUB 설정 갱신:
  8. # grub2-mkconfig -o /boot/grub2/grub.cfg
  9. 시스템 재부팅:
  10. # reboot
  11. 재부팅 후 새 이름으로 연결 추가:
  12. # nmcli connection add type ethernet con-name eth0 ifname eth0

태그: rhel8 CentOS8 nmcli networkmanager nmtui

7월 23일 04:02에 게시됨