סקירה כללית על רשומות DNS

בדף הזה מופיעה סקירה כללית של רשומות ורשימה של סוגי רשומות DNS ש-Cloud DNS תומך בהם, כולל סוג הרשומה המותאמת אישית ALIAS של Cloud DNS.

רשומת A היא מיפוי בין משאב DNS לבין שם דומיין. לכל רשומת DNS יש סוג (שם ומספר), אורך חיים (TTL) ונתונים ספציפיים לסוג.

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

רשומות של כתובות אימייל חלופיות

רשומת ALIAS היא סוג רשומה בהתאמה אישית ב-Cloud DNS, שפועלת כמו רשומת CNAME אבל אפשר להשתמש בה רק בנקודת השיא של האזור, והיא מגיבה רק לשאילתות של רשומת כתובת (A או AAAA). ספציפית, סוג הרשומה ALIAS ממפה שם דומיין חלופי לשם קנוני ומשתמש בשם הקנוני כדי לחפש את התשובה. סוג הרשומה הזה שימושי כשצריך התנהגות של CNAME בנקודת השיא. אי אפשר להציב רשומת CNAME בנקודת השיא כי היא לא יכולה להתקיים לצד אף סוג רשומה אחר, כולל רשומת ה-SOA שנדרשת בנקודת השיא של האזור.

רשומות ALIAS הן ספציפיות ל-Cloud DNS, והן אף פעם לא נחשפות ללקוח חיצוני ששולח שאילתות לאזורי Cloud DNS. מבחינת הלקוח, רשומת ALIAS מופיעה כתקן A או AAAA בתגובת ה-DNS. רשומות ALIAS לא תואמות ל-DNSSEC, ולכן אי אפשר להפעיל DNSSEC באזור עם רשומות ALIAS.

אפשר לנהל רשומות ALIAS כמו כל רשומה אחרת. כאן אפשר לקרוא איך לנהל רשומות.

תהליך פתרון השאילתות

רשומות Alias זמינות רק בתחומים ציבוריים של Cloud DNS.

ברשומות CNAME, מפענח ה-DNS אחראי לתרגום השם הקנוני. ברשומות ALIAS, שרת השמות של Cloud DNS פותר את השם הקנוני ומפיק רשומות A או רשומות AAAA סינתטיות כדי להחזיר למפענח DNS. רשומות A או AAAA המסונתזות כוללות את השם של רשומת ה-ALIAS עם כתובות ה-IP שנמצאו מפתרון היעד של רשומת ה-ALIAS. שרתי השמות של Cloud DNS משתמשים במקודדי ה-DNS הרקורסיביים הזמינים של Google כדי לפתור רשומות כינוי.

אם יעד הכינוי מפנה לסט של רשומות משאבים (RRSet) עם כמה כתובות, Cloud DNS מחזיר את כל הרשומות, אבל משנה את הסדר שלהן באופן אקראי לפני שהוא מחזיר את רשומת הכתובת הסינתטית. התהליך הזה דומה לאופן שבו Cloud DNS מטפל בתשובות משרתי השמות שלו.

רק רשומות כתובות מסונתזות במהלך תרגום היעד של רשומת ALIAS. שאילתות לרשומות ALIAS לא מחזירות רשומות CNAME ביניים שנמצאות בזמן התאמת נתונים (resolve) של היעד של רשומת ה-ALIAS. רשומות CNAME שנמצאות באמצעות מעקב CNAME לפני שמגיעים לרשומת ה-ALIAS מוחזרות ללא שינוי. אם רזולוציית היעד של רשומת ה-ALIAS נכשלת, כלומר מחזירה קוד תגובה שאינו NOERROR, שרת השמות של Cloud DNS מחזיר תגובה עם קוד SERVFAIL ללקוח שלו. אם הרזולוציה מניבה תגובה NODATA, שהיא תגובה NOERROR ללא רשומות כתובת, שרת השמות של Cloud DNS מחזיר תגובה NODATA.

כשמבצעים המרה של יעדים של רשומות ALIAS, ‏ Cloud DNS לא משתמש ברשת משנה של לקוח EDNS שסופקה על ידי הלקוח.

פרמטר אורך החיים (TTL) ושמירה במטמון

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

בדוגמה הבאה אפשר לראות איך נקבע ערך ה-TTL לרשומות של כתובות שנוצרו באמצעות סינתזה.

