Openstack 서버 재 구축 후 외부 Ping 문제
환경은
NIC1 외부망 IP 61.xx.xx.xx, 내부 망 10.8.0.1
NIC2 내부망 172.xx.xx.x을 사용 하여
Openstack(NIC2 172.xx.xx.x) 서버를 구축되었고 NIC1외부망에 Openvpn 서버를 설정하여 외부에서 클라이언트가 접근 가능하도록 VPN 망을 구성 하였다.
설치 및 환경이 완료 되었고 Openstack 서버에서 리소스 생성 및 VM 생성 테스트 까지 진행 하였다.
테스트가 끝나고 Jenkins 및 SCM 서버를 설치 중 Jenkins 서버에서 WEB Plugin이 다운로드 안되는 현상이 발견 되었다.
Jenkins 서버에 ssh 접속 하여 ping을 확인 한 결과 내부 끼리 통신은 되는데 외부 끼리 통신이 안된다는 문제점이 발견 되었다.
VPN 서버는 접속이 되었지만 내부 VM에서 외부로 ping이 나가려고 하면
10.8.0.1 아이피에 대하여 iptable 및 port forwarding이 필요한 것 같다.
설정 방법은
# tunneling
$ iptables -I FORWARD 1 --source 10.8.0.0/24 -j ACCEPT
$ iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -j MASQUERADE
# port forwarding
$ sudo iptables -t nat -A POSTROUTING -o em2 -j MASQUERADE
$ sudo iptables -A FORWARD -i em2 -o em3 -m state --state RELATED,ESTABLISHED -j ACCEPT
$ sudo iptables -A FORWARD -i em3 -o em2 -j ACCEPT
을 실행 시켜 VM 내부에서 ping이 외부로 나가 도록 구성 하였다.