8장. 레코드 세트 관리
RHOSP(Red Hat OpenStack) DNS 서비스(designate)는 레코드 세트에 대한 데이터를 저장합니다. 레코드 세트는 하나 이상의 DNS 리소스 레코드로 구성됩니다. 영역을 쿼리하여 추가, 수정 및 삭제 외에 해당 레코드 세트를 나열할 수 있습니다.
이 섹션에 포함된 항목은 다음과 같습니다.
8.1. DNS 서비스의 레코드 및 레코드 세트 정보 링크 복사링크가 클립보드에 복사되었습니다!
DNS(Domain Name System)는 리소스 레코드를 사용하여 네임스페이스 내에 영역 데이터를 저장합니다. RHOSP(Red Hat OpenStack) DNS 서비스(designate)의 DNS 레코드는 레코드 세트를 사용하여 관리합니다.
각 DNS 레코드에는 다음 속성이 포함되어 있습니다.
- name - DNS 네임스페이스에서 해당 위치를 나타내는 문자열입니다.
-
type - 레코드 사용 방법을 식별하는 문자 코드 집합입니다. 예를 들어
A는 주소 레코드를 식별하고CNAME은 표준 이름 레코드를 식별합니다. -
class - 레코드의 네임스페이스를 지정하는 문자 코드 집합입니다. 일반적으로 이것은 인터넷의 경우
IN이지만 다른 네임스페이스는 존재합니다. - TTL - (Time to live) 레코드가 유효한 기간(초)입니다.
- R Data - A 레코드의 IP 주소 또는 CNAME 레코드의 다른 레코드 이름과 같은 레코드의 데이터입니다.
각 영역 네임스페이스에는 권한 시작(SOA) 레코드가 포함되어야 하며 권한 있는 이름 서버(NS) 레코드와 다양한 다른 유형의 레코드가 있을 수 있습니다. SOA 레코드는 이 이름 서버가 영역에 대한 정보의 최상의 소스임을 나타냅니다. NS 레코드는 영역에 권한이 있는 이름 서버를 식별합니다. 영역의 SOA 및 NS 레코드는 읽을 수 있지만 수정할 수 없습니다.
필수 SOA 및 NS 레코드 외에도 가장 일반적인 레코드 유형 세 가지는 주소(A), 표준 이름(CNAME), 포인터(PTR) 레코드입니다. 레코드는 호스트 이름을 IP 주소에 매핑합니다. PTR 레코드는 IP 주소를 호스트 이름에 매핑합니다. CNAME 레코드는 별칭의 전체 호스트 이름을 식별합니다.
레코드 세트는 이름과 유형이 동일하지만 잠재적으로 데이터가 다를 수 있는 하나 이상의 DNS 레코드를 나타냅니다. 예를 들어 데이터 192.0.2.1 및 192.0.2.2 를 포함하는 web.example.com 이라는 레코드 세트는 두 개의 IP 주소에 있는 web.example.com 을 호스팅하는 두 개의 웹 서버를 반영할 수 있습니다.
영역 내에 레코드 세트를 생성해야 합니다. 레코드 세트가 포함된 영역을 삭제하면 영역 내의 해당 레코드 세트도 삭제됩니다.
openstack recordset list -c name -c type -c records 명령을 사용하여 example.com 영역을 쿼리하여 얻은 이 출력을 고려하십시오.
example.com
+------------------+------+----------------------------------------------+
| name | type | records |
+------------------+------+----------------------------------------------+
| example.com. | SOA | ns1.example.net. admin.example.com. 16200126 |
| | | 16 3599 600 8640 0 3600 |
| | | |
| example.com. | NS | ns1.example.net. |
| | | |
| web.example.com. | A | 192.0.2.1 |
| | | 192.0.2.2 |
| | | |
| www.example.com. | A | 192.0.2.1 |
+------------------+------+----------------------------------------------+
이 예에서 example.com. zone에 대한 권한 있는 이름 서버는 ns1.example.net., NS 레코드입니다. 이를 확인하려면 BIND dig 툴을 사용하여 NS 레코드의 이름 서버를 쿼리할 수 있습니다.
$ dig @ns1.example.net example.com. -t NS +short
ns1.example.net.
A 레코드 세트를 확인할 수도 있습니다.
$ dig @ns1.example.net web.example.com. +short
192.0.2.2
192.0.2.1
$ dig @ns1.example.net www.example.com. +short
192.0.2.1