נניח שהרשומות הבאות מוגדרות באזור מנוהל של Cloud DNS:

example.com.    3600    SOA      ns.com.  admin.example.com. (...)
                86400   NS       ns.com.
                6000    ALIAS    test-cname.example.com.
test-cname      3000    CNAME    address.example.com.
address         5000    A        1.2.3.4

שאילתה לאזור הזה לגבי רשומת ה-A בכתובת example.com מחזירה תגובה שדומה לתגובה הבאה:

QUESTION SECTION
example.com.                  A

ANSWER SECTION
example.com.        3000      A      1.2.3.4

ערכי ה-TTL שנתקלים בהם במהלך הפתרון הם 6000 (עבור רשומת ה-ALIAS),‏ 3000 (עבור רשומת ה-CNAME) ו-5000 (עבור רשומת ה-A). מבין ערכי ה-TTL האלה, 3000 הוא הקטן ביותר, ולכן הוא מוחזר ברשומת הכתובת המסונתזת.

בדוגמה הזו מוצגות כל הרשומות באותו אזור כדי לפשט את הדברים, אבל הלוגיקה של ה-TTL זהה גם לפתרונות שקופצים בין אזורים שונים.

תשובה מהימנה

הביט המוסמך בתגובת ה-DNS מבוסס על השם הראשון בשרשרת (qname המקורי), בלי קשר לשאלה אם הנתונים שמשויכים לשם הזה נמצאים בשרת או שאוחזרו באמצעות פענוח של רשומת ALIAS.

טיפול בשגיאות

כדי לפתור רשומות ALIAS, ‏ Cloud DNS משתמש בשרתי שמות סמכותיים של צד שלישי כדי לקבוע את ההקצאות של DNS ולאחזר נתוני DNS שמתארחים חיצונית. אם Cloud DNS לא יכול לפתור יעד של רשומת ALIAS (התוצאה של רזולוציית היעד היא ערך שגיאה RCODE, כמו NXDOMAIN או REFUSED), הוא מחזיר תשובה SERVFAIL.ALIAS לדוגמה, אם יעד ALIAS לא קיים או שאי אפשר להגיע לשרתים הסמכותיים שלו, Cloud DNS מחזיר SERVFAIL.

מכיוון ש-SERVFAIL מספק מידע מוגבל על השגיאה, רישום ביומן של Cloud DNS כולל את הערך הספציפי RCODE שנתקל בו במהלך פתרון רשומת ALIAS, כדי לעזור לכם לפתור את הבעיות. מידע על השימוש ברישום ביומן של Cloud DNS

אם פענוח של יעד ALIAS מוביל לתגובה NODATA (תגובה ריקה עם NOERROR RCODE), ‏ Cloud DNS מחזיר NODATA. ALIAS רשומות תואמות לשאילתות A ו-AAAA, אבל היעד ALIAS יכול להכיל רק סוג אחד של רשומה. זו התנהגות צפויה ולא מתקבלת תשובה עם ערך שגיאה RCODE.

ייבוא וייצוא של רשומות

אתם יכולים לייבא ולייצא רשומות מקובץ אזור BIND או מקובץ YAML.

רשומות ALIAS לא נתמכות בקובצי BIND כי סוג הרשומה ALIAS הוא לא סוג רשומת DNS רגיל. ‫Cloud DNS מזהה את הרשומות האלה, אבל יכול להיות שתוכנות DNS אחרות שתואמות ל-BIND לא יזהו אותן.

רשומות ALIAS מיוצאות לקובצי YAML, שספציפיים ל-Cloud DNS, בפורמט הבא:

kind: dns#resourceRecordSet
name: DNS Name
rrdatas: RR Data
ttl: TTL
type: ALIAS

אפשר לייבא רשומות ALIAS מ-Cloud DNS מקובץ YAML בפורמט שמופיע למעלה.

אבטחה ופרטיות

שרתי שמות ציבוריים של Cloud DNS פותרים את יעד ה-ALIAS בשמכם, אבל אתם צריכים לוודא שהגדרתם את יעד ה-ALIAS בצורה נכונה. יעד ALIAS שגוי עלול לגרום לכך שהרשומות הציבוריות לא יפעלו כמו שצריך או שיחזירו כתובות IP לא רצויות.

מעקב אחרי אזורים מנוהלים

