Giải pháp cho vấn đề của bạn:
Trong trường hợp này, tôi không nghĩ vấn đề là do bản ghi PTR của bạn, mà là do cách thức hoạt động của hệ thống Reverse Proxy của Cloudflare. Nếu tên miền của bạn đang sử dụng proxy của Cloudflare, thì nó không thực sự trỏ đến máy chủ của bạn nữa.
giải pháp là tắt proxy của Cloudflare cho các miền/miền phụ nơi đặt máy chủ thư.
Trả lời cho câu hỏi của bạn:
Các truy vấn DNS và rDNS xảy ra riêng biệt nhưng truy vấn DNS xảy ra trước để xác định IP nào sẽ truy vấn rDNS/PTR. Trong trường hợp này, Cloudflare về cơ bản đang thay thế IP của bạn trong phản hồi DNS bằng IP của chính họ, đây là nguyên nhân gây ra sự cố.
Ví dụ, nếu bạn có mydomain.example
và cài đặt DNS Cloudflare của bạn là bản ghi A trỏ đến 192.0.2.1
với Proxy được bật, thì miền thực sự đang trỏ đến máy chủ của Cloudflare, sau đó máy chủ này sẽ chuyển tiếp lưu lượng truy cập đến máy chủ của bạn.Tuy nhiên, điều này có nghĩa là tra cứu PTR sẽ truy vấn máy chủ của Cloudflare chứ không phải máy chủ của bạn, máy chủ này sẽ báo cáo không có bản ghi nào:
⯠đào proxy.mydomain.example # Máy chủ thư từ xa truy vấn bản ghi A của miền được ủy quyền.
;; PHẦN CÂU HỎI:
;proxy.mydomain.example. TRONG MỘT
;; PHẦN TRẢ LỜI:
proxy.mydomain.example. 300 TRONG MỘT 104.21.30.252 # Máy chủ Cloudflare
proxy.mydomain.example. 300 TRONG MỘT 172.67.174.61 # Máy chủ Cloudflare
⯠Dig -x 104.21.30.252 # Máy chủ thư từ xa kiểm tra PTR/rDNS của cả hai IP (Đây là từ IP Cloudflare thực)
;; PHẦN CÂU HỎI:
;252.30.21.104.in-addr.arpa. TRONG PTR
;; PHẦN THẨM QUYỀN:
21.104.in-addr.arpa. 3600 TRONG SOA cruz.ns.cloudflare.com. dns.cloudflare.com. 2034580120 10000 2400 604800 3600
# Máy chủ không trả về bản ghi PTR, vì đó là máy chủ của Cloudflare đang được truy vấn.
Nếu bạn tắt tính năng ủy quyền của Cloudflare cho bản ghi DNS của máy chủ thư, nó sẽ giống như thế này:
⯠đào unproxied.mydomain.example # Máy chủ thư từ xa truy vấn bản ghi A của miền không được ủy quyền.
;; PHẦN CÂU HỎI:
;unproxied.mydomain.example. TRONG MỘT
;; PHẦN TRẢ LỜI:
unproxied.mydomain.example. 300 IN A 192.0.2.1 # Máy chủ DNS trả về IP của máy chủ của bạn.
⯠Dig -x 192.0.2.1 # Máy chủ thư truy vấn máy chủ CỦA BẠN cho PTR.
;; PHẦN CÂU HỎI:
;117.8.209.209.in-addr.arpa. TRONG PTR
;; PHẦN TRẢ LỜI:
117.8.209.209.in-addr.arpa. 86400 TRONG PTR không được ủy quyền.mydomain.example.
# PTR trả về giá trị đúng.
(Xin lưu ý rằng tôi đã bỏ qua tra cứu MX/SPF/DKIM/DMARC trong phản hồi này, vì theo như tôi biết thì Cloudflare không gây rối với những tra cứu đó trừ khi bạn trỏ bản ghi của mình tới bản ghi A/AAAA/CNAME được ủy quyền .)