מבוא ל-CLI של Cisco IOS
בשיעורים הקודמים הגדרנו כתובות IP על מחשבים — וזה היה קל: פתחנו חלון IP Configuration גרפי, מילאנו שדות, סיימנו. אבל נתב (Router) או מתג (Switch) אמיתיים הם לא מחשבים עם מסך — אין להם עכבר, חלונות או טפסים. במקום זה מדברים איתם בשפה אחת: טקסט. כל פקודה נכתבת בשורה, וזה נקרא CLI — Command-Line Interface.
זה השיעור שבו נכיר את הכלי לפני שנשתמש בו ברצינות. כבר בשיעור הבא נגדיר ממשקי נתב אמיתיים, ובכל מעבדה מכאן והלאה ה-CLI יהיה הדרך שבה נדבר עם הציוד. מערכת ההפעלה שרצה על ציוד Cisco נקראת Cisco IOS, ולכן מדברים על “ה-CLI של IOS”.
בקורס הזה אנחנו עובדים בתוך Packet Tracer, אבל ה-CLI כאן זהה לזה של נתב Cisco פיזי. מה שתלמדו עכשיו עובד אחד-לאחד על ציוד אמיתי.
למה CLI ולא ממשק גרפי?
זו לא גחמה היסטורית. ה-CLI הוא מהיר, מדויק, ניתן להעתקה (אפשר לשמור תצורה שלמה כטקסט ולהדביק אותה בנתב אחר), וניתן לאוטומציה. כל הסמכות הרשת המקצועיות (CCNA וכלפי מעלה) נבחנות על CLI. ברגע שמתרגלים — זה הרבה יותר מהיר מלחיצות עכבר.
ארבעת המצבים — ה-Prompt תמיד אומר לך איפה אתה
הדבר הכי חשוב להבין ב-CLI: בכל רגע אתה נמצא במצב מסוים, והמצב קובע אילו פקודות מותרות. ה-Prompt (הטקסט שלפני הסמן) תמיד מסגיר באיזה מצב אתה. ככל שמעמיקים פנימה — מקבלים יותר הרשאות:
| מצב | Prompt | מה אפשר לעשות בו | איך נכנסים |
|---|---|---|---|
| User EXEC | Router> | תצוגה בסיסית בלבד — “חדר המתנה” | מצב הפתיחה |
| Privileged EXEC | Router# | תצוגה מלאה, פקודות ניהול, show | enable |
| Global Configuration | Router(config)# | לשנות את תצורת המכשיר כולו | configure terminal |
| Interface Config | Router(config-if)# | להגדיר ממשק ספציפי (כתובת, הפעלה) | interface <שם> |
שימו לב לשרשרת: כל מצב נכנס מתוך הקודם. אי אפשר לקפוץ ישר מ-Router> להגדרת ממשק — חייבים לעבור דרך כל השלבים.
למה זה בנוי כך? ההפרדה היא גבול אבטחתי: מצב User יכול רק “להסתכל”, ורק מי שעבר ל-Privileged יכול לשנות. בציוד אמיתי שמים סיסמה על המעבר ל-
enableבדיוק מהסיבה הזו — נרחיב על כך כשנגדיר מתגים במודול הבא.
מעבר בין המצבים
נדגים מסע שלם — מצב הפתיחה ועד הגדרת ממשק וחזרה החוצה:
Router> enable ← נכנסים ל-Privileged EXEC
Router# configure terminal ← נכנסים ל-Global Config
Router(config)# interface GigabitEthernet0/0/0 ← נכנסים להגדרת ממשק
Router(config-if)# exit ← יוצאים שלב אחד אחורה (חזרה ל-config)
Router(config)# end ← קופצים ישר החוצה לכל הדרך ל-Privileged
Router#
שלוש פקודות יציאה, וכדאי להכיר את ההבדל:
exit— יורד שלב אחד אחורה (מ-config-ifחזרה ל-config).end— קופץ ישר עדRouter#, מכל עומק שהוא. (קיצור מקלדת:Ctrl+Zעושה אותו דבר.)
כלי הישרדות למתחילים
אף אחד לא זוכר את כל הפקודות בעל-פה. ה-CLI נותן שלושה כלים שהופכים את העבודה לסבירה:
- סימן שאלה
?— הקלידו?בכל נקודה כדי לראות אילו פקודות (או אילו פרמטרים) חוקיים מכאן. למשלRouter(config)# ?יראה את כל הפקודות במצב הזה, ו-Router# show ?יראה מה אפשר להציג. - השלמה ב-Tab — הקלידו תחילית ולחצו Tab כדי להשלים פקודה ארוכה.
confואז Tab →configure. - קיצורים — אפשר לקצר כל פקודה כל עוד היא חד-משמעית.
configure terminal→conf t.interface GigabitEthernet0/0/0→int gig0/0/0.show ip interface brief→sh ip int br. כך עובדים אנשי רשת בפועל.
טעיתם בפקודה? אם הקלדתם משהו שאינו פקודה תקפה, IOS ינסה לפרש אותו כשם מארח ו”ייתקע” כמה שניות בניסיון לפתור אותו ב-DNS. זה מבלבל מתחילים — פשוט המתינו, או לחצו
Ctrl+Cכדי לקטוע.
לקרוא את מצב המכשיר — פקודות show
לפני ואחרי כל שינוי, רוצים לראות מה קורה. משפחת פקודות ה-show (ממצב Router#) היא העיניים שלכם. שתיים שתלוו אתכם לאורך כל הקורס:
show ip interface brief— טבלה תמציתית של כל הממשקים, כתובת ה-IP שלהם והסטטוס. זו הפקודה הראשונה שמריצים כדי לוודא שהגדרה “תפסה”:
Router# show ip interface brief
Interface IP-Address OK? Method Status Protocol
GigabitEthernet0/0/0 unassigned YES unset administratively down down
GigabitEthernet0/0/1 unassigned YES unset administratively down down
שימו לב ל-administratively down — כך נראה ממשק שעדיין לא הופעל. כשנגדיר כתובת ונריץ no shutdown, העמודות האלה יתחלפו ל-up.
show running-config— מציגה את התצורה הפעילה של המכשיר כרגע, כטקסט מלא. זו “תמונת המצב” של כל מה שהגדרתם.
הצורה של פקודת תצורה (טעימה לשיעור הבא)
עכשיו, כשאתם יודעים לנווט, נציץ קדימה בפקודה שתשתמשו בה בשיעור הבא בפועל — הגדרת כתובת על ממשק נתב. שימו לב רק לצורה של הפקודה; את המשמעות של כל חלק נלמד מיד:
Router(config)# interface GigabitEthernet0/0/0
Router(config-if)# ip address 192.168.1.1 255.255.255.0
Router(config-if)# no shutdown
שלושה צעדים: נכנסים לממשק, נותנים לו כתובת ומסכה, ומפעילים אותו ב-no shutdown. החלק 255.255.255.0 הוא ה-Subnet Mask — בדיוק הנושא של השיעור הבא, שם נבין מה הוא אומר ולמה הוא קריטי. כאן רק חשוב שתזהו את המבנה.
ושמירה? כל מה שמגדירים חי ב-
running-configשבזיכרון הזמני. כדי שישרוד אתחול שומרים אותו לזיכרון הקבוע עםcopy running-config startup-config. ב-Packet Tracer אין צורך בכך לתרגולים שלנו — נחזור לשמירה ולאבטחת המכשיר כשנגדיר מתגים במודול הבא.
תרגול מעשי — Cisco IOS CLI (~5 דק׳)
הריצו: פתחו פרויקט חדש ב-Packet Tracer, גררו נתב יחיד (דגם 4321 או 2911) למשטח, לחצו עליו ועברו ללשונית CLI. הקלידו Enter, ואז עברו דרך כל המצבים: enable → configure terminal → interface gig0/0/0 → exit → end. לבסוף, ממצב Router#, הריצו show ip interface brief.
חפשו: איך ה-Prompt משתנה בכל מעבר (> → # → (config)# → (config-if)#), וכיצד exit יורד שלב אחד בעוד end קופץ עד הסוף. בפלט של show ip interface brief — שורה לכל ממשק, כולם administratively down כי עוד לא הגדרנו דבר.
למה: זה הכלי שתנהגו בו בכל מעבדה מכאן והלאה. ברגע שהמעבר בין המצבים הופך לאוטומטי, אפשר להתרכז בתוכן — לא בתחביר.
מה הלאה
הכרתם את הכלי: ארבעת המצבים, המעבר ביניהם, כלי העזרה ופקודות ה-show. עכשיו אפשר להשתמש בו ברצינות. בשיעור הבא — Subnet Mask ו-Default Gateway — נבין סוף-סוף מה אומרת המסכה 255.255.255.0, ונגדיר בפעם הראשונה ממשקי נתב אמיתיים ב-CLI כדי לחבר שתי תת-רשתות.
מה דעתכם על השיעור?
דיון
יש לכם שאלה, תיקון או הערה? הצטרפו לדיון. כדי לכתוב נדרשת התחברות עם חשבון GitHub.