שאלה מדוע רשומות MX אינן מצביעות על כתובת IP?


אני מבין אותך לא צריך הצבע על רשומת MX ​​בכתובת IP ישירות, אבל צריך במקום להצביע על כך A שיא, אשר, בתורו, מצביע על כתובת ה- IP של שרת הדואר שלך.

אבל, באופן עקרוני, למה זה נדרש?


84
2018-01-28 17:13




אם באפשרותך להגדיר רשומת MX ​​תוכל גם להגדיר רשומת A. אני לא רואה את הבעיה כאן. - joshudson
@ Joshudson זה לא בעיה בכלל, רק אני מנסה להבין למה ולא פשוט בצע את מה שכולם עושים. - dayuloli
אני פשוט ניסיתי ב- CloudFlare. הוא אינו מקבל כתובת IP כערך עבור רשומת MX. - LinuxBabe


תשובות:


כל הרעיון מאחורי רשומת MX ​​היא לציין מארח או המארחים אשר יכול לקבל דואר עבור דומיין. כפי שצוין ב RFC 1035, רשומת ה- MX מכילה שם תחום. זה חייב אפוא להצביע על המארח אשר עצמו ניתן לפתור ב- DNS. לא ניתן להשתמש בכתובת IP כיוון שהיא תתפרש כשם דומיין בלתי מוסמך, שלא ניתן לפתור.

הסיבות לכך בשנות השמונים, כאשר מפרטים נכתבו במקור, כמעט זהה הסיבות לכך היום: מארח יכול להיות מחובר לרשתות מרובות להשתמש בפרוטוקולים מרובים.

חזרה בשנות ה -80, זה לא היה נדיר לקבל שערי דואר אשר מחובר הן לאינטרנט (חדש יחסית) אשר השתמשו TCP / IP ו לרשתות אחרות מדור קודם, אשר לעתים קרובות שימוש בפרוטוקולים אחרים. ציון MX בדרך זו מותרת עבור רשומות DNS שיכולות לזהות כיצד להגיע למארח כזה ברשת שאינה האינטרנט, כגון Chaosnet. בפועל, זה כמעט אף פעם לא קרה; כמעט כולם מחדש הנדסה הרשתות שלהם להיות חלק של האינטרנט במקום.

היום, המצב הוא כי המארח ניתן להגיע על ידי פרוטוקולים מרובים (IPv4 ו IPv6) ועל ידי כתובות IP מרובות בכל פרוטוקול. רשומת MX ​​אחת לא יכולה לרשום יותר מכתובת אחת, ולכן האפשרות היחידה היא להצביע על מחשב מארח, שבו ניתן לבדוק את כל הכתובות של המארח. (כאופטימיזציה של ביצועים, שרת ה- DNS ישלח את רשומות הכתובת עבור המארח בקטע התגובה, אם יש לו הרשאות סמכותיות עבורו, תוך שמירת נסיעה הלוך ושוב).

קיים גם מצב שמתעורר כאשר מחליפי הדואר שלך מסופקים על ידי צד שלישי (למשל Google Apps או Office 365). אתה מפנה את רשומות ה- MX שלך לשמות המארחים שלהם, אך ייתכן כי ספק השירות צריך לשנות את כתובות ה- IP של שרתי הדואר. מכיוון שהצבעת על המארח, ספק השירות יכול לעשות זאת באופן שקוף ואין צורך לבצע שינויים כלשהם ברשומות שלך.


84
2018-01-28 17:36