‫Cloud DNS מציע רישום ביומן של כל השאילתות לתחומים מנוהלים באמצעות Logging. בשדה האופציונלי alias_query_response_code במאגר היומנים של שאילתות DNS אפשר לתעד מידע על הסטטוס של רזולוציית שם ה-ALIAS, כי המידע הזה לא זמין בתגובת ה-DNS.

פרטים נוספים מופיעים במאמר בנושא צפייה ביומנים.

הפרמטר alias_query_response_code מוגדר רק אם השאילתה נפתרת באמצעות רשומת ALIAS. ערך של NoError מציין שרשומת ה-ALIAS נפתרה בהצלחה, וכל ערך אחר מייצג את השגיאה. הערך SERVFAIL יכול לייצג כל אחת מהבעיות הבאות:

  • אי אפשר להגיע לשרת השמות של היעד
  • פג הזמן הקצוב לפתרון לפני שנמצאה תשובה
  • אימות DNSSEC נכשל

בשדה qtype ברשומות היומן אין אפשרות ALIAS. אם שאילתת A או AAAA נענית באמצעות רשומת ALIAS, השדה qtype נשאר A או AAAA.

סוגי רשומות DNS נתמכים

‫Cloud DNS תומך בסוגי הרשומות הבאים.

לסוג הרשומה Enter
A

כתובת ה-IP המספרית של המארח, בפורמט עשרוני מנוקד של IPv4. סוג הרשומה A ממפה כתובת IPv4 לשם דומיין וקובע לאן מופנות הבקשות לשם הדומיין – לדוגמה, 192.0.2.91.

AAAA

כתובת ה-IP המספרית של המארח, בפורמט הקסדצימלי IPv6. סוג הרשומה AAAA (quad A) ממפה כתובת IPv6 לשם דומיין וקובע לאן מופנות הבקשות לשם הדומיין – לדוגמה, 2001:db8::8bd:1002.

ALIAS (תצוגה מקדימה)

רשומת כינוי (תצוגה מקדימה), שממפה שם דומיין חלופי לשם קנוני בנקודת השיא של האזור. רשומת כינוי נקראת גם רשומת ANAME או CNAME flattening.

אפשר להגדיר רשומות כינוי באמצעות ה-CLI של gcloud או Cloud DNS API. אי אפשר להגדיר רשומות כינוי באמצעות מסוף Google Cloud .

רשומת כינוי נקראת גם רשומת ANAME או CNAME flattening.

CAA

רשויות האישורים שמורשות להנפיק אישורים לדומיין הזה – לדוגמה, ca.example.net.

יוצרים רשומת CAA כדי לוודא שרשויות אישורים לא מורשות לא מנפיקות אישורים לדומיין שלכם.

CNAME

כינוי ה-DNS של רשומת A – לדוגמה, ftp.example.com הוא כינוי DNS ל-www.example.com. בדוגמה הזו, ftp.example.com הוא שירות שקיים באותו שרת כמו www.example.com. קישורים שמפנים אל ftp.example.com מקבלים את רשומת A של www.example.com.

אפשר גם להשתמש בסוג הרשומה CNAME כדי להפנות לשם דומיין שונה לחלוטין – לדוגמה, altostrat.com היא כתובת אימייל חלופית של DNS לכתובת www.example.com.

לפעמים, שרת שמות מגיב עם רשומת CNAME ורשומת A שאליה מתייחס ערך ה-CNAME. ההתנהגות הזו נקראת CNAME chasing.

אם נתקלתם בבעיות ביצירת רשומת CNAME, כדאי לעיין במאמר בנושא רשומת CNAME שמוגדרת באזור פרטי לא פועלת .

DNSKEY

המפתח הציבורי של DNSSEC שמשמש את מקודדי ה-DNS כדי לאמת את האותנטיות של רשומות באמצעות מפתחות ZSK ו-KSK.

לדוגמה, 7200 IN DNSKEY 256 3 8 AwEAAarQO0FTE/l6LEKFlZllJIwXuLGd3q5d8S8NH+ntOeIMN81A5wAI.

בדוגמה הזו, 7200 הוא ה-TTL, ‏ 256 הוא הייצוג העשרוני של הסימונים DNSKEY, ‏ 3 הוא מחוון הפרוטוקול של DNSSEC, ו-8 הוא האלגוריתם הקריפטוגרפי RSA/SHA-256 שמשמש למפתח.

