현재 위치: > 최신 기사 목록> CheckDnsrr 함수를 통해 도메인 이름의 MX 레코드를 확인하는 방법은 무엇입니까?

CheckDnsrr 함수를 통해 도메인 이름의 MX 레코드를 확인하는 방법은 무엇입니까?

gitbox 2025-09-29

PHP에서 CheckDnsrr 함수는 도메인 이름에 대한 DNS 레코드를 확인하는 데 사용할 수있는 매우 유용한 도구입니다. 도메인 이름을 레코드, CNAME 레코드 등을 감지하는 데 종종 사용되지만 MX (Mail Exchange) 레코드를 확인하는 데 사용될 수 있으므로 도메인 이름에 메일 서버가 구성되어 있는지 확인하는 데 도움이됩니다. 이 기사를 사용하면 단계별로 Domain 이름의 MX 레코드를 확인하기 위해 CheckDNSRR 기능을 사용하는 방법을 확인합니다.

1. checkdnsrr 함수의 개요

CheckDNSRR은 지정된 도메인 이름에 지정된 유형의 DNS 레코드가 있는지 확인하는 함수입니다. 함수 서명은 다음과 같습니다.

 <span><span><span class="hljs-keyword">bool</span></span><span> </span><span><span class="hljs-title function_ invoke__">checkdnsrr</span></span><span> ( </span><span><span class="hljs-keyword">string</span></span><span> </span><span><span class="hljs-variable">$hostname</span></span><span> , </span><span><span class="hljs-keyword">string</span></span><span> </span><span><span class="hljs-variable">$type</span></span><span> = </span><span><span class="hljs-string">"any"</span></span><span> )
</span></span>
  • $ hostname : 확인할 도메인 이름 ( example.com 과 같은 전체 도메인 이름 일 수 있음).

  • $ 유형 : 확인할 DNS 레코드 유형, 기본값은 "Any" , 즉 모든 레코드를 확인합니다. 특정 유형의 레코드 (예 : MX 레코드, 레코드 등) 만 확인하면 "MX" 로 지정할 수 있습니다.

2. CheckDnsrr을 사용하여 MX 레코드를 확인하십시오

도메인 이름에 메일 서버가 구성되어 있는지 확인하려면 CheckDNSRR 기능을 사용하고 $ 유형을 "MX" 로 설정할 수 있습니다. 예는 다음과 같습니다.

 <span><span><span class="hljs-meta">&lt;?php</span></span><span>
</span><span><span class="hljs-variable">$domain</span></span><span> = </span><span><span class="hljs-string">"example.com"</span></span><span>;

</span><span><span class="hljs-keyword">if</span></span><span> (</span><span><span class="hljs-title function_ invoke__">checkdnsrr</span></span><span>(</span><span><span class="hljs-variable">$domain</span></span><span>, </span><span><span class="hljs-string">"MX"</span></span><span>)) {
    </span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"도메인 이름 <span class="hljs-subst">$domain</span></span></span><span> 구성되었습니다 MX 기록,일반적으로 메일 서버가 있음을 의미합니다。";
} </span><span><span class="hljs-keyword">else</span></span><span> {
    </span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"도메인 이름 <span class="hljs-subst">$domain</span></span></span><span> 구성되지 않았습니다 MX 기록,메일 서버가 없을 수 있습니다。";
}
</span><span><span class="hljs-meta">?&gt;</span></span><span>
</span></span>

위의 코드에서 먼저 확인할 도메인 이름 example.com을 지정합니다. 그런 다음 CheckDNSRR 기능을 사용하여 MX 레코드가 있는지 확인하십시오. 반환 값이 true 인 경우 도메인 이름에 MX 레코드가 구성되었으며 메일 서버가있을 수 있습니다. False 인 경우 도메인 이름에 MX 레코드가 구성되지 않았 음을 의미합니다.

3. MX 레코드 분석

CheckDnsrr 함수는 도메인 이름에 MX 레코드가 구성되어 있는지 여부 만 결정할 수 있지만 특정 MX 레코드 컨텐츠를 반환하지는 않습니다. 메일 서버의 호스트 이름 또는 우선 순위와 같은 자세한 MX 레코드를 가져와야하는 경우 DNS_GET_RECORD 함수와 함께 DNS_GET_RECORD 기능을 사용할 수 있습니다. 이 기능은 MX 레코드의 세부 사항을 포함하여 지정된 유형의 모든 DNS 레코드를 반환 할 수 있습니다.

다음은 dns_get_record를 통해 MX 레코드를 얻고 표시하는 방법을 보여주는 예입니다.

 <span><span><span class="hljs-meta">&lt;?php</span></span><span>
</span><span><span class="hljs-variable">$domain</span></span><span> = </span><span><span class="hljs-string">"example.com"</span></span><span>;

</span><span><span class="hljs-comment">// 얻다 MX 기록</span></span><span>
</span><span><span class="hljs-variable">$records</span></span><span> = </span><span><span class="hljs-title function_ invoke__">dns_get_record</span></span><span>(</span><span><span class="hljs-variable">$domain</span></span><span>, DNS_MX);

</span><span><span class="hljs-keyword">if</span></span><span> (</span><span><span class="hljs-variable">$records</span></span><span>) {
    </span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"도메인 이름 <span class="hljs-subst">$domain</span></span></span><span> ~의 MX 기록如下:&lt;br&gt;";
    </span><span><span class="hljs-keyword">foreach</span></span><span> (</span><span><span class="hljs-variable">$records</span></span><span> </span><span><span class="hljs-keyword">as</span></span><span> </span><span><span class="hljs-variable">$record</span></span><span>) {
        </span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"우선 사항: "</span></span><span> . </span><span><span class="hljs-variable">$record</span></span><span>[</span><span><span class="hljs-string">'pri'</span></span><span>] . </span><span><span class="hljs-string">" - 메일 서버: "</span></span><span> . </span><span><span class="hljs-variable">$record</span></span><span>[</span><span><span class="hljs-string">'target'</span></span><span>] . </span><span><span class="hljs-string">"&lt;br&gt;"</span></span><span>;
    }
} </span><span><span class="hljs-keyword">else</span></span><span> {
    </span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"도메인 이름 <span class="hljs-subst">$domain</span></span></span><span> 찾을 수 없습니다 MX 기록。";
}
</span><span><span class="hljs-meta">?&gt;</span></span><span>
</span></span>

이 예에서는 DNS_GET_RECORD를 사용하여 지정된 도메인 이름의 MX 레코드를 얻습니다. 결과는 배열이며, MX 레코드의 우선 순위 ( PRI )와 대상 메일 서버 ( 대상 )의 주소를 포함하는 각 요소입니다.

4. 요약

CheckDnsrr 함수를 통해 도메인 이름에 MX 레코드가 구성된지 여부를 신속하게 결정한 다음 도메인 이름에 이메일 서비스가 있는지 여부를 추측 할 수 있습니다. 그러나보다 자세한 MX 기록 정보가 필요한 경우 DNS_GET_RECORD 기능을 함께 사용할 수 있습니다. 이 조합은 이메일 관련 DNS 구성을 더 잘 해결하고 관리하는 데 도움이됩니다.

위의 것은 PHP의 CheckDnsrr 함수를 사용하여 도메인 이름의 MX 레코드를 확인하는 방법입니다.