שקול את התרחיש הבא: גשר הוגדר עם האפשרות ל הורדת חומרהg מופעל כדי למקסם את ביצועי הרשת במכשיר RouterOS. בשל תצורה זו, המכשיר מתפקד כמתג במקום כגשר פשוט ברמת התוכנה.
זה משפר את הביצועים בכך שהוא מאפשר לשבב המתג לטפל בהעברת מנות בין יציאות, במקום לאפשר למעבד של המכשיר לעשות זאת.
בסוף המאמר תמצא קטן מבחן שיאפשר לך להעריך הידע שנרכש בקריאה זו
תצורה
/interface bridge
add name=bridge1
/interface bridge port
add bridge=bridge1 hw=yes interface=ether1 learn=yes
add bridge=bridge1 hw=yes interface=ether2 learn=yes
בעיה
כאשר כלים כמו כוסית o לפיד כדי ללכוד מנות ברשת, נצפית חריגה: רק חלק מהמנות נראות לעין, בדרך כלל אלו המשודרות/מרובות שידור. זה נובע מהאופן שבו להחליף שבב מטפל בתעבורה בתצורה עם הורדת חומרה.
למידה של MAC לעומת טבלת מארח
El להחליף שבב שומר על טבלה של כתובות MAC ויציאות משויכות המכונה "טבלת מארח". בכל פעם שיש להעביר חבילה, שבב המתג מתייעץ בטבלה זו כדי לקבוע באיזו יציאה יש להשתמש כדי להעביר את החבילה. אם כתובת ה-MAC של היעד לא נמצאת בטבלה, החבילה מוצפת לכל היציאות, כולל יציאת המעבד.
לכן, אם כתובת ה-MAC של היעד כבר נלמדה והיא נמצאת בטבלה, שבב המתג יכול להעביר את החבילה ישירות מבלי לעבור דרך המעבד. זה אומר שהחבילה האמורה לא תהיה גלויה לכלים כמו כוסית o לפיד, אשר לוכדת מנות ברמת המעבד.
תסמינים
- חבילות שאינן נראות ב-Sniffer או לפיד.
- ייתכן שכללי הסינון לא יפעלו כמצופה.
פתרון
כדי לפתור בעיה זו, אפשר להשתמש בכללים של ACL (רשימת בקרת גישה) להעתיק או להפנות מנות מסוימות למעבד. לדוגמה, אתה יכול להגדיר כלל ששולח עותק של מנות המיועדות לכתובת MAC ספציפית ל-CPU לצורך ניתוח.
/interface ethernet switch rule
add copy-to-cpu=yes dst-mac-address=4C:5E:0C:4D:12:4B/FF:FF:FF:FF:FF:FF
ports=ether1 switch=switch1
יש לציין כי שליחת מנות למעבד לעיבוד תגביר את העומס על המעבד, מה שעלול להשפיע על הביצועים הכוללים של המכשיר.
El הורדת חומרה זוהי טכניקה רבת עוצמה לשיפור ביצועי הרשת, אך היא מגיעה עם מגבלות מסוימות מבחינת נראות ושליטה ברמת ה-CPU. עבור מקרי שימוש הדורשים ניתוח מנות או סינון, נדרשת תצורה נוספת כגון כללי ACL כדי להבטיח שהמנות הדרושות מעובדות על ידי ה-CPU.
שיקולים נוספים
1. תעדוף תנועה:
ברשתות מורכבות יותר, ייתכן שתרצה ליישם QoS (איכות שירות) כדי לתעדף סוגים מסוימים של תעבורה. זה בדרך כלל דורש מנות לעבור דרך ה-CPU, מה שעלול להתנגש עם תצורה של הורדת חומרה.
2. אבטחה:
הורדת חומרה יכולה להגביל את היכולת ליישם אמצעי אבטחה חזקים יותר, כגון Deep Packet Inspection (DPI), מכיוון שמנות לא יעברו דרך ה-CPU.
3. קיבולת מעבד:
חיוני לקחת בחשבון את יכולת העיבוד של המעבד בעת הפניית תעבורה אליו. יותר מדי מנות שנשלחות לעיבוד ב-CPU יכולות להציף אותו, ולהוביל לירידה בביצועי המערכת הכוללים.
4. תאימות:
לא כל המכשירים ושבבי המתגים תומכים בהורדת חומרה או בעלי אותן יכולות. ודא שהחומרה שלך תומכת בתכונות שבהן אתה רוצה להשתמש.
5. עדכוני קושחה/תוכנה:
ודא שאתה משתמש בגרסה של RouterOS התומכת בכל התכונות שאתה רוצה ליישם. בעיות ומגבלות עשויות להשתנות בין גרסאות שונות.
פתרונות מתקדמים
עבור תרחישים מורכבים יותר, אפשר להשתמש בממשקי API או סקריפטים כדי להפוך את ההוספה וההסרה של כללי ACL לאוטומטיים על סמך אירועים או תנאים מסוימים. זה יכול להיות שימושי במיוחד בסביבות דינמיות שבהן כתובות MAC של יעד עשויות להשתנות לעתים קרובות.
תקציר
הורדת חומרה היא טכניקה יעילה לשיפור ביצועי הרשת, אך יש לה אתגרים בכל הנוגע לבקרת תעבורה מפורטת ואבחון.
כלים כמו Sniffer או Torch פחות יעילים בהקשר הזה מכיוון שמנות רבות מועברות ברמת שבב הבורר ולעולם לא מגיעות למעבד.
עם זאת, עם תכנון קפדני ושימוש בתכונות כמו ACL, ניתן לאזן בין ביצועים לצרכי אבחון ואבטחה.
חידון ידע קצר
מה דעתך על המאמר הזה?
האם אתה מעז להעריך את הידע הנלמד שלך?
ספר מומלץ למאמר זה
מיתוג וגישור RouterOS v7 Book
חומר לימוד לקורס ההסמכה של MTCSWE עודכן ל-RouterOS v7