2024.12.30
[Virtual Box] 고정IP 내에서 Virtual Box 네트워크 설정하기
Docker 컨테이너 구축 실습을 위해
윈도우 호스트OS 위에 VirtualBox를 실행시키고
리눅스 OS를 올리던 중, 네트워크 설정에 대한 이해가 필요하여 정리합니다.
1. 우리집 개인 네트워크 현황 우리집은 통신사에서 설치한 메인 공유기가 있고, 해당 공유기에 iptime 공유기를 이어서 내부망으로 활용하고 있다. 메인 공유기에서 DHCP를 할당 받지만 고정 IP를 설정하여 192.168.0.2 를 메인 PC에 연결하여 사용중에 있다.
2. Virtual Box 이미지 마운트
Virtual Box 자체의 설치는 다른 곳을 살펴봐도 친절히 설명되어 있기 때문에 생략.
구성할 메인 PC는 Windows OS이다. 호스트 OS를 Windows로 두고 Virtual Box를 구성하여 해당 Virtual Box 안에 Linux OS(CentOS 7.9)를 구성할 계획이다.
해당 링크에는 여러 iso 버전이 있으니 원하는 것으로 택한다. 필자는 컨테이너를 올릴 예정이기 때문에 minimal 선택.
Virtual Box를 실행하고 가상 머신 만들기로 다운로드 한 iso 파일을 대상으로 설정한다.
위와 같이 마운트 실패 경고가 뜰 수 있는데, 다운로드 한 iso 파일을 골라 마운트 후 재실행을 눌러주면 정상적으로 설치를 시작한다.
여느 OS 설치와 마찬가지로 GUI 환경이 뜨고 기타 설정등을 해주라고 하는데, 기본값으로 두고 설치를 진행한다.
3. CentOS repo 설정
모든 설치가 완료되면 이와 같이 로그인 유저 계정과 비밀번호를 기입하라고 뜬다.
첫 설정(이미지 마운트 시) 설정한 이름과 비밀번호로 접속한 후,
바로 도커를 설치해주자
뭔진 모르지만 엄청난 오류가 떴다.
“Could not resolve host: mirrorlist.centos.org; Unknown error”
해당 오류는 현재 CentOS에 기본적으로 패키지를 가져오는 repository가
서비스를 중단했기 때문에 기본 repository에 접속할 수 없다는 오류이다.
이미 CentOS 7 버전의 EOL은 2024년 6월 30일로 CentOS 7 버전에 대한 패키지를 제공받을 수 없다. 하지만 아주 없는 것이 아니라, repository 사이트를 제공해주고 있는 사이트로 바꿔주면 해당 CentOS 버전의 패키지를 제공 받을 수 있는 방법이 있다.
리눅스는 모두 파일 시스템으로 이루어져 있다. 때문에 해당 사이트를 설정해주고 있는 파일 설정을 변경해주면 된다. sed 명령어로 다음과 같이 입력한다.
위와 같이 변경해주면 기본 repository 사이트를 변경해주게 된다. 그리고 다시 yum install 을 통해 도커를 설치하면 된다.
고정IP를 사용하는 경우, 동일한 오류가 발생한다.
4. 가상머신 네트워크 설정 “공인IP > 공유기 > 고정IP 설정” 우리집은 이렇게 네트워크 구성이 되어 있고, 본래라면 공인IP를 바로 사용하여 해당 IP에서 DHCP를 부여받아 Virtual Box 내의 네트워크에서도 부여 받은 공인IP에서 내부 네트워크로 DHCP를 활용해야 한다.
실제로 Virtual Box 안에서는 DHCP를 부여 받은 상태이지만 실제 IP 주소가 어떤 것인지를 몰라 네트워크 구성에 오류가 생긴 것이다.
따라서 호스트OS와 포트포워딩을 통해 자신의 IP를 알려주면
네트워크 설정에 문제없이 진행할 수 있다.
(이해는 이렇게 하였지만 지식에 오류가 있을 수 있으니 오류 수정에 대한 피드백은 환영입니다.)
위 이미지와 같이 Virtual Box 의 가상 머신 설정 안에서
네트워크 세팅 > 포트포워딩 설정
이후 자신의 고정IP를 호스트IP로 넣고, SSH 포트포워딩 설정을 해준다.
가상 머신의 내부 네트워크는 10.0.2~ 를 기본적으로 사용하고 있으니
게스트IP 쪽에 해당 네트워크 주소를 넣어주면 된다.
22번 포트를 통해 SSH 포트포워딩을 하고 있지만 이렇게 함으로써 가상 머신의 내부 네트워크는 실제 어떤 것을 쓰고 있는지 알려주게 된다. 이 내부 네트워크 IP주소를 통해 외부와 통신하려 할 것이며, 이를 통해 인터넷 외부 접속이 되고 외부 repository 사이트에서 해당 패키지를 불러올 수 있게 된다.
이후 가상 머신으로 들어가 DHCP 활성화를 시켜주어야 한다. ip addr 명령어로 현재 부여되어 있는 네트워크 장치 이름을 파악한 후, dhclient “장치 이름” 을 입력하면 해당 장치에 DHCP 활성화를 시켜준다.
그리고 다시 ip addr 명령어를 기입하면
첫 번째 ip addr 에서는 보이지 않던 IP주소가
아래쪽 두 번째 ip addr 에서는 10.0.2.15 로 IP주소가 할당되었다.
그리고 다시 yum 명령어를 통해 도커를 설치해주면
정상적으로 설치됨을 확인할 수 있다.