리눅스

Total 331
Today 0
profile_image
슈퍼아이피
18-07-18 09:50 0개 31회
TIP
CentOS 7 에서 네트워크 인터페이스 이름 바꾸기
?CentOS 7 은 많은 변화가 있었지만 그중 하나가 네트워크 인터페이스 이름 입니다.

지금까지 네트워크 인터페이스 이름은 eth0, eth1 식으로 고정되어 있었습니다. 하지만 CentOS 7 부터는 바이오스 장치 이름을 조합해서 생성됩니다. 다시 말해서 각 서버마다 네트워크 인터페이스 카드가 모두 동일하다고 할지라도 CentOS 7 에서의 네트워크 인터페이스 이름은 모두 다를 수가 있다는 겁니다.

이 문서는 CentOS 7 에서 네트워크 인터페이스 이름 바꾸기 에 대한 것입니다.

1. 상태확인

CentOS 7 에서의 네트워크 인터페이스 이름은 다음과 같습니다.


]# ifconfig
enp0s3: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.0.105  netmask 255.255.255.0  broadcast 192.168.0.255
        inet6 fe80::a00:27ff:fe97:3935  prefixlen 64  scopeid 0x20<link>
        ether 08:00:27:97:39:35  txqueuelen 1000  (Ethernet)
        RX packets 37862  bytes 29870696 (28.4 MiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 6939  bytes 513516 (501.4 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

enp0s3 으로 나옵니다. 네트워크 인터페이스 설정 파일도 이름과 동일하게 생성 됩니다.

]# ls -lh /etc/sysconfig/network-scripts/ifcfg-enp0s3
-rw-r--r--. 1 root root 321  9 22 13:50 /etc/sysconfig/network-scripts/ifcfg-enp0s3

2. eth0 로 바꾸기

바꾸는 방법은 grub 에서 바이오스장치이름을 네트워크 인터페이스 이름으로 사용하지 않겠다고 선언하는 것입니다. 커널이 업그레이드되면 grub 에 파라메터값을 다시 해줘야 하는 불편함을 없애기위해서 grub 의 기본설정을 변경해 줍니다.


]# vim /etc/default/grub
GRUB_TIMEOUT=5
GRUB_DISTRIBUTOR="$(sed 's, release .*$,,g' /etc/system-release)"
GRUB_DEFAULT=saved
GRUB_DISABLE_SUBMENU=true
GRUB_TERMINAL_OUTPUT="console"
GRUB_CMDLINE_LINUX="vconsole.font=latarcyrheb-sun16 vconsole.keymap=ko crashkernel=auto  rhgb quiet net.ifnames=0 biosdevname=0"
GRUB_DISABLE_RECOVERY="true"

핵심은 ‘GRUB_CMDLINE_LINUX’ 에 ‘net.ifnames=0 biosdevname=0’ 를 추가하는 것입니다. 그리고 다음과 같이 grub2 를 다시 만들어 줍니다.













grub2-mkconfig -o /boot/grub2/grub.cfg
Generating grub configuration file ...
Found linux image: /boot/vmlinuz-3.10.0-123.el7.x86_64
Found initrd image: /boot/initramfs-3.10.0-123.el7.x86_64.img
Found linux image: /boot/vmlinuz-3.10.0-123.9.3.el7.x86_64
Found initrd image: /boot/initramfs-3.10.0-123.9.3.el7.x86_64.img
Found linux image: /boot/vmlinuz-3.10.0-123.8.1.el7.x86_64
Found initrd image: /boot/initramfs-3.10.0-123.8.1.el7.x86_64.img
Found linux image: /boot/vmlinuz-3.10.0-123.6.3.el7.x86_64
Found initrd image: /boot/initramfs-3.10.0-123.6.3.el7.x86_64.img
Found linux image: /boot/vmlinuz-0-rescue-babecd961e9a465686311e3f5930f25e
Found initrd image: /boot/initramfs-0-rescue-babecd961e9a465686311e3f5930f25e.img
done

이제 네트워크 인터페이스 파일을 다음과 같이 바꿔 줍니다.


]# cd /etc/sysconfig/network-scripts/
[root@localhost network-scripts]# mv ifcfg-enp0s3 ifcfg-eth0
?
이제 재부팅을 하면 네트워크 인터페이스 이름이 eth0 로 올라온것을 볼 수 있습니다.

댓글목록

등록된 댓글이 없습니다.