הפוסט הזה מיועד כחומר עזר לסטודנטים הלומדים אבטחת מידע וצנזורה לאנשים חסרי רקע טכנולוגי. ההבנה באיך רשת מחשבים עובדת, מה זו כתובת IP ואיך ניתוב ו-DNS עובד היא קריטית להבנה איך חלק מהמתקפות עובדות ובכללן התקפות על חופש הביטוי.
סטודנטים המעונינים ללמוד באופן מקיף איך תקשורת מחשבים עובדת מוזמנים לקורס הרלוונטי ב-campus.il. המאמר הזה אינו מיועד ללימוד מקיף של תקשורת בין מחשבים אלא כחומר רקע בלבד.
כיצד מחשב יכול לדבר עם מחשב אחר
תקשורת בין מחשבים היא בדיוק כמו תקשורת בין בני אדם – בתקשורת בין בני אדם יש לנו את משה ואת רבקה והם צריכים לדבר. איך הם מדברים? באמצעות גלי קול שעוברים באוויר. רבקה מזיזה באמצעות מיתרי הקול שלה אוויר והתנודות מגיעות לאוזניים של משה. וההיפך: משה מזיז אוויר עם מיתרי הקול שלו והתנודות מגיעות לאוזניים של רבקה.
גם מחשבים מתקשרים בדיוק אותו דבר – רק שאין לנו במקרה הזה אוזניים ופה אלא כבילה – כבלים שעוברים ממחשב אחד למחשב שני. אנחנו יכולים לחבר שני מחשבים אחד לשני ולשלוח תקשורת אחד לשני.
העניין מתחיל להסתבך כאשר יש לנו כמה מחשבים. מה יקרה למשל אם יש 10 מחשבים בעסק שלנו? האם נחבר את כולם אחד לשני? זה יהיה טירוף! תחשבו על כמות החוטים שצריך כדי לחבר כל מחשב לעשרת המחשבים האחרים 😱
וכמובן על הבלגן שיהיה לנו כאשר נרצה לחבר עוד מחשב אחד 😱 או עוד עשרה מחשבים 😱😱😱😱
רשת מחשבים בסיסית ונתב
פתרון טוב הוא ליצור רשת יותר מסודרת. איך עושים את זה? נשתמש ביחידה מרכזית, שאליה יחובר כל מחשב – והיא זו שתקשר בינהם. ליחידה המרכזית הזו אנו נקרא ״נתב״ או ראוטר. ואם זה מזכיר לכם משהו – אתם צודקים. זה בדיוק הנתב שיש לכם בבית שהתפקיד שלו הוא לנתב את התנועה בין המחשבים שיש בבית – הרשת הביתית.
אם מחשב אחד ברשת רוצה לדבר עם השני, הוא פונה אל הנתב. אבל איך מסדרים את התנועה? הנתב מעניק לכל מחשב ברשת כתובת מיוחדת. הכתובת הזו נקראת כתובת IP – ראשי תבות של Internet Protocol. אם למשל למחשב מסוים ניתנה כתובת ששמה הוא 10.0.0.3 ולמחשב שני ניתנה כתובת ששמה הוא 10.0.0.4, אז המחשבים יתקשרו בינהם כאשר הנתב יעביר את המידע בהתאם לכתובת. ממש כמו דוור.
מה שבנינו עכשיו זו רשת אינטרנט פנימית. נקראת גם אינטראנט. רשת של מחשבים או התקנים, כי מחשב יכול להיות גם טלפון נייד, מדפסת, שואב אבק חכם, מקרר חכם, טאבלט ובעצם כל דבר שמתחבר לאינטרנט. כל המחשבים יכולים לדבר אחד עם השני ולכל אחד יש כתובת פנימית ייחודית לו שמוקצית על ידי הנתב.
גם אתם יכולים לבדוק את כתובת ה-IP הפנימית שלכם! במחשב זה ממש קל.
במק נכנסים לטרמינל וכותבים ifconfig.
חיבור לאינטרנט
עכשיו נדבר על האינטרנט – באינטרנט אין לנו מחשב מרכזי אחד כמו הנתב אלא מדובר בתקשורת בין רשתות מחשבים שונות. הנתב שלנו יתחבר לספק האינטרנט וספק האינטרנט יוכל לחבר אותנו לעולם.
בעבר היה מכשיר יעודי שהתחבר לספקית ששמו היה מודם. כיום כמעט כל הנתבים יכולים להתחבר עצמאית לספקית ולפיכך קוראים להם מודם/נתב. נתב עם יכולות להתחברות לסיב אופטי או כל דרך אחרת שבה הספקית עובדת.
ספקית האינטרנט היא הצינור שדרכה אנחנו יכולים לבצע תקשורת עם מחשבים אחרים בעולם. ספקית האינטרנט שלנו מקצה לנו כתובת IP חיצונית שדרכה אנחנו מתחברים למחשב אחר. למשל, אנחנו נקבל כתובת IP שהיא 87.71.147.17 וכל מי שירצה להתחבר אלינו יוכל לבקש מהמחשב שלו לפנות לכתובת הזו.
גם אתם יכולים לבדוק את כתובת ה-IP החיצונית שלכם! הקלידו whats my IP בגוגל ותוכלו לראות אותה. אפשר להעזר גם בסרטון הבא:
אז ככה שלכל מחשב בעצם יש שתי כתובות IP – כתובת אחת פנימית וכתובת אחת חיצונית כאשר הכתובת החיצונית משותפת לכל המחשבים ברשת הפנימית.
בדיקת הבנה
חושבים שהבנתם? נסו את השאלון הזה!
רשת WiFi
רשת WiFi אינה שונה מהותית מחיבורים בכבלים. אנו פשוט משתמשים בנתב שיודע לתקשר בפרוטוקול אלחוטי מיוחד. התקשורת היא כמו כבילה והנתב מספק כתובת IP. באופן עקרוני אין שום מניעה גם לספקית לעבוד באופן אלחוטי – כך למשל סטארלינק עובדת באמצעות לווין. אך עדיין כתובות ה-IP עובדות באופן זהה.
התקשורת עם אתר אינטרנט
כל מחשב המחובר לרשת מקבל כתובת IP. אתר אינטרנט הוא בעצם תוכנה היושבת על מחשב. המחשב יכול להיות מחשב חזק או חלש – עם מערכת הפעלה מבוססת חלונות, מק או לינוקס. המחשב שיכול לקבל תנועת אינטרנט נקרא שרת (באנגלית server). חשוב לזכור ששרת אינטרנט הוא מחשב לכל דבר. אני יכול להתקין אתר אינטרנט על כל מחשב, גם מחשב ביתי. כאשר אנו מתחברים לאתר, אני בעצם מבקש מהמחשב שלי להתחבר לכתובת ה-IP שלו.
כאשר אנו מתחברים לשרת, הוא רואה את כתובת ה-IP החיצונית שלי, אך לא את זו הפנימית. אנחנו יכולים לדעת את כתובת ה-IP החיצונית שלו, אך לא את זו הפנימית.
על מנת לדעת מה כתובת האתר אנחנו יכולים לעשות כמה פעולות – ראשית – להשתמש באתרים יעודיים. כמו למשל https://www.nslookup.io/website-to-ip-lookup או ממש דרך המחשב – דרך ה-cmd נקליד ping, רווח ואז את כתובת האתר. המידע שנקבל הוא כתובת ה-IP של המחשב שעליו מאוחסן האתר.
לכל ישות המחוברת לרשת יש כתובת IP. בין אם מדובר בשרת אינטרנט המכיל אתר אינטרנט, שרת משחקים, שרת שמבצע הזרמה של סרטים, שרת המאפשר צ׳אט – לכל מחשב המחובר לרשת יש כתובת IP חיצונית. כמובן שיכול להיות שיהיו כמה מחשבים שיחלקו כתובת IP חיצונית אחת כפי שראינו. אם תתחברו לרשת של האוניברסיטה – תוכלו לראות שכתובת ה-IP החיצונית שלכם ושל החבר שלכם היא זהה. אך זו הפנימית היא שונה.
פקטת מידע
המידע עובר באמצעות מה שנקרא ״פקטות״ או חבילות. זה המונח המקצועי לחבילת נתונים בגודל מסוים שנשלחת. כשאנחנו מדברים על מידע, אנחנו מדברים על פקטות שנשלחות.
ביחנו את עצמכם ותראו אם אתם יכולים לסדר את מסלול הפקטה מהמחשב אל האתר ובחזרה:
זהו! כעת אתם יודעים איך כתובת ה-IP עובדת. השלב הבא הוא ללמוד על איך DNS ושם מתחם עובדים.
6 תגובות
כמה שאלות לא נכונות/מדויקות מספיק בשאלון :
איך מחשבים מתקשרים ביניהם ברשת מקומית
מי מקשר בין המחשבים ברשמת מקומית
כמה כתובות IP יש לכל מחשב
בכוונה לא נכנסתי לדקויות פה. למשל בין סוויץ׳ לבין נתב או העובדה שיש כמה כתובות IP בהתאם לכרטיסי הרשת. זה לא רלוונטי לקהל היעד.
בהנחה ששני מחשבים ברשת הפנימית פונים החוצה, ומוצגים ככתובת ip *אחת*, כיצד המידע שחוזר מהרשת מופרד לשניהם?
יש טבלת NAT בנתב
שהתפקיד שלה זה לדעת לאן כל פקטה מיועדת
למחשב עצמו אין כתובת חיצונית רק פנימית
לנתב יש כתובת חיצונית וגם כתובת פנימית והוא עושה את הניתוב בין הרשתות
מחשבים ברשת הפנימית לא מדברים דרך הנתב
אלא מדברים בינם לבין עצמם
לפי טבלת ARP שקיימת בכל רכיב שמתחבר לרשת
הוא מקשר בין כתובת ip לכתובת Mac
וה switch מנתב לפי הכתובות Mac
כן. לא רציתי להכנס לדקויות כאלו כי קהל היעד לא יבין את זה וזה יקשה עליו. בסופו של דבר מי שמחלק את כתובת ה-IP זה הנתב ובכבילה באמת עוברים דרכו.