בדף הזה מתוארות הודעות שגיאה נפוצות שעשויות להופיע במהלך השימוש ב-Cloud DNS, המשמעות שלהן והפעולות המומלצות לפתרון השגיאות.
שגיאות כלליות
בקטע הזה מתוארות שגיאות כלליות.
alreadyExists
המשאב שצוין כבר קיים. לא ניתן ליצור עותק כפול.
הפעולה המומלצת: כשיוצרים משאב, משתמשים ב-get/list
API המתאים כדי לבדוק אילו משאבים כבר קיימים.
אם מופיעה השגיאה הזו בזמן הוספת רשומות, הסיבה לכך היא שמערכת Analytics מתייחסת לכל רשומה כקבוצת רשומות. כלומר, כל רשומה (אם יש כמה רשומות) פועלת כרשומה נפרדת. אפשר להוסיף שני ערכים או מחרוזות לקבוצת הרשומות של אותו שם של מערכת שמות הדומיינים (DNS) על ידי הוספת רווח בין הערך הראשון לערכו השני.
למידע נוסף על פתרון השגיאה הזו, ראו תיקון שגיאות של רשומות מתנגשות.
accessNotConfigured
לא הוגדרה גישה
כדי לפתור את השגיאה הזו, צריך להפעיל את Cloud DNS API בפרויקט.
inactiveBillingState
לא ניתן לקבל בקשות בפרויקט
example_project
במצב חיוב לא פעיל. ייתכן שיעברו כמה דקות עד שהסטטוס של החיוב יתעדכן.
הפעולה המומלצת: מפעילים את החיוב בפרויקט. כדי להפעיל חיוב בפרויקט חדש או להפעיל מחדש את החיוב בפרויקט קיים, פועלים לפי השלבים המתאימים במאמר הפעלת חיוב בפרויקט.
preconditionFailed
זוהי שגיאה כללית שמציינת שמשהו בבקשה לא תואם למצב הנוכחי של משאב השרת. הלקוח צריך לבצע פעולה כלשהי כדי לתקן את הבעיה ולנסות שוב. מצב כזה יכול לקרות אם שולחים בקשת שינוי מסוג create
שמנסה למחוק קבוצת רשומות משאבים שלא תואמת לקבוצה שכבר קיימת (באותו שם ובאותו סוג).
קוראים את המצב הנוכחי של הדומיין ומחליטים מה רוצים למחוק. יכול להיות שהיא השתנתה מאז הפעם האחרונה שבדקתם אותה.
הודעת השגיאה כוללת את הנתיב לחלק הבעייתי בבקשה. לדוגמה, הערך entity.change.deletions[6]
מתייחס לאלמנט השביעי במערך deletions
של אובייקט השינוי בגוף הבקשה של ה-POST.
הפעולה המומלצת: צריך לתקן את החלק בבקשה שסומן כבעייתי.
required
זוהי שגיאה כללית שמציינת שחלק חסר בבקשה. לדוגמה, בבקשה ליצירת תחום מנוהל צריך לציין שם, שם DNS ותיאור. אם אחד מהשדות האלה חסר, הבקשה נכשלת עם השגיאה הזו.
הפעולה המומלצת: ממלאים את הפרמטר הנדרש ומנסים שוב.
notFound
המשאב שצוין לא קיים.
הפעולה המומלצת: מוודאים שמשתמשים בשם של משאב קיים.
quotaExceeded
השגיאה הזו מופיעה כששינוי צפוי יגרום לחריגה מהמכסה הנוכחית.
המכסה משויכת לפרויקט. לדוגמה, מותר ליצור רק מספר מסוים של קבוצות של רשומות משאבים בכל תחום. אם אתם זקוקים להגדלת המכסה, תוכלו לפנות לצוות Trusted Cloud המכירות. לפרויקטים חדשים יש מכסת ברירת מחדל כפי שמפורט במאמר מכסות ומגבלות של משאבי Cloud DNS.
כל המאפיינים השונים שיש ל-DNS מגבלות עליהם מפורטים בפעולה Projects.get
.
הפעולה המומלצת: כדאי לבדוק את הפרויקט כדי להבין למה אתם כבר משתמשים בכמות גדולה כל כך של המשאב הזה. אפשר לבקש הגדלה של המכסה לפרויקט בדף Quotas במסוף Trusted Cloud של הפרויקט. אפשר גם לעיין במאמר בקשה לשינוי מכסה.
שגיאות שקשורות לתחומים מנוהלים
בקטע הזה מפורטות שגיאות שקשורות לתחומים מנוהלים.
invalidFieldValue
ערך לא חוקי בשדה
entity.managedZone.name
.
ייתכן שהפעולה של יצירת תחום מנוהל תיכשל עם השגיאה הזו אם שם תחום המנוהל לא מתחיל באות, לא מסתיים באות או בספרה, ורק מכיל אותיות קטנות, ספרות או מקפים.
managedZoneDnsNameNotAvailable
האזור המנוהל שצוין לא זמין, ולכן לא ניתן ליצור אותו.
הפעולה של יצירת תחום מנוהל עשויה להיכשל עם השגיאה הזו מהסיבות הבאות:
- שם ה-DNS של האזור המוצע שמור, לדוגמה, dot (
.
),.com
או.co.uk
. - אין יותר שרתי שמות זמינים לאירוח שם ה-DNS של הדומיין. ב-Cloud DNS נעשה שימוש במאגר של שרתי שמות, והמאגר הזה מוגבל. שאילתה של DNS לכל שרת שמות חייבת למפות באופן חד-משמעי לאזור מנוהל אחד. פרטים נוספים זמינים במאמר מגבלות של שרתי שמות.
הפעולה המומלצת: אם אתם הבעלים הרשומים של שם ה-DNS המדובר, כדאי לבדוק אם יש שטחי חפיפה בין תחומים. כדי להגדיר DNS לדומיין ולתת-הדומיינים שלו, מומלץ קודם ליצור תחום הורה יחיד ולהוסיף רשומות לכל תת-דומיין באותו תחום.
verifyManagedZoneDnsNameOwnership
מאמתים את הבעלות על הדומיין
example.com
(או על דומיין הורה) ומנסים שוב.
הפעולה המומלצת: אם מופיעה השגיאה הזו, עליכם לאמת את הבעלות על הדומיין ולנסות שוב.
שגיאות שקשורות לרשומות מנוהלות
השגיאות בקטע הזה קשורות לרשומות.
containerNotEmpty
לא ניתן למחוק את המשאב שצוין כי הוא לא ריק.
הפעולה המומלצת: אם רוצים למחוק את המשאב, צריך קודם לרוקן אותו.
invalidZoneApex
קבוצת רשומות המשאבים שצוינה לא תקינה כי אזור חייב להכיל בדיוק קבוצת רשומות משאבים אחת מסוג מסוים בקודם העליון.
Apex
בהקשר של DNS הוא שם ה-DNS עם מספר התוויות הנמוך ביותר שמורשה באזור. הוא גם החלק העליון בהיררכיית הדומיין.
הקודקוד של תחום הוא שם ה-DNS שווה ל-ManagedZone.dnsName
.
השגיאה הזו מופיעה אם ניסיתם לבצע שינוי שמפר את כלל ה-DNS שלפיו אזור חייב להכיל בדיוק קבוצה אחת של רשומות משאבים מסוג מסוים בחלק העליון. הפעולות הבאות עלולות לגרום לשגיאה הזו:
- ניסיתם למחוק את סט רשומות המשאבים הנדרש של
NS
בחלק העליון. - ניסיתם למחוק את סט רשומות המשאבים הנדרש של
SOA
בחלק העליון. - ניסיתם ליצור קבוצת רשומות משאבים מסוג
SOA
לא בפסגה.
הפעולה המומלצת: אם מופיעה השגיאה הזו, סימן שאתם מנסים לעשות משהו שאסור לפי כללי ה-DNS. בודקים אם יש טעויות בבקשה. אין צורך למחוק את קבוצות רשומות המשאבים הנדרשות.
invalidRecordCount
קבוצת רשומות המשאבים
entity.change.additions[XX]
יכולה לכלול רק רשומה אחת כי היא מסוג<SOA_OR_CNAME>
.
לפי הכללים של DNS, אפשר לכלול רק רשומת משאב אחת בסט של רשומות המשאבים SOA
ו-CNAME
. השגיאה הזו מופיעה אם מנסים ליצור שינוי שמפר את הכללים האלה. לדוגמה:
{
kind: "dns#rrset"
name: "blog.foo.com.",
type: "CNAME",
rrdata: [ "www.foo.com.", "www2.foo.com." ],
...
}
הפעולה המומלצת: אם מופיעה השגיאה הזו, צריך לבדוק את הבקשה. אתם מנסים לעשות משהו שאסור.
cnameResourceRecordSetConflict
קבוצת רשומות המשאבים
entity.change.additions[XX]
לא חוקית כי לשם ה-DNSexample.com
יכולה להיות קבוצה אחת של רשומות משאבים מסוג CNAME או קבוצות של רשומות משאבים מסוגים אחרים, אבל לא את שניהם.
השגיאה הזו מתרחשת כשיוצרים שני סוגים של קבוצות של רשומות משאבים, למשל גם רשומת A וגם רשומת CNAME לאותו שם DNS. סיבה נפוצה לשגיאה הזו היא ניסיון ליצור רשומת CNAME בחלק העליון של הדומיין. לא ניתן לעשות זאת כי זה יגרום להתנגשות עם הרשומות הנדרשות SOA
ו-NS
באותו שם.
הפעולה המומלצת: בוחרים באפשרות אחת.
wildcardNotAllowed
הסוג של קבוצת רשומות המשאבים שצוינה שגוי כדי שאפשר יהיה להשתמש בה כתובת Wildcard.
ב-DNS, תו כללי לחיפוש הוא סוג מיוחד של קבוצת רשומות משאבים שמתאימה לבקשות לשמות דומיין לא קיימים. אחת המגבלות של Cloud DNS היא שלא ניתן ליצור קבוצת רשומות של משאבים מסוג NS
עם תו Wildcard.
הפעולה המומלצת: בשלב זה אין תמיכה בקבוצות של רשומות משאבים מסוג NS
עם תו כללי לחיפוש. אפשר לפנות אל התמיכה של Cloud DNS או להצטרף לקבוצה cloud-dns-discuss ולשתף את מה שאתם מנסים להשיג.
recordTypeDisallowedAtZoneApex
רשומת המשאב שצוינה לא יכולה להתקיים לצד סוג רשומה אחר, כולל רשומת
SOA
שנדרשת בחלק העליון של הדומיין.
לא ניתן להציב רשומת משאבים מסוג CNAME
בקודקוד כי היא לא יכולה להתקיים לצד סוג אחר של רשומת משאבים, כולל רשומת המשאבים SOA
שנדרשת בקודקוד האזור.
הפעולה המומלצת: משתמשים ברשומת משאבים מסוג ALIAS
. רשומת משאב מסוג ALIAS
היא סוג של רשומה בהתאמה אישית ב-Cloud DNS שפועלת כמו רשומת משאב מסוג CNAME
, אבל אפשר להשתמש בה רק בחלק העליון של הדומיין (apex) והיא מגיבה רק לשאילתות של רשומות כתובת (A או AAAA). מידע נוסף זמין במאמר רשומות ALIAS.
invalidValue
זוהי שגיאה כללית שמציינת שמשהו בבקשה שלכם לא תקין, ללא קשר למצב השרת. הודעת השגיאה כוללת את הנתיב לחלק הבעייתי בבקשה, וגם את הערך הלא תקין. יכולות להיות הרבה סיבות לשגיאה הזו, למשל:
- ציינת קבוצת רשומות משאבים עם שם לא חוקי. לדוגמה, השם
foo...bar
הוא לא שם DNS תקין (תווית אמצעית ריקה). - ציינת קבוצת רשומות משאבים עם סוג לא חוקי. לדוגמה, A ו-CNAME הם סוגי רשומות חוקיים, אבל XXX הוא לא סוג חוקי.
- ציינת קבוצת רשומות משאבים ללא רשומות.
- ציינתם נתונים לא תקינים של רשומות משאבים. לדוגמה,
1.1.1.1
הוא נתונים תקינים של רשומת משאב מסוג A. XXX הם נתונים לא חוקיים של רשומת משאב מסוג A. - ציינת קבוצת רשומות משאבים עם ערך TTL לא חוקי. ערך ה-TTL חייב להיות מספר שלם לא שלילי.
- ציינת שם משאב ארוך מדי.
הפעולה המומלצת: צריך לתקן את הבקשה.
המאמרים הבאים
- מידע נוסף על התכונות זמין במאמר סקירה כללית על Cloud DNS.
- במאמר פתרון בעיות מפורטות פתרונות לבעיות נפוצות שעשויות להתרחש במהלך השימוש ב-Cloud DNS.
- לקבלת עזרה נוספת, אפשר לעיין במאמר תמיכה.