אפשר להוסיף את סוג הרשומה הזה רק באזור ציבורי שמופעל בו DNSSEC ושנמצא במצב Transfer. מידע נוסף זמין במאמר ניהול ההגדרה של DNSSEC.

DS

טביעת האצבע של מפתח DNSSEC עבור אזור מוקצה מאובטח.

לדוגמה, 7200 IN DS 31523 5 1 c8761ba5defc26ac7b78e076d7c47fa9f86b9fba. בדוגמה הזו, 7200 הוא ה-TTL,‏ 31523 הוא תג המפתח, 5 הוא האלגוריתם ו-1 הוא סוג התקציר.

אפשר להוסיף את סוג הרשומה הזה רק באזור ציבורי. סוג הרשומה הזה לא מפעיל DNSSEC לאזור שהוקצה אלא אם מפעילים (ומאשרים) DNSSEC לאזור הזה. ‫DNSSEC לא מופעל כברירת מחדל באזורים.

HTTPS

רשומה של HTTPS Service Binding, שמאפשרת למקור לציין כמה נקודות קצה חלופיות, שלכל אחת מהן משויכים פרמטרים. הרישום הזה גם מפנה HTTP ל-HTTPS.

לדוגמה, 1 . alpn=h2, h3 כאשר 1 היא העדיפות של השירות (SvcPriority), שהיא 0 עבור כינויים ו-1-65535 עבור תיאורי שירות, . הוא TargetName (נקודה אם זהה לשם הבעלים), ו-alpn=h2, h3 הם פרמטרים של השירות (SvcParams) שמורכבים מזוגות של מפתח-ערך שמתארים את נקודת הקצה של היעד, מופרדים ברווחים.

סוג הרשומה HTTPS מבוסס על סוג הרשומה הכללי יותר SVCB ומשתמש באותו פורמט ערכים.

IPSECKEY

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

לדוגמה, 10 1 2 192.0.2.1 AQNRU3mG7TVTO2BkR47usntb102uFJtugbo6BSGvgqt== כאשר 10 הוא סדר העדיפות, וערכים נמוכים יותר מייצגים עדיפות גבוהה יותר, 1 הוא סוג השער, 2 הוא סוג האלגוריתם ו-192.0.2.1 הוא השער.

מידע נוסף זמין ב-RFC 4025.

MX

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

לדוגמה: 1 mail.example.com. כאשר 1 הוא מספר ההעדפה.

שרתי SMTP מעדיפים שרתים עם מספרי עדיפות נמוכים יותר, כאשר 0 הוא מספר העדיפות הנמוך ביותר שאפשר להזין.

רשומת ה-MX שאתם מזינים חייבת להסתיים בנקודה (.).

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

לדוגמה, כדי להפנות את האימייל לחשבון Google Workspace, צריך להזין את הטקסט הבא: 1 SMTP.GOOGLE.COM.

NAPTR

הכללים של מצביע רשות השמות שמשמשים למיפוי שמות משאבים אחידים (URN) על ידי אפליקציות של מערכת דינמית לאיתור העברה (DDDS). אפליקציות של DDDS משתמשות בסוג הרשומה NAPTR כדי להמיר או להחליף ערך אחד בערך אחר כדי למצוא URN.

בדוגמה, 100 10 "u" "sip+E2U" "!^.*$!sip:information@example.com!i ." 100 הוא הסדר שבו צריך לעבד את רשומות ה-NAPTR, ‏ 10 הוא ההעדפה שמציינת את סדר העיבוד כשערכי הסדר ברשומות זהים,‏ "u" הוא דגל ששולט בהיבטים של השכתוב והפרשנות של השדות ברשומה, ‏ ""sip+E2U הם שירותים, ו-"!^.*$!sip:information@example.com!i" הוא הביטוי הרגולרי (RegEx) שכולל ביטוי החלפה שמוחל על המחרוזת המקורית שמוחזקת על ידי הלקוח כדי ליצור את בדיקת הדומיין הבאה. לבסוף, . הוא ה-Replacement, כלומר שם הדומיין הבא שצריך לבצע לגביו שאילתה, בהתאם לערכים הפוטנציאליים שנמצאו בשדה flags.

מידע נוסף זמין ב-RFC 3403.

NS

