לדלג לתוכן

מה זה DNS ואיך הוא עובד - ההסבר הכי פשוט שתמצאו

אתם מקלידים google.com בדפדפן, לוחצים אנטר, ותוך שנייה האתר עולה. פשוט, נכון? בפועל, מאחורי הקלעים קרה תהליך שלם, וברוב הפעמים שאנשים אומרים "האינטרנט נפל" הבעיה האמיתית היא הרבה יותר ממוקדת - ה-DNS נפל. אז בואו נבין מה זה בכלל.

הבעיה ש-DNS פותר

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

DNS, ראשי תיבות של Domain Name System, הוא בעצם המתרגם. הוא לוקח שם שקל לזכור, כמו amittech.dev, והופך אותו לכתובת IP שהמחשב שלכם באמת צריך כדי להתחבר לשרת. אפשר לחשוב עליו כמו על ספר טלפונים ענק ומבוזר של כל האינטרנט.

איך זה עובד בפועל, שלב אחרי שלב

כשאתם מקלידים כתובת אתר ולוחצים אנטר, קורה משהו כזה:

  1. המחשב שלכם בודק אם הוא כבר יודע את התשובה. יש לו זיכרון מטמון (cache) מהפעמים הקודמות. אם הוא כבר פתר את הכתובת לאחרונה, הוא פשוט משתמש בתשובה השמורה ומדלג על כל התהליך.
  2. אם לא, הוא פונה לשרת DNS. בדרך כלל זה שרת שהוגדר אצל ספק האינטרנט שלכם, או שרת ציבורי כמו 8.8.8.8 של גוגל או 1.1.1.1 של קלאודפלייר.
  3. שרת ה-DNS מחפש את התשובה. אם אין לו אותה שמורה, הוא שואל שרשרת שלמה של שרתים אחרים - קודם שרתי השורש (root servers), אחר כך את השרתים שאחראים על הסיומת (כמו com. או dev.), ולבסוף את שרת השמות הרשמי (authoritative) של הדומיין הספציפי.
  4. התשובה חוזרת. שרת ה-DNS מקבל את כתובת ה-IP, מחזיר אותה למחשב שלכם, ושומר אותה בזיכרון לזמן מה כדי לחסוך בדיקות חוזרות.
  5. המחשב מתחבר ישירות ל-IP. רק עכשיו, אחרי כל התהליך הזה שלוקח לרוב פחות משנייה, הדפדפן שלכם באמת פונה לשרת ומתחיל לטעון את האתר.

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

למה כשה-DNS נופל, נדמה שהכל נפל

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

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

טיפ שימושי: אם אתר לא עולה, נסו לפנות ישירות לכתובת ה-IP שלו (אם אתם יודעים אותה) או להחליף לשרת DNS ציבורי כמו 1.1.1.1. אם זה פותר את הבעיה, ידעתם בדיוק איפה זה נשבר.

רשומות DNS שכדאי להכיר

DNS לא שומר רק כתובות IP. יש כמה סוגי רשומות עיקריים ששווה להכיר:

  • A - מקשרת שם דומיין לכתובת IPv4.
  • AAAA - אותו דבר, אבל לכתובת IPv6.
  • CNAME - מפנה משם דומיין אחד לשם דומיין אחר (למשל www.אתר.com מפנה ל-אתר.com).
  • MX - מגדירה לאיזה שרת צריך לשלוח מייל עבור דומיין מסוים.
  • TXT - שדה טקסט חופשי, משמש לעיתים קרובות לאימות בעלות על דומיין.

אם אי פעם תגדירו אתר או שרת משלכם, אלה הרשומות שתמצאו את עצמכם עורכים.

למה שווה להבין את זה לעומק

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

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

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

יש לכם שאלה באמצע הלימוד? בואו לדסקורד ותשאלו.

הצטרפו לקהילה בדיסקורד

לסיכום

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