8 במרץ 2010

Cisco's World


שלום לכולם,
עוד מאמר בנושא Networking והפעם אני רוצה לדבר על החברה המובילה בעולם בתחום התקשורת
והיא כמובן Cisco.

למה Cisco הפכה להיות שם דבר בעולם התקשורת? מה הופך את Cisco להיות הכי טובה ולשלוט בשוק?
לצורך ההבהרה, אני לא איש מכירות ואני גם לא עובד בסיסקו (למרות שזו אופציה נחמדה :-) )
מטרתו של פוסט זה היא להכיר את התכונות הבסיסיות של ה-IOS (מערכת ההפעלה של סיסקו), פקודות בסיסיות ומצבים בנתב\מתג.
אז נתחיל..
מה הופך את הנתבים של סיסקו לטובים ולמוכרים ביותר?
זאת כמובן ה-IOS, אחת הסיבות העיקריות אשר הביאו את סיסקו להיות מובילה בתחומה היא מערכת ההפעלה שלה.
כל מי שמכיר (CLI - (Coצבע טקסטmmand Line Interface יודע שהאפשרויות לניהול והגמישות בפקודות גדולה יותר מאשר ניהול ממשקים ב-(GUI - (Graphic User Interface
מערכת ההפעלה שלה איפשרה ניהול קל ופשוט ואפשרויות גדולות יותר בביצועים.
מעבר לכך ישנו את הפן החומרתי שגם בו אנחנו צריכים להתחשב, כל רכיב חייב מעבד כדי לבצע את כל החישובים כמובן, זכרון, ולוח – כל אלו יצרו שם לסיסקו שאין שני לו.
קצת על רכיבי החומרה שנמצאים בתוך הנתב:

Rom: רכיב זה מאכסן בתוכו את תוכנת ה-POST Power On Self Test(בדיוק כמו במחשבים).
Ram: זהו זכרון נדיף (נמחק בעת כיבוי הנתב) אשר טוען לתוכו את ה-IOS ואת קובץ הקונפיגורציה, כמו כן הוא מאכסן בתוכו את טבלאות ה-ARP ואת טבלאות הניתוב (על ניתובים נדבר בפוסט הבא) הוא שומר בתוכו את קבצי ה-Running Config.
Nvram: זהו זכרון שאינו נדיף (אינו נמחק בעת כיבוי הנתב) הוא משמר לאחסון קבצי הקונפיגורציה לאחר שמירתם, שומר בתוכו את ה-Startup Config.
Flash: זהו זכרון הבזק אשר מאכסן בתוכו את ה-IOS בצורה מכווצת, בעת עליית הנתב וטעינת התוכן אל תוך ה-RAM הוא מבצע Decompress.
Buses: אלו הם אפיקי העברת המידע בין המעבד אל הרכיבים השונים בלוח כגון Ram, Nvram וכו'...

אני לא יודע למי מכם יצא לפתוח אריזה של סיסקו עם מוצר חדש, נתב\מתג או כל דבר אחר..
מלבד הכיף שבדבר.. עם האריזה מגיעים הרכיבים הבאים:

- כבל קונסול.
- דיסק הוראות \ תוכנה לניהול בממשק גרפי (SDM\(ASDM.
- כבל רשת.

אחרי שפתחנו את האריזה..ונהנינו.. מה עכשיו?
לנתב\מתג קיימים מספר חיבורים אשר באמצעותם ניתן להתחבר ולנהל את המוצר, בהנחה שהמוצר חדש מהאריזה אנחנו נאלץ לבצע שימוש ראשוני רק דרך כבל ה-Console שהוא גם נקרא (Rollover Cable) וזאת מכיוון שלמוצר שלנו אין עדיין כתובת IP ואנחנו לא יכולים לנהל אותו דרך הרשת אז אנחנו משתמשים בכבל קונסול.

קיימים עוד מספר סוגים של כבלים אשר במידת הצורך נבצע בהם שימוש והם:

- כבל רשת רגיל מסוג RJ45 שנקרא גם Straight,משמש לחיבור ציוד קצה כגון מחשבים ומתג.
- כבל רשת מוצלב גם הוא מסוג RJ45 שנקרא גם Crossover לחיבור ציוד מאותו תוצרת, משמע ראוטר לראוטר, מחשב ולמחשב וכו'..
במקרה שלנו ,כפי שציינתי, אין לנו כתובת IP לכן אנו נחבר את הכבל אל הכניסה הכחולה מאחורי הנתב ובקצהו השני לחבר את הכבל לחיבור סיריאלי (Com) למחשב, מכאן נותר לנו לפתוח תוכנה אשר באמצעותה נוכל להתחבר למוצר ולנהל אותו. בתוך ה-Windows קיים כלי מובנה אשר נקרא Hyper Terminal למי שלא מכיר ולא השתמש אף פעם הוא נמצא בתוך:


Start—Programs—accessories—Communications—Hyper Terminal .

על מנת שהחיבור יעבוד בצורה תקינה ב- Hyper Terminal אנו צריכים לוודא שההגדרות עומדות על:

Flow Control 9600,8,No parity ,1 stop, no

קיימות בשוק תוכנות קצת יותר נוחות לעבודה כגון:

Putty
TeraTerm


כעת, מה שנותר לנו זה להדליק את הנתב ולצפות בתהליך העליה שלו, כפי שציינו מוקדם יותר המערכת מבצעת Decompression ל-IOS אשר ממקומם בתוך ה-Flash אל רכיב ה-Ram.
לאחר שמערכת ההפעלה עלתה מופיעה לנו הודעה אשר אומרת אם אנחנו מעוניינים להשתמש ב-Wizard על מנת לבצע הגדרה ראשונית למוצר (נתב\מתג). מנהלי רשתות ואנשי GUI בדרך כל יעדיפו את הדרך הזו, במיוחד על מי שאינו בקיא בנושא ה-CLI בסיסקו כיוון שתהליך זה מלווה אותנו במהלך ההגדרה הראשונית של הממשקים השונים, שם לנתב וסיסמאות.
אני באופן אישי וממליץ לכולכם ללחוץ NO על האשף ולהתקדם ובצע קונפיגורציה ידנית- גם כי זה עוזר ללימוד העצמי וגם כדי לתרגל ולהתרגל לשימוש בפקודות.
אז, לאחר שהנתב\מתג עלה מה שנותר לנו להבין איפה אנחנו נמצאים מבחינת רמות הרשאה וביצוע פעולות.
נתבי (וכשאני אומר נתבי אני מתכוון גם למתגים) מחולקים לכמה רמות של פקודות משמע, לא ניתן לבצע פקודות מסויימות מבלי להיות שם תחת אותו שורת Prompt.
עכשיו אני אסביר.. הרמות מתחלקות לכמה מצבים והם מוצגים לנו במספר סימנים אשר באמצעות ניתן לזהות היכן אנחנו נמצאים, עם הזמן והתרגול אתם תזכרו מה אומר כל סימן ואילו פעולות ניתן לבצע,

בואו נעבור על כמה מהמצבים הבסיסיים, כאשר אנו רואים את הסימנים הבאים:

R1 - מצב זה נקרא User Mode והוא מאפשר לנו ביצוע בדיקות תקשורת בסיסיות כגון: Ping,Traceroute וכו..
על מנת להגיע למצב זה אנחנו לא נדרשים בהקשת סיסמה כיוון שמצב זה מוגבל.







R1#- על מנת להגיע למצב זה אנו צריכים להקיש פקודת Enable או בקיצור En , למצב זה קוראים Exec Mode וכדי להגיע למצב זה אנו נדרשים להקיש סיסמה (אם הגדרנו), מצב זה הוא בעל הרשאות לצפיה בהגדרות הנתב.

#(R1 (config - מצב זה הוא מצב אשר אליו אנחנו נכנסים על-ידי הקשת פקודת Configure Terminal או
בקיצור conf t, מצב זה מאפשר לנו ניהול גלובלי של הנתב, ביצוע פעולות גורפות אשר משפיעות על הנתב כולו.
כלה בהגדרת DHCP, CDP, פרוטוקולי ניתוב סטטיים ודינמיים – בעצם כל ההגדרות החשובות נעשות מהמצב הגלובלי.

קיימים עוד מספר מצבים אשר נעבור עליהם בקצרה:
#(R1(config-line - מצב זה מאפשר לנו להגדיר את ממשק הקונסול וה-VTY.

#(R1(config-if- במצב זה אנחנו נמצאים תחת ממשק מסויים כגון Ethernet .

#(R1(config-subif- במצב זה אנחנו מגדירים תתי ממשקים וירטואלים על ממשק פיזי אחד.

כעת אני רוצה להסביר קצת על נושא ההשלמה האוטומטית של פקודות בממשק הנתב, ראשית נאמר שכל פקודה ניתן להשלים בצורה אוטומטית על-ידי הקשה על מקש TAB לדוגמא:
Conf t

הפקודה המלאה היא Configure Termial - וזאת על מנת להכנס להגדרות גלובליות על הנתב.
עכשיו מדוע אנחנו רושמים Conf t ולא את הפקודה המלאה?
זאת מכיוון שכתבנו מספיק אותיות אשר מייחדות את הפקודה, משמע אין עוד פקודה שמתחילה ב conf,
לאחר מכן שרשמנו את האות t ויכולנו להמשיך מבלי לרשום את המילה Terminal כיוון שאין עוד אופציה שמתחילה באות t.
לכן יכולנו להמשיך מבלי לרשום את הפקודה המלאה,

שימו לב שבמידה ואנחנו מעוניינים לצפות ברשימת הפקודות תחת הפקודה conf (או כל פקודה אחרת) ניתן פשוט לרשום סימן שאלה וכל האופציות יפתחו לנו מתחת אשר קשורות לאות או לפקודה שרשמנו.
בואו נראה דוגמא לביצוע סימן שאלה תחת הפקודה show שנמצאת ב-Privilege Mode כפי שציינו קודם לכן (פקודות show ניתן לבצע רק ממקום זה).



? R1#show
aaa Show AAA values
access-expression List access expression
access-lists List access lists
accounting Accounting data for active sessions
adjacency Adjacent nodes
aliases Display alias commands
alignment Show alignment information
appfw Application Firewall information
archive Archive of the running configuration information
arp ARP table
ase Display ASE specific information
async Information on terminal lines used as router interfaces
auto Show Automation Template
backup Backup status
beep Show BEEP information
bfd BFD protocol info
bridge Bridge Forwarding/Filtering Database [verbose]
buffers Buffer pool statistics
call Show call
caller Display information about dialup connections
cca CCA information
cdapi CDAPI information
--More--

טיפ!

ניתן להוסיף את המילה do לפני כל פקודה אשר אמורה לפעול רק ממצבים שהם לא Exec Mode, מה שאומר לנו בכל מצב אחר אם זה Conf T או תחת הממשקים שונים אזי יש צורך לכתוב את המילה do לפני הפקודה עצמה ודבר זה יאפשר לנו להקליד את הפקודה מכל מיקום.

אז מה אנחנו רואים אחרי שרשמתי את פקודת ? show

אנו רואים את פקודות הצפיה שאנחנו יכולים לבצע על מנת לצפות בהגדרות וכו'..

על מנת לחזור אחורה שלב אחד, לדוגמא אנחנו נמצאים ב- (R1(config ואנחנו מעוניינים לחזור שלב אחד אחורה ל-R1# אנו יכולים לכתוב את הפקודה exit, או לחילופין אנו יכולים ללחוץ Ctrl Z.

עוד על רשימת התגובות מה-IOS של סיסקו, כאשר אנו מקבלים את הפלטים הבאים-מה זה אומר?

- Unrecognized Command-במידה והקלדנו פקודה שאינה קיימת.

- Incomplete Command- במידה והקלדנו פקודה חלקית ולא סיימנו להקליד.

- Invalid Input- פקודה שקיימת בה שגיאת כתיב.

- Ambiguous Command -כאשר אנו מקלידים פקודה ולא הקלדנו מספיק אותיות ויכולות להיות מספר משמעויות.

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

כעת נעבור עלהגדרות גישה ראשוניות לציוד סיסקו:

כאמור, במידה ורכשנו ציוד חדש הוא אינו מגיע עם כתובת IP מוגדרת או סיסמה כלשהי, לכן אנו נבצע את הפעולות על מנת לאפשר גישה ראשונית לציוד מרחוק ולא באמצעות חיבור הקונסול, איך אנחנו עושים את זה?

תחילה נגדיר את ה-Vlan הראשון שלנו, שהוא בעצם ה-Native Vlan, מה שאומר שכברירת מחדל כל הפורטים מקושרים ל-Vlan הזה ולכן הוא גם יהיה המקור אליו אנו מתחברים בחיבור Telnet/Ssh.


מה זה Vlan אתם שואלים?
אז ככה בקצרה...

Vlan בתרגום הוא Virtual Lan מה שאומר שזו רשת LAN וירטואלית, משמע אנחנו לא משתמשים בממשק פיזי ומקצים לו כתובות IP וכו'.. זהו בעצם ממשק וירטואלי אשר משמש להפרדת רשתות ללא שימוש בממשקים פיזיים כגון: Fast Ethernet, Ethernet,Fiber וכו'..

את ההגדרה עבור ה-Vlan נבצע בצורה הבאה:

1. נכנס לממשק ה-Vlan בפקודה: R1(config)#interface vlan 1

2.לאחר מכן ניגש להגדיר את כתובת ה-IP בה אנו מעוניינים להשתמש בפקודה:

255.255.255.0 R1(config-if)#ip addrees 172.16.2.1

3. בשלב זה נפעיל את הממשק (במידה והוא כבוי) על-ידי פקודת :

R1(config-if)#no shut

שימו לב!
על מנת לבטל פעולה כלשהי בסיסקו אנחנו צריכים להקליד את המילה no לפני הפקודה, הניגוד של הפקודה בעצם מבטל אותה.
אז בדוגמה שהייתה לנו כאן הגדרתי ל-Vlan לעבור ממצב Shutdown למצב No Shutdown - שזה דלוק.


לאחר מכן, נגדיר את ממשקי ה-VTY נבצע בשלבים הבאים:

1. בשלב ראשון נכנס לממשק ה-VTY בצורה הבאה R1(config)#line vty 0 4

2.בשלב שני נגדיר שבכל גישה לממשק ב-VTY נתבקש לבצע לוגין בפקודה הבאה: R1(config)#login
3.בשלב שלישי נגדיר סיסמה על מנת שבכל לוגין נתבקש להגדיר סיסמה בפקודה R1(config)#password 123456

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





אבי


תגובה 1:

  1. אנונימי10 מרץ, 2010

    פשוט מושקע ומושלם אביהו :)

    השבמחק