알고 싶은 점
•
client VM에서 webserv VM의 웹 서버 접속
◦
시나리오
▪
VMware에 client VM과 webserv VM 존재
▪
webserv에서 httpd를 통해서 웹 서버 열고 client에서 접속
▪
각 VM은 NAT 설정
실습
1. NAT 설정
•
NAT 클릭해도 되지만 Custom에서 VMnet8이 더 확실함. 간혹 버그가 있다함
2. webserv VM
•
아파치 서버 다운
yum -y install httpd
Bash
복사
•
아파치 서버 실행 후 활성화 확인
systemctl restart httpd
systemctl status httpd | grep -i active
Bash
복사
•
방화벽 해제
3. client VM
•
webserv VM 웹 서버 접속
curl <webserv VM IP>
Bash
복사
어려웠던 점
1. NAT 설정인데 왜 호스트에서 VM 접속이 가능?
문제사항
•
webserv VM에서 뿌리고 있는 웹을 호스트(노트북)에서 웹 브라우저에 webserv VM IP주소를 검색하면 접속이 되는 상황이 이해불가
•
NAT 설정이 되어 있는데 외부에서 어떻게 webserv의 IP를 알고 webserv의 IP(사설IP)로 접속했는데 접속이 가능한건지 이해불가
정리사항
•
VMware는 Host-Connection을 위한 x.x.x.1이 항상 있음
→ 호스트에서 VM으로 단방향으로 접근 가능
•
호스트가 웹 접속/ping을 보낼때 패킷이 보내지는 경로와 VM이 노트북 방향으로 ping을 보낼때 패킷이 보내지는 경로가 다름
호스트 → VM은 x.x.x.1
VM → 호스트는 x.x.x.2 (NAT, Router, Gateway)
→ 따라서, 호스트가 VM이 NAT 설정이 되어 있음에도 내부로 들어올 수 있는 이유는 VMware에서 호스트를 위해 만들어둔 Host-Connection 덕분이다(x.x.x.1)
2. 방화벽 해제
systemctl disable --now firewalld
Python
복사
•
방화벽을 해제하지 않아 80포트가 열려있지 않아서 통신이 되지 않음
•
명령어를 통해서 방화벽을 해제해줘야함
성과
•
VM에서 말하는 NAT설정이 호스트와 어떤 식으로 연결이 되어 있고, VM과 호스트 사이의 네트워크 구성을 그림으로 표현할 수 있고 알 수 있음
•
웹 서버와 클라이언트가 통신이 되지 않을때의 문제점에 대해서 포트문제, 방화벽 문제, 네트워크 설정 문제, 서비스 정상 적용 문제에 대해서 생각해보고 해결할 수 있음
•
웹 서버를 구성하고 외부에서 접속하게 할 수 있음