שם ה-DNS של שרת השמות המוסמך שמספק שירותי DNS לדומיין או לתת-הדומיין. רשומות NS צריכות להיות זהות לשרתי השמות של האזור – לדוגמה, ns-1.example.com.

PTR

שם הדומיין שמוגדר במלואו (FQDN) או השם הקנוני של הדומיין שממופה לכתובת IP – לדוגמה, server-1.example.com.

בדרך כלל משתמשים בסוג הרשומה PTR לחיפושים הפוכים.

SOA

רשומת Start of Authority, שמציינת מידע מהימן על תחום DNS. כשיוצרים אזור מנוהל, נוצרת רשומת SOA. אפשר לשנות את הרשומה לפי הצורך (לדוגמה, אפשר לשנות את המספר הסידורי למספר שרירותי כדי לתמוך בניהול גרסאות לפי תאריכים).

לדוגמה: ns-cloud-c1.googledomains.com. cloud-dns-hostmaster.google.com 1 21600 3600 259200 300 כאשר ns-cloud-c1.googledomains.com. הוא MNAME, cloud-dns-hostmaster.google.com הוא RNAME, 1 הוא SERIAL,‏ 21600 הוא REFRESH, 3600 הוא RETRY,‏ 259200 הוא EXPIRE ו-300 הוא MINIMUM.

מידע נוסף זמין ב-RFC 1035.

SPF

סוג הרשומה SPF הוצא משימוש. במקום זאת, צריך להשתמש ברשומות TXT שמתחילות ב-v=spf1. תוכנות אימייל מודרניות לא משתמשות ברשומות מסוג SPF.

SRV

הנתונים שמציינים את המיקום (שם המארח ומספר היציאה) של שרתים בשירות מסוים.

לדוגמה, 0 1 587 mail.example.com כאשר 0 הוא העדיפות של המארח היעד, 1 הוא המשקל ו- 587 הוא מספר היציאה.

מידע נוסף זמין ב-RFC 2782.

SSHFP

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

לדוגמה, 2 1 123456789abcdef67890123456789abcdef67890 כאשר 2 הוא מספר האלגוריתם של שרת ה-SSH,‏ 1 הוא מספר סוג טביעת האצבע ו-123456789abcdef67890123456789abcdef67890 היא טביעת האצבע.

SVCB

רשומה של Service Binding, שמאפשרת לשירות לוגי לציין כמה נקודות קצה חלופיות, שלכל אחת מהן משויכים פרמטרים.

לדוגמה, 0 alias-target.example.com כאשר 0 הוא העדיפות של השירות (SvcPriority), שהוא 0 עבור כינויים ו-1-65535 עבור תיאורי שירות.

למקורות HTTPS, אפשר לעיין בסוג הרשומה HTTPS.

TLSA

פרטי שיוך האישור של רשומת TLSA של אימות מבוסס-DNS של ישויות בעלות שם (DANE).

רשומת TLSA מכילה מידע שמשמש לאימות אישורי X.509 (כמו אישורים שמשמשים ל-HTTPS) בלי להסתמך על אחת מרשויות האישורים (CA) שמוגדרות מראש שחותמות עליהם.

לדוגמה, 1 1 2 92003ba34942dc74152e2f2c408d29ec. בדוגמה הזו, 1 הראשון הוא מחוון הפרוטוקול של DNSSEC, ‏ 1 השני הוא המפתח הציבורי, ו-2 הוא האלגוריתם הקריפטוגרפי RSA/SHA-256 שמשמש את המפתח.

אפשר להשתמש בסוג הרשומה הזה רק אם הפעלתם DNSSEC לאזור.

TXT

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

רשומת TXT יכולה להכיל מחרוזת טקסט אחת או יותר. האורך המקסימלי של כל מחרוזת הוא 255 תווים. אם נתוני הרשומה גדולים מ-255 בייט, צריך לחלק את הרשומה למחרוזות של 255 בייט ולהוסיף מרכאות לכל מחרוזת – לדוגמה, "String one 255 bytes" "String two 255 bytes".

סוכני אימייל וסוכני תוכנה אחרים משרשרים כמה מחרוזות.

מקיפים כל מחרוזת במירכאות – לדוגמה, "Hello world" "Bye world".

לכל רשומת TXT יש מגבלה של 1,000 תווים. אם אתם צריכים להגדיל את המגבלה הזו, אתם יכולים לפנות Google Cloud לתמיכה.

המאמרים הבאים