DATA 전문가로 가는 길

[Unix/Linux] VMware Network [NAT - ssh, winscp 사용 방법] 본문

OS/Fundamental

[Unix/Linux] VMware Network [NAT - ssh, winscp 사용 방법]

EstenPark 2010. 12. 3. 02:24
작성자 : 박상수
작성일자 : 2010.12.03
작업환경 : VMware7
참고자료 : aero, http://kldp.org/node/907


1. 네트워크 설정 설명

[설명]

VMware에서 네트웍을 사용할때 host-only, bridged, NAT 방식이 있다.
host-only는 VMware가 깔리는 머신과 가상머신사이에만 통하는 네트웍이고
bridge는 VMware가상머신이 VMware host머신과 같은 네트웍상에서 똑같이
real ip상에서 동작하도록 하는것이며
NAT방식은 VMware가 자체적으로 내부네트웍대역을 할당하고 자체 DHCP서버도
띄워서 NAT기능을 지원하는것이다.

VMware는 안쓰는 NAT대역을 자동으로 할당하는데
만약 192.168.19.* 식으로 NAT 대역이 할당되면
192.168.19.1 은 host머신의 ip가 되고
192.168.19.2는 가상머신에서 gateway,DNS로 설정되며
192.168.19.3~127 까지는 수동으로 설정하는 ip대역이되며
192.168.19.128~254 는 VMware의 자체 DHCP가 자동으로 할당하는 대역이다.
DHCP를 쓰려면 가상머신에서 DHCP로 설정하면 자동으로 ip와 gateway,DNS정보를
받아서 설정되고, 수동으로 아이피를 설정한다면 gateway,DNS를 192.168.19.2로
수동으로 설정해줘야한다. 그렇지 않으면 외부인터넷을 쓸수 없게 된다.

LINUX가 가상머신이라면 (Redhat 기준)
/etc/sysconfig/network에

NETWORKING=yes
HOSTNAME=localhost.localdomain
GATEWAY=192.168.19.2 
GATEWAYDEV=eth0

위처럼 GATEWAY를 192.168.19.2 로 설정해야 된다.

그리고 /etc/resolv.conf 에는
nameserver 192.168.19.2
처럼 DNS도 192.168.19.2 로 설정해야된다.

그리고 NAT환경에서는 가상머신에서 돌리는 http,ftp등의 서비스는 
외부 인터넷에서 접속하지 못하는데 vmware의 NAT은 port 포워딩을
통해 가상머신의 서비스에 접속할 수 있도록 해준다.
호스트 머신이 windows라면 c:\winnt\system32\vmnetnat.conf 파일에서

[incomingtcp]
8888 = 192.168.19.129:80
[incomingudp]
6000 = 192.168.19.129:6001

출처 : http://kldp.org/node/907

이런식으로 host머신의 8888로 들어오는 요청은 가상머신의 80번 으로 포워딩하고
6000으로 들어오는 요청은 6001으로 포워딩하게 한다.
만약에 가상머신 80에 web서비스가 돌아간다면 host머신의 ip의 8888포트로 접근하면
가상머신의 web서비스를 이용할 수 있는것이다.



2. 네트워크 NAT 설정 후 테스트

[설명] VMware에서 네트워크를 설정하는 부분에서 정말 많은 시간을 소요 했습니다. 이 글을 읽는 여러분들은 저와 같은 실수를 하지 않길 바라며 글을 시작 하겠습니다.
우선 가산머신의 네트워크를 NAT로 설정 합니다.


[설명] 현재 자신의 IP를 확인 합니다.
ex) ipconfig /all
지금 부터 저는 내 자신의 IP를 183.100.100.100 이라고 가정 하겠습니다.


[설명] Virtual Network Editor 프로그램을 실행 합니다.
"C:\Program Files\VMware\VMware Workstation\vmnetcfg.exe"
아래와 같이 VMnet8을 선택 -> NAT Settings... 클릭 합니다.


[설명] Virtual Network Editor 프로그램을 이용하여 포트 포워딩 작업을 시작 합니다.
localhost:10022 를 수행 할 경우 192.168.174.5.22로 접속, 게이트웨이
183.100.100.100:10022를 수행 할 경우 192.168.174.5.22로 접속, 183.100.100.100


[설명] Virtual Network Editor 프로그램에서 Map Incoming Port를 설정하게 되면 내 아이피의 10022번 포트가 TCP 프로토콜을 이용하여 가상머신의 서버의 22번 포트로 연결 하게 됩니다.


[설명] 국민 터미널 PuTTY를 이용해서 183.100.100.100으로 접속 했을 경우와 Localhost로 접속 했을 경우 서로 어떤 차이점이 있는지 반드시 알아야 합니다.
왜냐면 localhost로 ssh 연결이 되지만 scp는 root@ip로 세팅 되기 때문에 아주 사소한 접속 장애가 발생 됩니다.



[설명] 파일 전송을 하기 위해서 WinSCP를 이용하도록 하겠습니다. 우선 localhost:10022를 이용해서 접근시도를 하면 허용하지 않는 네트워크라고 나옵니다. 이유는 포트를 통해서 접근은 정상적인 범위로 접근 하지 않아서 그렇습니다.



[설명] WinSCP를 이용해서 현재 사용하고 있는 IP를 적어보겠습니다.


[설명] WinSCP가 가상머신의 OS에 정상적으로 접근 한 것을 보실 수 있을 겁니다. 여기서 중요한 것은 현재 자신이 사용하고 있는 IP를 사용해야 합니다.






Comments