ทำไมไม่แนะนำให้ใช้เรคคอร์ด PTR หลายรายการใน DNS


36

ฉันมักจะ อ่านว่าไม่แนะนำให้ใช้การบันทึก PTR หลายรายการในการกำหนดค่า DNS

อย่างไรก็ตามเหตุผลมักคลุมเครือหรือไม่ชัดเจนดังนั้นการตั้งชื่อ:

  • "อาจทำให้เกิดปัญหา"
  • "สามารถทำให้เกิดข้อบกพร่องในโปรแกรมที่คาดหวังคำตอบเดียว": มันเป็นปัญหาของซอฟต์แวร์ใช่ไหม?!
  • "สามารถทำให้แพ็กเก็ตคำตอบ DNS ใหญ่เกินไป": สิ่งนี้ไม่ได้รับการแก้ไขด้วยEDNSหรือไม่

เป็นเหตุผลที่ดีเหล่านี้หรือไม่ คุณรู้เหตุผลอื่น ๆ (ดี) หรือไม่? ทั้งหมดนี้ดูเหมือนว่าเป็น "ความกลัวแบบดั้งเดิม" ...


4
ทำไมคุณต้องการมีหลายระเบียน PTR สำหรับที่อยู่ IP เดียว? ฉันไม่สามารถคิดเหตุผลที่เหมาะสม
ต่อฟอน Zweigbergk

3
@PervonZweigbergk นี่ไม่ใช่สิ่งที่ฉันถาม แต่อย่างเช่นเพราะฉันมีชื่อหลายชื่อชี้ไปที่ IP เดียวกันและต้องการกลับรายการเพื่อให้ตรงกับพวกเขาทั้งหมด
Totor

10
@PervonZweigbergk ลองนึกภาพเซิร์ฟเวอร์อีเมลที่จัดการเมลสำหรับหลายโดเมน คุณอาจต้องการใช้ชื่อภายในโดเมนที่คุณส่งจดหมายไปในEHLOคำสั่ง ผู้รับบางคนต้องการให้คุณมีPTRระเบียนที่ตรงกับโดเมนในEHLOคำสั่งของคุณมิฉะนั้นพวกเขาจะไม่ยอมรับจดหมายจากคุณ แต่ถ้าคุณมีหลายPTRระเบียนพวกเขาอาจเลือกหนึ่งในนั้นโดยการสุ่มและถ้านั้นไม่ตรงกับEHLOคำสั่งมันจะปฏิเสธเมล
kasperd

3
ฉันรู้ว่าไม่ใช่สิ่งที่คุณถามซึ่งเป็นสาเหตุที่ฉันถามสิ่งนี้ผ่านความคิดเห็นไม่ใช่คำตอบ :-) คุณไม่เคยพูดถึงแอปพลิเคชันที่คุณกำลังพูดถึง คุณควรระบุให้ชัดเจนว่าคุณกำลังพูดถึงบริบทของอีเมลขาออกซึ่งเป็นสิ่งที่ @kasperd กำลังคาดเดา
ต่อฟอน Zweigbergk

2
@ kasperd ฉันคิดว่าบางคนอาจต้องการที่จะทำอย่างนั้น แต่การทำเช่นนี้เป็นเรื่องแปลกใหม่และไม่จำเป็นทำให้เกิดสถานการณ์ที่เป็นปัญหาที่คำถามนั้นเกี่ยวกับ คาดว่าเซิร์ฟเวอร์จดหมายจะใช้ชื่อเดียวในEHLOคำสั่งของตนไม่ว่าจะมีโดเมนจำนวนเท่าใดที่จัดการกับเมล ชื่อในHELO/ EHLOคาดว่าจะระบุเซิร์ฟเวอร์อีเมลเองไม่เกี่ยวข้องกับMAIL FROMหรือFromที่อยู่อีเมล
Håkan Lindqvist

คำตอบ:


19

