DNS 이름 기반 NAT 라우팅(역방향 TCP 프록시?)

DNS 이름 기반 NAT 라우팅(역방향 TCP 프록시?)

소개

pfSense를 실행하는 라우터가 하나 있고(VMware의 가상 머신이므로 무엇이든 가능하므로 솔루션에 다른 것이 필요한 경우 괜찮습니다) 그 뒤에는 여러 개의 가상 머신(NAT)이 있습니다.

내가 이루고 싶은 것

DNS 기반의 IP 1개로 여러 서비스를 사용하기 위해 일종의 프록시를 사용하고 싶습니다. 예를 들어; mail.domain.com에서 메일 서버(및 웹 액세스용 웹 사이트)를 실행하고 www.domain.com에서 웹 사이트를 실행하며 ftp.domain.com에서 FTP 서버를 실행하지만 모두 다른 가상 머신입니다.

그래서 기본적으로:

Hostname          Internal NAT IP     Port

www.domain.com    192.168.1.10        80
mail.domain.com   192.168.1.11        25
mail.domain.com   192.168.1.11        80
mail.domain.com   192.168.1.11        443
ftp.domain.com    192.168.1.12        21

그래서 HAProxy를 사용하려고 생각했지만 HAProxy는 HTTP 트래픽에만 이를 허용하고 "일반" TCP 트래픽(DNS 이름 기반)에는 허용하지 않습니다. 나는 갖고 싶다모두포트(TCP와 UDP 둘 다, 그러나 TCP만 가능한 경우에도 괜찮습니다)를 해당 가상 머신으로 리디렉션합니다.

답변1

사용된 DNS 호스트 이름을 기반으로 모든 종류의 프록시를 수행하려면 애플리케이션 프로토콜이 어떤 방식으로든 호스트 헤더를 전달해야 합니다.

내가 아는 바로는 FTP와 관련된 헤더가 없으므로 이것이 어떻게 가능한지 알 수 없습니다. 사용자 정의 FTP 프록시를 사용하면 사용자 이름 등을 기반으로 다른 서버로 사용자를 보낼 수 있습니다.

TLDR: 나는 당신의 최종 목표가 가능하다고 생각하지 않습니다. 외부 IP 주소가 두 개 이상 필요합니다.

관련 정보