본문 바로가기
Linux/Linux

Linux) RHEL(CentOS) 7.x IP 설정

by LILO 2021. 4. 23.
반응형

VirtualBox Network Type 설정

 

Guest OS의 네트워크 Type을 정해야 되는데 많은 종류중에 Bridge를 선택해서 올리려고 합니다.

Bridge Network의 경우 Host가 쓰는 IP 대역대를 사용한다는 점을 미리 숙지하면 좋을 것 같습니다.

Bridge Network: 외부 통신 O, 내부 Guest OS 간 통신 O

 

 

Bridge Network의 IP 대역대 확인하는 방법

 

아까도 언급을 하였는데 현재 Host가 사용하고 있는 대역대를 사용하는 것이기 때문에 가장 간단한 방법은 cmd를 이용해서 알아내는 방법입니다.

 

 

 

위와 같이 "명령 프롬프트(cmd)" 터미널을 띄우고 "ipconfig"라는 명령을 입력해줍니다.

명령이 입력되면 현재 자신의 PC에 연결된 이더넷 관련 정보들이 깨끗하게 나열됩니다.

지금 Bridge Network를 설정할 것이기 때문에 이더넷 어댑터 이더넷 부분을 숙지하고 있으면 됩니다.

 

 

 

RHEL(CentOS) 7.x  IP 설정하기

 

리눅스에서 Network를 설정하는 작업을 하는 서비스 데몬은 크게 2가지가 있습니다.

결과부터 말하면 앞으로 "NetworkManager.service" 데몬은 사용하지 않을 것입니다.

현업에서 "network.service"를 사용하는 경우가 많기 때문입니다. 

 

○ Network 설정 서비스 데몬

- NetworkManager.service: 7버전부터 지원하는 데몬으로 명령은 "nmcli, nmtui"로 네트워크를 설정함
- network.service: 7버전 이전부터 사용해왔던 데몬으로 "/etc/sysconfig/network-scripts/"경로에서 네트워크 정보를 기입후 "ifup <인터페이스명>" 명령을 사용하거나 해당 데몬을 재활성화 하는 방법으로 네트워크를 설정함

 

리눅스 창에서 먼저 IP가 잡혀있는지 확인합니다. 

○ Network 상태 확인 명령어 

- ip a
- ifconfig

 

위의 명령말고도 다른 방법이 있을 것입니다. 보통 이 명령들을 많이 사용합니다.

 

 

1. lo(loopback) 인터페이스는 127.0.0.1로 잘 잡혀있는 모습입니다.

Loopback: 우리가 흔히 말하는 Localhost를 의미하고 외부와의 통신이 되지 않습니다.

 

설치하기 전에 VirtualBox에서 어댑터로 설정했던 Bridge Network는 IP를 보여주지 않습니다. 

일단 원인을 찾으러 "/etc/sysconfig/network-scripts/ifcfg-enp0s3"이라는 파일을 vi 에디터로 열어줍니다.

 

 

원인은 ONBOOT라는 옵션이 no로 되어있어서 아까 설치 완료하고 재부팅을 할떄 네트워크 정보가 안올라온 것이였습니다. ONBOOT를 yes로 바꿔줍니다.

 

그리고 지금 dhcp로 잡혀있어서 "network.service" 데몬을 재활성화하면 IP가 자동으로 잡힐 것입니다. 

절대로 dhcp를 이용해서 IP를 잡는 일은 없도록 해야합니다. DHCP 같은 경우는 IP 링크가 한번 해제되고 다시 위로 올라오면 IP가 바뀌어서 올라옵니다.

해당 인터페이스가 운영중에 내려갈 일이 없다는 것을 보장하지 못하기 때문에 Static으로 잡아줘야 됩니다.

 

 

 

위와 같은 형식으로 잡아주고 "network.service" 데몬을 재활성화 시켜주면 정상적으로 올라옵니다.

 

○ 서비스 데몬 재활성화 방법

- 6버전 이하: service <데몬 이름> restart
- 7버전 이상: systemctl restart <데몬 이름>

 

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

DEVICE=enp0s3                 (디바이스 이름)
NAME=enp0s3                  (인터페이스 이름)  --> 기입 안해도 정상적으로 돌아감
BOOTPROTO=none            (디바이스 프로토콜 타입)  --> "dhcp | none or static"
ONBOOT=yes                   (재부팅시 올라오게 할 것인지)
IPADDR=211.196.90.154      (IP주소)
NETMASK=255.255.255.0     (Prefix)
GATEWAY=211.196.90.254   (Gateway 주소)
NM_CONTROLLED=no        (네트워크 관리 도구 사용 여부)
#DNS1=8.8.8.8

 

위와 같이 설정하면 되는데 DNS 설정 부분이 빠진 것을 볼 수 있습니다. 

외부와의 통신이 필요할 경우 DNS1의 옵션을 넣어주거나 "/etc/resolv.conf"에 넣어주면 됩니다.

 

설정이 끝나면 재활성화시켜 줍니다.

(#systemctl restart network)

 

 

IP가 정상적으로 올라오는 것을 볼 수 있습니다.

 

 

 

절대 까먹으면 안되는 작업

 

리눅스를 처음 설치하고 나면 네트워크 설정 및 관리 데몬인 "NetworkManager.service"와 "network.service"는 기본적으로 Enable 상태이고 Active 상태로 올려져 있습니다.

 

해당 데몬들이 둘다 Active 상태이면 운영중에 충돌날 경우가 생기기 때문에 둘 중에 쓰지 않는 데몬은 내려야 됩니다.

위의 글은 "network.service"를 이용한 IP 설정이기 때문에 "NetworkManager.service"데몬을 정지시키고 Disable 시켜야됩니다. 

충돌이 나는 이유는?  두 서비스 데몬이 같은 역할을 하기 때문입니다.

 

○ 서비스 데몬 비활성화 방법


- 6버전 이하
# service <데몬 이름> stop
# chkconfig <데몬 이름> off

- 7버전 이상
# systemctl stop <데몬 이름>
# systemctl disable <데몬 이름>

- 7버전 이상
# systemctl disable --now <데몬 이름>

 

반응형

'Linux > Linux' 카테고리의 다른 글

Linux) 원격 툴 소개 (SSH 이용)  (0) 2021.04.23
Linux) RHEL(CentOS) Host name 변경  (0) 2021.04.23
Linux) RHEL 7.x (CentOS) 설치 On VirtualBox  (0) 2021.04.23
Linux) VM (VirtualBox) 설치  (0) 2021.04.23
Linux) Virtual Machine Network  (0) 2021.04.23