라운드 로빈 DNS

라운드 로빈 DNS(Round-robin DNS)는 클라이언트의 요청을 처리하기 위해 DNS(도메인 네임 시스템)의 응답을 관리하여 웹 서버, FTP 서버와 같은 여러 개의 중복 인터넷 프로토콜 서비스 호스트를 제공하는 로드 분산, 로드 밸런싱 또는 내결함성을 제공하는 기술이다.

가장 간단한 구현에서 라운드 로빈 DNS는 단일 잠재적 IP 주소뿐만 아니라 동일한 서비스를 호스팅하는 여러 서버에 해당하는 잠재적 IP 주소 목록을 사용하여 DNS 요청에 응답함으로써 작동한다. 목록에서 IP 주소가 반환되는 순서는 라운드 로빈이라는 용어의 기초이다. 각 DNS 응답마다 목록의 IP 주소 순서가 변경된다. 전통적으로 IP 클라이언트는 처음에 DNS 쿼리에서 반환된 첫 번째 주소를 사용하여 연결을 시도한다. 따라서 연결을 시도할 때마다 클라이언트는 다른 공급자로부터 서비스를 받게 되므로 전체 로드가 서버에 분산된다.

일부 확인자는 숫자상 "더 가까운" 네트워크에 우선순위를 부여하기 위해 목록 순서를 다시 지정하려고 시도한다. 이 동작은 IPv6 정의 중에 표준화되었으며 라운드 로빈 로드 밸런싱을 무효화한다는 비난을 받았다. 일부 데스크톱 클라이언트는 최대 30초의 연결 시간 초과 후에 대체 주소를 시도한다.

라운드 로빈 DNS는 여러 웹 서버 간의 요청 로드 균형을 조정하는 데 자주 사용된다. 예를 들어, 회사에는 3개의 IP 주소를 가진 3개의 서버에 상주하는 동일한 웹 사이트의 하나의 도메인 이름과 3개의 동일한 복사본이 있다. DNS 서버는 도메인 이름이 각 IP 주소에 하나씩 여러 개의 A 레코드를 갖도록 설정된다. 한 사용자가 홈 페이지에 액세스하면 첫 번째 IP 주소로 전송된다. 두 번째로 홈페이지에 접속한 사용자는 다음 IP 주소로, 세 번째 사용자는 세 번째 IP 주소로 연결된다. 각각의 경우에 IP 주소가 제공되면 목록의 끝으로 이동한다. 따라서 네 번째 사용자는 첫 번째 IP 주소로 전송된다.

라운드 로빈 DNS 이름은 대체 A 레코드 간의 순환으로 인해 드물게 "로터"라고 불린다.