2016-07-14 5 views
0

boto3 및 dnspython 라이브러리를 사용하여 route-53 호스트 영역 용 영역 파일을 생성 중입니다. dnspython 라이브러리 (1.14.0)을 사용하여 A/CNAME/MX/TXT 레코드 집합을 생성 할 수있었습니다. 이 ALIAS 표적 (A 레코드) .I이 오류가 무엇입니까의 구현이없는 때문에 는 : ALIAS는 "alias.testdomain.com"와 같은 때문에dnspython을 사용하여 영역 파일에 별칭 타겟을 추가하는 방법은 무엇입니까?

**Traceback (most recent call last): 
    File "/home/work/dns_check.py", line 156, in <module> 
    rdataset = add_record_type_A(zone, name, address) 
    File "/home/work/dns_check.py", line 28, in add_record_type_A 
    rdata = rd_A.A(IN, A, address=address) 
    File "/usr/local/lib/python2.7/dist-packages/dns/rdtypes/IN/A.py", line 34, in __init__ 
    dns.ipv4.inet_aton(address) 
    File "/usr/local/lib/python2.7/dist-packages/dns/ipv4.py", line 51, in inet_aton 
    raise dns.exception.SyntaxError 
    dns.exception.SyntaxError: Text input is malformed.** 

그것은 IPV4지지하지 않은 것입니다 . 파이썬 라이브러리를 편집하여 생성 할 수 있습니다. 다른 방법이 있습니까? 사전

답변

0

에서

덕분에 당신은 AWS "별칭"레코드는 표준 DNS 레코드 종류 아니라고 맞다.

Route53 호스트 영역의 레코드를 사용하여 일반 표준 DNS 영역 파일을 생성하려는 경우 가장 가까운 표준 레코드 유형은 CNAME 레코드입니다. 그러나 생성 된 영역 파일은 CNAME 레코드를 제공하는 반면, "별칭"레코드는 실시간으로 쿼리 할 때 대상의 A 레코드를 반환하므로 생성 된 영역 파일은 Route53 영역과 정확히 같은 방식으로 작동하지 않습니다. 궁극적으로 A 레코드를 얻기 위해 다른 라운드를 수행하십시오.

또한 RFC1033에 따라 CNAME 레코드를 다른 레코드 유형과 함께 사용할 수 없다는 경고가 있습니다. 도메인의 루트 (예 : testdomain.com)에 별칭 레코드가있는 경우 CNAME 레코드가 없어야하므로 문제가 발생합니다. SOA, NS, MX 및 기타 레코드가 이미 있기 때문입니다.

+0

네, 맞습니다, 그래서 현재 처리 할 내용은 다음과 같습니다 - 레코드 집합 유형이 ALIAS이면 배열에 추가 중이며 마지막으로 ALIAS를 표준 방법으로 해당 파일에 추가했습니다. – tom