프로그래밍/VirtualMachine

virtualbox guest을 위한 포트포워딩 설정

Chaed 2017. 1. 18. 22:04

게스트의 인터넷은 이미 연결되어 있다는 가정하에 웹서버나 ftp등을 위한 설정을 하는 방법입니다.


맨날 포트 설정 할 때마다 몇 시간은 잡아먹는것 같네요.

이제 좀 그만 헛짓 했으면.


리눅스 host : windows10 / guest:linux(cent os 6.7) / 공유기 설정 환경 기준



1. 가상환경 설정(포트포워딩 및 어댑터 설정)

저는 virtualbox를 쓰고 있습니다. 무료로 쓰기 적당하죠

사실 네트워킹에 대한 정확한 이해가 없어서 설명이 정확하게 될진 모르겠지만.

참고로 공유기를 사용중인 분은 이 설정이 필요 없습니다. 공유기를 사용중이시면 2번으로. 적어도 제 피시에서의 실험에선 그렇더군요. ㅡㅡ;;






우선 가상머신에서 해당 운영체제의 설정에서 네트워크설정을 해줘야합니다. NAT은 guest가 외부 인터넷과 연결을 하기 위한 모드(?)입니다. 







포트포워딩 설정을 해주어야 합니다. 포트포워딩 개념이 궁금하시면 검색하셔서 별도로 찾아보세요. 


간단히 설명해서 특정 프로그램의 네트워킹을 위해 사용하는 포트(문)을 외부와의 접근을 허용하게 하는 설정이라 생각하시면 됩니다.


ftp포트, 웹서버, 원격을 위한 포트들이 보이네요.


호스트IP는 자신의 공인IP를 입력하시면 됩니다. 사설 IP입력 하시면 아마 안될겁니다. (정확하지 않습니다.. ㅜ)


게스트IP는 리눅스상에 할당된 IP를 입력하시면 됩니다.





리눅스의 터미널에서 ifconfig를 입력하시면 ip를 알 수 있습니다.


현재 가상환경 설정상 어댑터를 두개를 추가했기때문에 eth0,1 두개가 나옵니다. 1은 NAT이고 2는 브릿지 어댑터입니다.


사설IP가 할당된 eth1의 ip가 게스트 ip입니다.






위에서 어댑터가 두개라고 언급하였는데 이 설정에서 이를 확인할 수 있습니다.


브리지 어댑터로만 설정하신다음에 이름에서 현재 PC에 장착된 랜카드를 선택하시면 됩니다.


혹시 하마치같은 다른 가상으로 생성된 랜카드등과 혼돈하시면 안됩니다. ㅋ


브리지어댑터는 게스트가 외부와 인터넷 연결 하기 위한 설정입니다.


사실 대학교 기숙사에선 호스트 전용 어댑터로 잘 사용했는데 


집에서 다시 해볼려니 이렇게 해야 되더군요 ;;


책으로나 강의때도 호스트 전용 어댑터로 배웠는데 이유를 모르겠습니다.


혹시 아시는분은 댓글 부탁드리겠습니다.





2. 공유기설정 (포트포워딩)


역시 공유기를 쓰지 않으신분이라면 1번 설정 후 건너 뛰시면 됩니다.


보통 공유기는 iptime이나 각 통신사에서 제공하는 공유기가 보급되어 있을텐데요


공유기에 접근하는 방법은 아마 공유기마다 방법이 조금씩 다르니 이는 


직접 찾아보시기 바랍니다.


iptime기준으로는 192.168.0.1로 브라우져에서 들어가시면 아래와 같은 사진을 볼 수 있습니다.





88이 게스트의 Ip입니다 94는 호스트아이피입니다. 다시말해 공유기에서 이렇게 자동으로 부여한것이지요.


게스트에서 사용할 서버나 어플리케이션등에서 설정한 포트를 여기에 입력하시면 됩니다.


게스트와 호스트에서 사용할 포트가 겹치면 안됩니다.



3. 게스트 방화벽 설정



리눅스에서 방화벽 설정을 위한 화면입니다.


cent os6기준으로 /etc/sysconfig/iptables에서 다음과 같이 포트를 열 수 있습니다.


리눅스의 버전과 진영마다 설정방법이 상이하니 이는 별도로 확인바랍니다.



설정 끝입니다. 


컴퓨터라는게 운영체제, 버전, 환경등에 따라 원가 변수가 많아서 안될수도 있으니 너무 좌절들 마시길... ㅎㅎ