virtual box로 CentOS를 설치하고 호스트 전용 네트워크를 설정해주었는데도 yum install도 안되는 상황이 발생할 수 있다. 이는 인터페이스가 활성화가 안되어있을 가능성이 있다. 이번에는 이러한 문제를 해결할 수 있는 방법인 네트쿼크 인터페이스를 활성화하는 방법에 대하여 써보고자 한다.
네트워크 인터페이스 확인하기
$ ip addr
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
inet6 ::1/128 scope host
valid_lft forever preferred_lft forever
2: enp0s3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
link/ether 08:00:27:c6:c2:2f brd ff:ff:ff:ff:ff:ff
3: enp0s8: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
link/ether 08:00:27:c6:c2:2f brd ff:ff:ff:ff:ff:ffr
lo
, enp0s3
, enp0s8
이라는 세 가지의 인터페이스가 인식이 되어있는 것을 확인할 수 있다. 그러나 lo
를 제외하고는 ip주소가 할당이 되지 않아있는 모습을 확인할 수 있다.
네트워크 인터페이스 스크립트 수정
$ cd /etc/sysconfig/network-scripts # 네트워크 인터페이스 스크립트가 있는 디렉토리로 이동
$ ls /etc/sysconfig/network-scripts
ifcfg-enp0s3 ifdown-bnep ifdown-ppp ifup-TeamPort ifup-isdn ifup-sit
ifcfg-enp0s8 ifdown-eth ifdown-routes ifup-aliases ifup-plip ifup-tunnel
ifcfg-lo ifdown-ippp ifdown-sit ifup-bnep ifup-plusb ifup-wireless
ifdown ifdown-ipv6 ifdown-tunnel ifup-eth ifup-post init.ipv6-global
ifdown-Team ifdown-isdn ifup ifup-ippp ifup-ppp network-functions
ifdown-TeamPort ifdown-post ifup-Team ifup-ipv6 ifup-routes network-functions-ipv6
/etc/sysconfig/network-scripts
해당 디렉토리를 확인해보면 각종 인터페이스들에 대한 스크립트 파일들이 있는 것을 확인할 수 있다. 예를들어, 인터페이스 이름이 enp0s8
인 것에 대한 스크립트 파일은 ifcfg-enp0s8
이다. 만약, eth0
이었다면 ifcfg-eht0
이라는 파일이 존재할 것이다.
$ vi ifcfg-enp0s8
TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=dhcp
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
IPV6_ADDR_GEN_MODE=stable-privacy
NAME=enp0s8
UUID=e5693558-c885-40e2-872a-dd2d84d21c3e
DEVICE=enp0s8
ONBOOT=no
ifcfg-enp0s8
파일을 들여다보면 위의 내용과 같다. 우선, 네트워크를 활성화하기 위해서는 ONBOOT
옵션을 yes로 바꾸어주면 된다. 해당 옵션은 부팅 시에 해당 인터페이스를 UP할 것인지를 결정하는 옵션으로 yes
로 바꾸어주면 재실행시 해당 인터페이스를 활성화할 수 있다.
TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=dhcp
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
IPV6_ADDR_GEN_MODE=stable-privacy
NAME=enp0s8
UUID=e5693558-c885-40e2-872a-dd2d84d21c3e
DEVICE=enp0s8
ONBOOT=yes
BOOTROTO=dhcp
- 해당 옵션은 IP 할당 방식을
동적(dhcp)
혹은고정(static)
으로 설정할 수 있는 옵션으로 초기값은dhcp
로 되어있다.- 고정 IP를 사용하기 위해서는 IP주소, 서브넷마스크, 게이트웨이를 설정해주어야한다.
IPADDR=IPv4주소
BOOTROTO=static
일 경우 포함해야하는 옵션으로 고정 IP주소를 지정할 수 있다.- Ex)
IPADDR=192.168.0.101
NETMASK=IPv4서브넷마스크
- 서브넷 마스크를 지정하는 옵션
- Ex)
NETMASK=255.255.255.0
GATEWAY=gateway IPv4주소
- 게이트웨이를 지정하는 옵션이다.
- Ex)
GATEWAY=192.168.0.1
network 서비스 재시작
$ systemctl restart network
해당 명령어를 통해 network 서비스를 재시작해줌으로써 수정한 네트워크 인터페이스 스크립트가 적용되도록 한다.
$ ip addr
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
inet6 ::1/128 scope host
valid_lft forever preferred_lft forever
2: enp0s3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
link/ether 08:00:27:c6:c2:2f brd ff:ff:ff:ff:ff:ff
3: enp0s8: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
link/ether 08:00:27:af:cc:62 brd ff:ff:ff:ff:ff:ff
inet 192.168.56.105/24 brd 192.168.56.255 scope global noprefixroute dynamic enp0s8
valid_lft 593sec preferred_lft 593sec
inet6 fe80::9248:1080:be4e:6453/64 scope link noprefixroute
valid_lft forever preferred_lft forever
그리고나서 다시 $ ip addr
명령어를 통해 네트워크 인터페이스에 할당된 IP주소를 확인해보면 enp0s8
인터페이스에 192.168.56.105
라는 IP주소가 할당되어있는 것을 확인해볼 수 있다.
'Programming > Linux' 카테고리의 다른 글
[Linux] CentOS7 Hostname 변경 (0) | 2020.12.21 |
---|---|
[Linux] 사용자 및 권한 관련 명령어 (0) | 2020.07.10 |
[Linux] 리눅스 기본 명령어 다루기 (0) | 2020.07.07 |