2017-01-15 5 views
-2

포트 포워딩과 함께 OpenWRT에 문제가 있습니다. T'm은 포트 443에서 WAN에서 DMZ로 포트 포워딩을하고 있습니다. 정상적으로 작동합니다. 또한 사설 IP로 내부 LAN에서 DMZ에 액세스 할 때 잘 작동합니다 (포트 -forwaring 관련 없음). 그러나 내부 LAN에서 내 공용 IP 함께 작동하지 않습니다. 연결이 거부되었습니다.포트 포워딩은 가능하지만 내부 LAN에서는 안됨

작동 방식은 있습니까? (처음에는 WAN에서 DMZ로만 포트 포워딩을했지만 때로는 집에있어)

+0

공개 액세스가 필요한 경우 그런 식으로 설정하고 가정에서도 공용 IP를 사용하고 로컬 IP는 사용하지 마십시오. – Chris

+0

그게 문제입니다. 공용 액세스 (WAN에서 DMZ로)를위한 포트 포워딩을 설정했지만 집에서 *** 공용 IP ***를 LAN에서 사용하면 연결이 거부됩니다. – sesshoumaru

+0

그래, DMZ로 설정했다면 문제는 라우터에 없지만 확인할 수 있습니다. 대부분의 라우터가 로깅을 가지고 있지는 않지만 대부분 라우터를 통해 연결이 허용되는지 확인해야합니다. 다음 단계를 통해 허용 된 경우 원격 호스트에 대해 소프트웨어 방화벽이 설치되어 있거나 포트가 열려 있는지 확인하는 것입니다. (시스템 방화벽에서만 로컬 허용). 방화벽이 모두 올바른 경우 다음 서버 로그가됩니다. 포트 443으로 인증서가 설치되어 있는지 확인하고 싶을 것입니다. – Chris

답변

1

포워딩 전에 대상 주소를 nat - prerouting 체인으로 다시 써야합니다. 또한 DMZ로 보내기 전에 port forwarded LAN 트래픽을 가장해야합니다.

가면이 없으면 DMZ 호스트의 패킷이 LAN 클라이언트로 직접 전송됩니다. LAN 클라이언트가 응답이 공용 IP에서 돌아오고 DMZ IP에서 돌아올 것으로 예상 할 때 LAN 클라이언트는이 알 수없는 패킷을 삭제합니다.

가장 쉬운 방법은 포트가 트래픽을 전달 위장이를 즉석에서 할 수

# Public IP = 208.67.220.220 
# Local LAN IP Pool = 192.168.1.0/24 
# LAN Interface = 'eth0' 
# DMZ Interface = 'eth2' 
# DMZ Server IP = 172.16.20.20 

iptables -t nat -d 208.67.220.220 -A PREROUTING -i eth0 -j DNAT --to 172.16.20.20 
iptables -t nat -s 192.168.1.0/24 -A POSTROUTING -o eth2 -j MASQUERADE 

아래처럼 DMZ 네트워크에 모든 LAN 트래픽을 위장하는 것입니다. 나는 그것을 원래의 포스터에 남겨 둘 것이다.

+0

이제는 문제를 이해합니다. 그래서 iptable 규칙을 추가하지만 작동하지 않습니다. – sesshoumaru

+0

자, 이제 문제를 이해합니다. 그래서 iptable 규칙을 추가하지만 작동하지 않습니다. 하지만 한 가지를 알고 싶습니다. 해당 iptable 규칙으로 우리는 LAN에서 DMZ 로의 모든 트래픽을 가장합니다. 하지만 먼저 LAN에서 공개 IP를 요청한 다음 RST 패킷을받을 수 있습니다. 나는 패킷이 DMZ에 들어 가지 않을 것이라고 생각하고 라우터는 그것을 버린다. 나는 당신이 준 이유가 좋다고 생각하지만이 iptable이 문제를 해결하지 못하는 것 같습니다. – sesshoumaru

+0

그레이트 !!!! 고맙습니다. 오늘 새로운 것을 배우십시오. – sesshoumaru