2014-10-09 7 views
-1

AWS 작성 1 VPC (10.0.0.0/16)에 2 개의 서브넷이 있고 EC2 인스턴스 2 개, NAT 인스턴스 1 개 (10.0.1.1) 및 개인 서브넷 (10.0.2.0/24)에있는 1 개의 WebService 인스턴스 (10.0.2.1)로 구성됩니다.NAT 서버에서 포트 80을 전달한 후에도 다운로드/설치할 수 없습니다. 아직 Google에 핑할 수 있습니다.

I setup everything ok but have problem when forward port 80 from NAT Instance to WebService Instance. 

If I use the Iptables config on NAT Instance like below, I can ping to anything but can not download or install anything on WebService Instance 

>*nat 
> 
>:PREROUTING ACCEPT [1:60] 

>:POSTROUTING ACCEPT [0:0] 

>:OUTPUT ACCEPT [0:0] 

>-A POSTROUTING -o eth0 -s 10.0.2.0/24 -j MASQUERADE 

>-A PREROUTING -i eth0 -p tcp --dport 3939 -j DNAT --to-destination 10.0.2.1:3939 

>-A PREROUTING -i eth0 -p tcp --dport 80 -j DNAT --to-destination 10.0.2.1:80 

>COMMIT 

>*filter 

>:INPUT ACCEPT [0:0] 

>:FORWARD ACCEPT [0:0] 

>:OUTPUT ACCEPT [2138:136749] 

>-A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT 

>-A INPUT -p icmp -j ACCEPT 

>-A INPUT -i lo -j ACCEPT 

>-A INPUT -p tcp -m state --state NEW -m tcp --dport 80 -j ACCEPT 

>-A INPUT -p tcp -m state --state NEW -m tcp --dport 8888 -j ACCEPT 

>COMMIT 


And when I open port 8888 and change 

>-A PREROUTING -i eth0 -p tcp --dport 80 -j DNAT --to-destination 10.0.2.1:80 

to 

>-A PREROUTING -i eth0 -p tcp --dport 8888 -j DNAT --to-destination 10.0.2.1:80 

I can do anything but I need use 8888 port after domain for access my website. 

Anyone have solution for use 80 port on NAT instance forward to 80 port on WebService Instance? 

답변

0

IpTables에 익숙하지 않지만 NAT를 사용하여 인터넷에서 요청을 받아 웹 서버에 전달하려고합니다. VPC의 NAT 인스턴스는 대개 개인 서브넷의 인스턴스에서 인터넷으로 나가는 트래픽을 처리합니다. 인바운드 요청을 전달하는 데이 파일을 사용하지 마십시오.

일반적으로 Elastic Load Balancing과 같은 AWS 서비스를 사용하거나 인스턴스에 탄성 IP를 할당합니다. http://aws.amazon.com/elasticloadbalancing/http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/elastic-ip-addresses-eip.html

참조