새로운 rule 파일을 생성하기

vi /etc/udev/rules.d/70-persistent-net.rules

#이후 :wq 명령어로 저장한다.

“vi ” 명령어를 통해 /etc/udev/rules.d/ 경로에 70-persistent-net.rules파일을 생성한다.
( 또는 “touch” 명령어로 빈 파일을 생성해도 된다. )

 

※  여기서의 rules file은 시스템 부팅시 Udev가 사용하는 규칙 파일 중 하나로, 이 파일은 네트워크 인터페이스의 식별자 (MAC 주소)와 해당 인테페이스의 이름을 매핑하는데 사용한다.

  •  MAC주소 : (Media Access Control address) 의 약자로 네트워크 인터페이스 할당된 고유 식별자이다.

 

vi /etc/udev/rules.d/70-persistent-net.rules

“vi”명령어를 통해 생성한 rule 파일에 아래 내용을 입력한다.
아래 내용을 입력하고 ATTR(address) 부분에는 MAC 주소를 입력해주고 NAME 에는 변경하고자 하는 네트워크 인터페이스 명을 입력해준다.

SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="xx:yy:xx:yy:xx:yy", NAME="XXX"
<예시>

SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="08:00:27:54:10:f0:", NAME="eth1"

ATTR(address)의 MAC 주소 는 “ifconfig” 명령어를 사용하여 ether 부분을 통해 확인한다.

 

ifconfig의 출력값 예시

 

grub 설정 파일 수정

vi /etc/default/grub

“vi ” 명령어를 통해 파일 내용을 수정하여 GRUB_CMDLINE_LINUX 라인 뒤에 net.ifnames=0 biosdevname=0 내용을 추가한다.

 

※  GRUB :  (GRand Unified Bootloader)의 약어로 멀티부트로더 중의 하나 이다.
부트로더(Bootloader)는 PC를 켰을 때, 가장 먼저 실행되고 리눅스 OS의 커널을 로드하고 파라미터를 커널에게 넘겨주는 등 부팅 전반에 걸친 작업들을 진행한다. 간단하게 설명하자면 리눅스가 부팅되기 까지의 부팅의 전과정을 진행하는 부팅전문프로그램을 의미한다.

GRUB_CMDLINE_LINUX="crashkernel=auto rd.lvm.lv=centos/root rd.lvm.lv=centos/swap rhgb quiet net.ifnames=0 biosdevname=0"

“net.ifnames=0”는 Linux 시스템에서 사용되는 네트워크 인터페이스 명칭을 결정하는 Predictable Network Interface Names를 비활성화하는 옵션이다.
기본적으로, systemd에서는 네트워크 인터페이스를 부팅 시에 근거하여 예측 가능한 명칭으로 할당하는데, 이를 Predictable Network Interface Names라고 한다.

“biosdevname=0” 은 BIOS-derived Device Names 비활성화하는 옵션이다.
BIOS에서 파생된 디바이스 이름을 사용하지 않도록 설정하고, 이를 통해 물리적인 위치나 특성과 상관없이 사용자가 지정한 임의의 값 또는 예측 가능한 값으로 이름을 설정하도록 한다.

 

  • 예측 가능한 명칭이란 네트워크 인터페이스에 물리적인 위치나 특성을 알 수 있는 인터페이스 명이다.
    예를 들어, `enp0s3`과 같은 형태의 네트워크 인터페이스 명은 “ethernet”, “bus slot 0”, “port 3″의 약어이다.

 

Network-scripts 인터페이스 설정

vi /etc/sysconfig/network-scripts/ifcfg-XXX

“vi ” 명령어를 통해 ifcfg 인터페이스 파일을 수정한다.

NAME=(원하는이름)
DEVICE=(원하는이름)

원하는 이름으로 변경해주고 ifcfg-XXX의 파일명도 변경하고자 하는 인터페이스 명으로 변경해준다.

mv /etc/sysconfig/network-scripts/ifcfg-XXX /etc/sysconfig/network-scripts/ifcfg-(원하는이름)

grub 리빌드

변경된 설정을 적용하기 위해 아래의 작업을 실행한다.

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

작업이 끝이나면 “done” 이라는 메세지가 출력되었는지 확인한다.

 

 

재부팅

reboot
shutdown -r now

“reboot” 또는 “shutdown -r” 명령어를 통해 리눅스를 다시 시작하고 인터페이스가 변경되었는지 확인한다.