คาดว่าจะมีการPTRบันทึกชื่อย้อนกลับ (เช่น7.2.0.192.in-addr.arpa) เพื่อระบุชื่อบัญญัติซึ่งเชื่อมโยงกับที่อยู่ IP นั้น

ทั้งตัวชี้เกตเวย์ที่โหนดเครือข่ายและตัวชี้โฮสต์ปกติที่โหนดที่อยู่แบบเต็มใช้ PTR RR เพื่อชี้กลับไปที่ชื่อโดเมนหลักของโฮสต์ที่เกี่ยวข้อง

จาก: http://tools.ietf.org/html/rfc1035#section-3.5

ความคาดหวังนี้สะท้อนให้เห็นในซอฟต์แวร์ที่ทำการค้นหาแบบย้อนกลับ บ่อยครั้งที่ซอฟต์แวร์ดังกล่าวคาดว่าจะมีชื่อเดียวโดยเฉพาะและคาดว่าจะสามารถใช้ชื่อนั้นเป็นชื่อมาตรฐานสำหรับโฮสต์นั้นได้ หากมีหลายชื่อที่ส่งคืนเป็นเรื่องปกติที่จะสุ่มเลือกเพียงชื่อเดียวเพราะพวกเขาไม่มีทางรู้ได้เลยว่าคุณจะเลือกชื่อใดในโอกาสนี้

ในฐานะที่เป็นความคาดหวังทั่วไปคือมีหนึ่งชื่อบัญญัติที่เกี่ยวข้องกับที่อยู่ IP และชื่อที่คือสิ่งที่PTRควรชี้ไปที่การเพิ่มหลายชื่อโดยทั่วไปไม่มีคว่ำ (ไม่มีอะไรคาดว่าสุ่มA/ AAAAบันทึกที่จะมีการจับคู่PTR) แต่ก็มีศักยภาพ ข้อเสียเนื่องจากอาจทำให้เกิดผลลัพธ์แปลก ๆ เนื่องจากคุณไม่สามารถควบคุมว่าPTRจะใช้บันทึกใดของคุณหากคุณเพิ่มมากกว่าหนึ่งรายการ

ในสาระสำคัญถ้าคุณมีหลายPTRระเบียนที่คุณไม่ได้ทำให้โฮสต์ของคุณปรากฏขึ้นถูกต้องตามกฎหมาย แต่ตรงกันข้ามคุณจะเสี่ยงต่อการไม่ผ่านการตรวจสอบความถูกต้องหรือทำลายบางอย่าง

อาจจะเป็นอุปมาอุปมัยที่ค่อนข้างรุนแรงการมอบหนังสือเดินทางห้าใบให้กับภาพถ่ายของคุณ แต่ด้วยชื่อที่แตกต่างกันที่สนามบินอาจไม่ได้รับการตอบรับเช่นเดียวกับถ้าคุณเพิ่งส่งมอบให้


อธิบายอย่างละเอียดเกี่ยวกับ "หนึ่งชื่อมาตรฐาน": ในกรณีที่ที่อยู่ IP สามารถเชื่อมโยงกับเอนทิตี้มากกว่าหนึ่งรายการได้ ในกรณีของเว็บเซิร์ฟเวอร์ที่มีโฮสต์เสมือนหลายชื่อชื่อของเว็บเซิร์ฟเวอร์เองนั้นเหมาะสมที่สุด นี่เป็นหนึ่งในกรณีที่การพยายามทำตามคำแนะนำของข้อมูล RFC ( PTRเห็นด้วยเสมอกับAบันทึก) นั้นเป็นเรื่องที่สมบูรณ์
Andrew B

"บันทึก PTR นั้นสามารถระบุได้": ใครล่ะ ดูเหมือนกฎโดยพฤตินัยเนื่องจากผู้พัฒนาซอฟต์แวร์เริ่มพิจารณาว่า PTR เดียวเท่านั้นที่เป็นบรรทัดฐาน ฉันถูกไหม?
Totor

