Conoha와 앱 클라우드를 OpenVPN을 사용하여 site-to-site 연결

목적:



conoha의 폐쇄 VM과 앱 클라우드의 폐쇄 VM을 VPN을 통해 소통 확인

앱 클라우드는 VM이 ​​모두 로드 밸런서 아래에 존재하지만,
openvpn에서 깔끔하게 연결할 수있었습니다.

구성도:





매개변수: IP 주소



Conoha:



로컬 네트워크: 10.0.0.0/24
글로벌 IP 네트워크: 203.0.113.0/24
VPN VM eth0: 203.0.113.100
VPN VM eth1: 10.0.0.1
닫힌 VM eth1: 10.0.0.2

앱 클라우드:



로드 밸런서 연결 네트워크: 10.110.1.0/24
폐쇄 네트워크: 10.110.2.0/24
로드 밸런서 VIP : 198.51.100.10
로드 밸런서 NAT IP: 198.51.100.5
VPN VM eth0: 10.110.1.11
VPN VM eth1: 10.110.2.11
닫힌 VM eth1: 10.110.2.100

Companne 작업



앱 플라우드 - 로드 밸런서 설정



Companne에서 다음 BIND를 만듭니다.
PORT: UDP
BIND: 198.51.100.10:21001 <-->10.110.1.11:21001

Conoha - 로컬 네트워크 생성



로컬 네트워크를 만들고 VPN VM과 닫힌 VM에 연결합니다.

OS 설정 및 작업



앱 클라우드 측 - VPN용 VM 작업



패키지 설치


yum -y install openvpn.x86_64

키 만들기


openvpn --genkey --secret /etc/openvpn/vpn.key

키를 conoha vm에 복사


scp /etc/openvpn/vpn.key [email protected]:/etc/openvpn/

설정 파일 작성


/etc/openvpn/server.conf
port 21001
proto udp
dev tun
remote 203.0.113.100
local 10.110.1.11
float
ifconfig 10.0.8.1 10.0.8.2
persist-tun
persist-local-ip
comp-lzo
secret /etc/openvpn/vpn.key
route 10.0.0.0 255.255.255.0
user nobody
group nobody
verb 1
keepalive 10 60

라우터에 대한 패킷 전달 설정


vim /etc/sysctl.conf
変更:
net.ipv4.ip_forward = 1
追加:
net.core.xfrm_larval_drop = 1
net.ipv4.conf.all.send_redirects = 0
net.ipv4.conf.default.send_redirects = 0
net.ipv4.conf.eth0.send_redirects = 0
net.ipv4.conf.eth1.send_redirects = 0
net.ipv4.conf.lo.send_redirects = 0
net.ipv4.conf.all.accept_redirects = 0
net.ipv4.conf.default.accept_redirects = 0
net.ipv4.conf.eth0.accept_redirects = 0
net.ipv4.conf.eth1.accept_redirects = 0
net.ipv4.conf.lo.accept_redirects = 0
net.ipv4.conf.all.rp_filter = 0
net.ipv4.conf.default.rp_filter = 0
net.ipv4.conf.eth0.rp_filter = 0
net.ipv4.conf.lo.rp_filter = 0
sysctl -p

서비스 재시작



/etc/init.d/openvpn restart

인터페이스 확인


tun0 Link encap:UNSPEC HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00
inet addr:10.0.8.1 P-t-P:10.0.8.2 Mask:255.255.255.255
UP POINTOPOINT RUNNING NOARP MULTICAST MTU:1500 Metric:1
RX packets:3195 errors:0 dropped:0 overruns:0 frame:0
TX packets:3194 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:100
RX bytes:268380 (262.0 KiB) TX bytes:268296 (262.0 KiB)

conoha 측 - VPN 용 VM 작업



패키지 설치


yum -y install openvpn.x86_64

설정 파일 작성



/etc/openvpn/server.conf
port 21001
proto udp
dev tun
remote 198.41.100.10
local  203.0.113.100
float
ifconfig 10.0.8.2 10.0.8.1
persist-tun
persist-local-ip
comp-lzo
secret /etc/openvpn/vpn.key
route 10.110.2.0 255.255.255.0
user nobody
group nobody
verb 1
keepalive 10 60

라우터에 대한 패킷 전달 설정


vim /etc/sysctl.conf
変更:
net.ipv4.ip_forward = 1
追加:
net.core.xfrm_larval_drop = 1
net.ipv4.conf.all.send_redirects = 0
net.ipv4.conf.default.send_redirects = 0
net.ipv4.conf.eth0.send_redirects = 0
net.ipv4.conf.eth1.send_redirects = 0
net.ipv4.conf.lo.send_redirects = 0
net.ipv4.conf.all.accept_redirects = 0
net.ipv4.conf.default.accept_redirects = 0
net.ipv4.conf.eth0.accept_redirects = 0
net.ipv4.conf.eth1.accept_redirects = 0
net.ipv4.conf.lo.accept_redirects = 0
net.ipv4.conf.all.rp_filter = 0
net.ipv4.conf.default.rp_filter = 0
net.ipv4.conf.eth0.rp_filter = 0
net.ipv4.conf.lo.rp_filter = 0

반영:


sysctl -p

서비스 재시작


/etc/init.d/openvpn restart

인터페이스 확인


tun0 Link encap:UNSPEC HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00
inet addr:10.0.8.2 P-t-P:10.0.8.1 Mask:255.255.255.255
UP POINTOPOINT RUNNING NOARP MULTICAST MTU:1500 Metric:1
RX packets:3062 errors:0 dropped:0 overruns:0 frame:0
TX packets:3066 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:100
RX bytes:257208 (251.1 KiB) TX bytes:257544 (251.5 KiB)

라우팅 추가



앱 클라우드 측 - 폐쇄 VM 작업


route add -net 10.0.0.0/24 gw 10.110.2.1 eth1

Conoha 측 - 폐쇄 VM 작업


route add -net 10.110.2.0/24 gw 10.0.0.1 eth1

소통 확인



앱 클라우드 측 - 폐쇄 VM 작업


ping 10.0.0.2

Conoha 측 - 폐쇄 VM 작업


ping 10.110.2.100

좋은 웹페이지 즐겨찾기