
다음과 같은 간단한 시나리오를 고려해보세요.
예를 들어 HTTPS를 통해 일부 서비스를 제공하는 서버가 있는 사무실 네트워크가 있습니다. 나는 이름으로 이 서버에 액세스할 수 있기를 원하며 service.example.com
이것이 인터넷을 통해서뿐만 아니라 사무실 네트워크 내부에서도 작동하기를 원합니다.
그러기 위해 인터넷 측에 고정 IP가 있는 라우터가 있고 TCP 포트 443을 내부 서버로 리디렉션하도록 설정했습니다.
반환 을 쿼리하는 방식으로 DNS를 구성하고 싶습니다 service.example.com
.
10.0.0.2
(내부 IP) 사무실 네트워크 내부에서 조회하는 경우123.45.67.89
(외부 IP) 사무실 네트워크 외부에서 쿼리하는 경우
모든 DNS 요구 사항에 대해 이미 Amazon Route 53을 사용하고 있는데 다음과 같은 새로운 기능이 있다는 것을 발견했습니다.IP 기반 라우팅를 사용하면 쿼리 IP를 기반으로 동적으로 반환되는 여러 DNS 레코드를 생성할 수 있습니다. 따라서 원칙적으로 DNS 레코드를 다음과 같이 설정해야 합니다.
service.example.com
10.0.0.2
쿼리하면 반환됩니다 .123.45.67.89
service.example.com
123.45.67.89
다른 곳에서 쿼리하면 반환됩니다 .
그러나 Route 53에서는 개별 IP 주소를 설정할 수 없습니다. 대신 CIDR 블록을 등록해야 합니다 /24
. 이 블록은 최대 . 따라서 개별 IP 주소(마스크 사용)를 설정할 수 없습니다 /32
.
이에 대한 이유가 있습니까? 내가 이것을 잘못된 방향으로 보고 있는 걸까요? 내가 생각한 몇 가지 대체 솔루션은 다음과 같습니다.
- 모든 내부 PC에 대한 수동 경로를
/etc/hosts
. 그러나 때로는 내부 네트워크에 있고 때로는 외부 네트워크에 있을 수 있는 랩톱에서 이것이 작동하기를 원합니다. 사용자에게/etc/hosts
노트북을 집에 가져갈 때마다 노트북 을 바꾸라고 요청하는 것은 합리적이지 않다고 생각합니다 . - 이를 위해 내 네트워크 내부에 DNS 서버를 설정하십시오. 이 한 가지 사용 사례에 대해서만은 매우 무거운 작업이라고 생각합니다. 이 내부 서버에 대한 트래픽이 최소화된다는 점을 고려하면 사무실 네트워크 내부의 모든 단일 DNS 쿼리를 처리하기 위해 서버를 설정하고 싶지 않습니다.
- NAT 사용을 중단하고 전체
/24
고정 IP 블록을 확보하세요. 나는 이것이 내 필요에 비해 과잉이라고 생각합니다. - 어디에서나 접속 가능한 IPv6를 사용하면 이런 문제가 발생하지 않습니다. 제가 지금 하고 있는 일인데 아직도 홈 네트워크에 IPv6가 없는 분들이 많아 IPv6가 없는 분들은 아예 서비스를 이용할 수 없습니다.
이것을 설정하는 올바른 방법은 무엇입니까?