@Totor เพิ่มคำพูดและลิงค์สำหรับแหล่งที่มา
Håkan Lindqvist

ในฐานะที่เป็นเรื่องเล็ก ๆ น้อย ๆ มันก็สังเกตเห็นเมื่อเร็ว ๆ นี้ว่าแอปเปิ้ลมีเร็กคอร์ด PTR ไม่กี่ที่มากกว่า 9k ไบต์คุ้มค่าของคำตอบ ไม่ต้องสงสัยเลยว่าพวกเขาไม่ใช่คนเดียว นี่เป็นตัวอย่างที่ค่อนข้างมากในสิ่งที่คุณสามารถจบลงด้วยเมื่อนโยบายการบันทึก PTR บังคับไม่ต้องนำรายละเอียดของคำตอบนี้มาพิจารณา
Andrew B

16

ทุกอย่างเกิดขึ้นกับพฤติกรรมที่ไม่สามารถคาดเดาได้เนื่องจาก RFC ไม่ได้กำหนดขีด จำกัด หรือวิธีจัดการเร็กคอร์ด PTR เหล่านี้ การใช้งานส่วนใหญ่จะเลือกแบบปัดวนและคุณจะไม่ได้ผลลัพธ์ที่ต้องการ (การจับคู่ที่สมบูรณ์แบบระหว่างชื่อจำนวนมากกับ IP เดียว)

คุณสามารถอ่านเพิ่มเติมเกี่ยวกับเรื่องนี้ได้ที่นี่: https://supernoc.rogerstelecom.net/pdfs/multiple-ptrs.pdf

ตรวจสอบข้อผิดพลาดนี้จากฟังก์ชัน getnameinfo ของ Glibc ( https://sourceware.org/bugzilla/show_bug.cgi?id=5790 ) คุณจะรับประกันได้อย่างไรว่าสิ่งนี้จะไม่เกิดขึ้นในระบบที่แตกต่างกันจำนวนมากในอินเทอร์เน็ต

ในการเสริมสร้างกฎทั่วไปนั้นดีเสมอเพื่อหลีกเลี่ยงพฤติกรรมที่ไม่ได้ระบุและไม่แน่นอน น่าเสียดายที่ระเบียน PTR หลายรายการสำหรับ IP เดียวตกอยู่ในหมวดหมู่นั้น (เท่าที่เกี่ยวข้องกับ RFCs)


2
คุณจะรับประกันได้อย่างไรว่าปัญหาที่เกิดขึ้นไม่ได้เกิดขึ้นในระบบที่แตกต่างกันจำนวนมากมายทั่วอินเทอร์เน็ต คำตอบของคุณดี แต่อาร์กิวเมนต์นี้ไม่มีค่า ยิ่งไปกว่านั้นข้อบกพร่องของไคลเอนต์นั้นไม่เกี่ยวข้องกับ IMHO ยกเว้นว่ามีผลกระทบต่อจำนวน "สำคัญ" ของพวกเขา
Totor

2

คุณรับประกันได้อย่างไรว่า PTR จะตรงกับเรคคอร์ดไปข้างหน้าโดยเฉพาะถ้าคุณมี PTR หลายตัว

นี่เป็นสิ่งสำคัญอย่างยิ่งในการดำเนินการระหว่างเซิร์ฟเวอร์อีเมลโดยที่เซิร์ฟเวอร์ SMTP ที่รับขาเข้าส่วนใหญ่จะตรวจสอบว่าการส่งต่อตรงกับสิ่งที่ตรงกันข้ามหรือไม่

ค่อนข้างยากคือคุณมี PTR หลายตัวและไม่มีทางรับประกันได้ว่าจะเลือก PTR ใดและตรงกับการส่งต่อที่คุณให้ไว้ในการเชื่อมต่อ

วิธีที่ง่ายที่สุดในการรับประกันการจับคู่ที่สมบูรณ์แบบคือการมี PTR หนึ่งตัวที่ตรงกับการส่งต่อ

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.