[서버구성]
Oracle VM - CentOS 서버 2대를 사용합니다.
서버의 네트워크 어댑터 설정은 다음과 같습니다.
192.168.56.107 (NAT 서버) ==> 어댑터 브리지 // 호스트 전용 어댑터
192.168.56.106 (내부망 서버) ==> NAT // 호스트 전용 어댑터
[개요]
다음과 같이 Iptables를 설정하여 NAT 서버의 Public IP를 가정한 192.168.0.13 으로 요청을 보내면 192.168.56.106번 서버로 패킷의 흐름을 변환하여 192.168.56.106번의 데이터를 싣고 외부로 반환되게 됩니다.
[192.168.56.107 서버 iptables]
[root@mail ~]# iptables -t nat -nL
Chain PREROUTING (policy ACCEPT)
target prot opt source destination
DNAT tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:80 to:192.168.56.106:80
DNAT tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:80 to:192.168.56.106:80
Chain INPUT (policy ACCEPT)
target prot opt source destination
Chain OUTPUT (policy ACCEPT)
target prot opt source destination
Chain POSTROUTING (policy ACCEPT)
target prot opt source destination
RETURN all -- 192.168.122.0/24 224.0.0.0/24
RETURN all -- 192.168.122.0/24 255.255.255.255
MASQUERADE tcp -- 192.168.122.0/24 !192.168.122.0/24 masq ports: 1024-65535
MASQUERADE udp -- 192.168.122.0/24 !192.168.122.0/24 masq ports: 1024-65535
MASQUERADE all -- 192.168.122.0/24 !192.168.122.0/24
SNAT tcp -- 0.0.0.0/0 192.168.56.106 tcp dpt:80 to:192.168.56.107
---
[192.168.56.106 서버 iptables]
[root@mail ~]# iptables -t nat -nL
Chain PREROUTING (policy ACCEPT)
target prot opt source destination
DNAT tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:80 to:192.168.56.106:80
Chain INPUT (policy ACCEPT)
target prot opt source destination
Chain OUTPUT (policy ACCEPT)
target prot opt source destination
Chain POSTROUTING (policy ACCEPT)
target prot opt source destination
RETURN all -- 192.168.122.0/24 224.0.0.0/24
RETURN all -- 192.168.122.0/24 255.255.255.255
MASQUERADE tcp -- 192.168.122.0/24 !192.168.122.0/24 masq ports: 1024-65535
MASQUERADE udp -- 192.168.122.0/24 !192.168.122.0/24 masq ports: 1024-65535
MASQUERADE all -- 192.168.122.0/24 !192.168.122.0/24
MASQUERADE all -- 192.168.56.106 0.0.0.0/0
[192.168.56.107 서버 추가 작업]
sysctl net.ipv4.ip_forward=1
다음 명령어를 통해 IP를 포워딩을 활성화 시킵니다., IP 포워딩을 통해 네트워크 트래픽이 한 네트워크 인터페이스를 통과하여 다른 네트워크 인터페이스로 전달되는것을 뜻합니다.
[iptables 작업 코드]
[192.168.56.107]
iptables -t nat -A PREROUTING -i enp0s3 -p tcp --dport 80 -j DNAT --to-destination 192.168.56.106:80
iptables -t nat -A POSTROUTING -o enp0s8 -p tcp --dport 80 -d 192.168.56.106 -j SNAT --to-source 192.168.56.107
[192.168.56.106]
iptables -t nat -A PREROUTING -i enp0s3 -p tcp --dport 80 -j DNAT --to-destination 192.168.56.106:80
iptables -t nat -A POSTROUTING -s 192.168.56.106 -j MASQUERADE
[테스트]
[완성]
다른 대역대인 192.168.0.13의 경로로 접속했을때 192.168.56.106번의 데이터를 출력하는 것을 확인.
네트워크 어댑터를 브릿지를 이용하였기 때문에 동일 와이파이를 사용하는 대역의 기기에서 똑같이 접속 가능.
[시연]
https://www.youtube.com/watch?v=WK9VWxNW2NU
'Oracle' 카테고리의 다른 글
[Oracle] SYNTAX FOR SQL (Join / Join on / Natural Join / Inner join / non equi join / Self Join /etc..) (0) | 2022.10.20 |
---|---|
[Oracle] COUNT, STDDEV, GROUP BY, HAVING, ROUND, SYSDATE 등 알아보기 (예제를 통해) (0) | 2022.10.19 |
[Oracle] 테이블에 데이터 Import 후 원하는 정보 추출해보기.(group by) (0) | 2022.10.19 |
[Oracle] SELECT문을 이용한 응용연습 해보기 (0) | 2022.10.18 |
[Oracle] 테이블 생성 후 DATA 자료 INSERT 하기 (0) | 2022.10.18 |
댓글