זה לא ממש מונע תאימות עם כתובות IP; למעשה, רוב שרתי ה- SMTP / הלקוחות עובדים מצוין עם כתובות IP ברשומות MX מהבדיקה הקטנה שעשיתי. אני חושב שהכוונה היתה להניא את התעשייה מלהשתמש בכתובות IP בהמוניהם - וזה סביר להניח מה היה קורה, אילו כלל זה לא נאמר - ולא על בסיס כל מקרה לגופו. לפיכך, "צריך", בניגוד "חייב". +1 עבור מידע נהדר, אם כי. מעולם לא שקלתי את רוב זה. - Zenexer
@Zenexer חוקי התנועה לא שם על אי הנוחות של נהגים מומחים מעטים יחסית שיודעים בדיוק מה בטוח ומה לא. הם קיימים בגלל קבוצת משנה גדולה בהרבה של אידיוטים מזדיינים מי לחשוב הם יודעים מה הם עושים אבל לא. - Shadur
@Zenexer אתה עשוי לגלות כי MTA מסוים סובל את זה היום, ולא מחר. זה, אחרי הכל, לא התנהגות מותר על ידי תקן. וכמובן, לא כל MTAs יתמוך בו, אז עושה את זה אומר שאתה מובטח לאבד דואר. - Michael Hampton♦
@ מיכאלהמפטון: אם רשומת MX צריך להכיל שם מארח במקום כתובת IP, ולאחר מכן MTA צריך קבל כתובת IP. באופן היפותטי, אם רשומת MX צריך להכיל שם מארח ולאחר מכן MTA צריך קבל כתובת IP. כך פועלת RFC. הצד הנגדי ליעוץ יישום "SHOULD" עשוי לייעל את ההנחה כי העצה היא אחריו, אבל זה פחות או יותר כל מה שאתה יכול לעשות עם זה. - MSalters
@ MSALters אני חושב שאתה מבולבל. מעולם לא אמרתי דבר. ואכן, אמרתי כי הרשומה MX חייב להכיל שם מארח, וזה גם מה RFCs אומרים. - Michael Hampton♦


DNS כמו פרוטוקול יש כמה סוגים שונים של ערכים, אלה אינם ניתנים להחלפה.

חשוב לציין ש- DNS הוא פרוטוקול בינארי עם מיפוי קפדני בין סוג הרשומה לבין סוג הנתונים שמכיל תיעוד כזה.

לדוגמה:
An A הרשומה מחזיקה כתובת IPv4 (4 בתים של נתונים, אורך קבוע).
An AAAAהרשומה מחזיקה כתובת IPv6 (16 בתים של נתונים, אורך קבוע).

An MX שיא, לעומת זאת, מחזיק שם (רצף של תוויות בפורמט <int number of bytes> <label> <int number of bytes> <label> <int 0>, אורך משתנה).

זה לא אפשריעבור MX כדי לקבל כתובת IP כמו הנתונים שלה.


17
2018-01-28 17:34



אתה יכול להפוך את התווית לייצוג טקסטואלי של כתובת IP, אבל זה לא יהיה הגיוני לעשות זאת, שכן זה לא ניתן לפתור כמו שם המארח. - Michael Hampton♦
ואכן, אפשר לקבל שם עם תוויות כל מספרי כי ייצוג ידידותי נורמלי אדם נראה כמו כתובת IPv4 במבט ראשון. זה לא ממש משנה שום דבר כשמדובר בשאלה, אם כי זה עדיין יהיה שם ולכן יטופל כמו שם (שם, לפחות באינטרנט הציבור, יהיה פשוט NXDOMAIN). - Håkan Lindqvist
זה לא ממש עונה על השאלה של OP. אתה בעצם אומר "כי ככה זה". - dr01
@ dr01 בהתחשב בכך שהשאלה ממחישה בבירור את היותה לא מודעת ל "הדרך בה היא" ("אתה לא צריך להצביע על רשומת MX ​​בכתובת IP ישירות, אבל במקום זאת יש להפנות אותה לרשומה A" כאשר זה למעשה לא אפשרות יש כל ערך אחר מאשר שם), אני לא חושב שזה לא המקום להצביע על האופן שבו הדברים ולמה זה עושה כל אפשרות אחרת בלתי אפשרית. אני מקבל את ההרגשה שאתה קורא הרבה לתוך השאלה כי הוא לא ממש שם. - Håkan Lindqvist
@ dr01 כלומר, לא חושב שהשאלה קוראת שאלה אקדמית על החלטות העיצוב בימים הראשונים של DNS או משהו כזה, אבל פשוט שאלה על איך MX רשומות כי אכן קיים בעולם יכול או צריך לשמש. - Håkan Lindqvist


אני אשליך את זה כניחוש. כמובן, אני בבית עם שפעת אז אולי אני loopy.

RFC 974 קובע:

השלב הראשון עבור הדיוור ב LOCAL הוא להוציא שאילתה עבור RRs MX      עבור REMOTE. זה מאוד דחק כי צעד זה יינקטו בכל פעם      מיילר מנסה לשלוח את ההודעה. התקווה היא כי שינויים      את מסד הנתונים של הדומיין יהיה בשימוש במהירות על ידי הדיוורים, ובכך התחום      מנהלי מערכת יוכלו לנתב מחדש את המסרים במעבר      מארחים פגומים פשוט על ידי שינוי מסדי נתונים התחום שלהם.

על ידי דרוש שם במקום IP, זה מעודד בעוצמה זו בפועל. שמות יכולים להישאר זהים, ובמקרה של איזון עומסים או DR לא תצטרך להיות מודאגים לגבי שינוי רשומת ה- MX עצמה ומחכה להפצת DNS.


6
2018-01-28 17:40



תשובות מחסנית שאלות על יום החופשה שלך בזמן שאתה חולה עם שפעת ... אני טיפ הכובע שלי אליך, אדוני טוב! - Mike B
תודה @MikeB ... - TheCleaner


שרתי דואר אלקטרוני מסוימים (כגון exim) אינם מאפשרים לשלוח לרשומות MX שמפנות לכתובת IP טהורה, ולכן אתה נדרש להשתמש ב- FQDN כדי שיהיה תואם. הסיבה לכך היא שרוב השרתים מצפים שרשומת ה- MX תכיל שם מארח, לא כתובת IP (זהו רישום של רשומות A).

עריכה: כדי לפרט, ב- DNS כל רשומה יש דרישות קפדניות עבור סוג הנתונים כל רשומה יכולה להחזיק. במקרה של רשומות MX, זהו שם מארח רק.


2
2018-01-28 17:29



אז למה exim לא לאפשר רשומות MX הצבע על כתובת ה- IP מלכתחילה? נראה לי מוזר! אני מבין לא צריך בגלל כנס, אבל אני לא מבין למה זה נעשה בלתי חוקית. - dayuloli
אני לא רואה איך MTA יכול לתמוך בזה כ MX הרשומה לא יכולה להיות כתובת IP כמו הערך שלה. - Håkan Lindqvist
@ HåkanLindqvist התשובה שלך לעיל הבהיר את הנקודה הזו בשבילי! תודה! - dayuloli


ב - RFC 1025 רשומות MX מצביעות רק על RR (רשומת משאבים) של רשומה או CNAME.

אז שרת הדואר שולח את הדואר מבקש את RR של רשומת MX, רשומת mx רשומות רשומות של שרתים, שרת הדואר עושה בדיקה קדימה כדי לקבל רשומה ולאחר מכן להעביר את הדואר דרך smtp אל המארח שירות המפורטים שרת דואר 'מוכן' לקבל דואר עבור אותו תחום.

השאלה שלך - למה לא ניתן לשלוח דואר לכתובת IP

תגובה - בגלל אמון

רבים מן הכללים הקיימים לגבי הדואר התפתחו כדי לשמור על אמון בין תחומים כי הודעות שנשלחו הלוך ושוב הם למעשה תקף. כל זה הוא בסופו של דבר להפחית דואר זבל.

  • הפוך Lookups IP
  • בדיקת שם קדימה לצורך העניין

כל אלה רכיבים חיוניים עבור קרן לבנות שרת דואר על יש לפחות חלק קטן רכיב שנוסדה ביצירת תקשורת אמין והפחתת תקשורת לא מהימן.

הפניה - RFC 1035 ו 974

https://www.ietf.org/rfc/rfc1035.txt35

https://www.ietf.org/rfc/rfc974.txt


2
2018-01-28 17:42





המטרה של MXרשומות הוא זה יישום (העברת דואר) יכול ללמוד על המארח לשמש. ברמת היישום, המארח שמות הם הדבר הנכון לשימוש (לא כתובות IP).

כמו כן, הוספת המהירות של סוג רשומה וריאנט ל- DNS מציג לורל של סיבוך ולכן נקודת כניסה לבעיות, תקלות יישום, אתגרים ביטחוניים. לדוגמה, 1.2.3.4.example.com. הוא שם מארח תקף (כן, זה, גם לאור RFC1034, 3.5). ציון מארח זה כ MX בקובץ תצורה לאגד עבור example.com עשוי להיראות

.  MX 10  1.2.3.4

וכנראה שזה בדיוק אותו רשומת MX ​​עם IP צריך להיראות. ואפילו להעביר את informatoin ב datagram DNS דורש כמה additoins מוזרים; הדרך הפשוטה ביותר היא להציג חדש סוג רשומה משאב, MXA למשל, על דיסמביגאציה. אבל אז שוב, למה להציג את הנטל כזה סוג שיא חדש מתי

. MXA 10 5.6.7.8

תמיד יכול להיות מוחלף עם

. MX 10 dummy
dummy A 5.6.7.8

(ויהיה נתמך על ידי גם לקוחות DNS לא לדעת על MXA רשומות)


2
2018-01-31 21:49