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

פקודת netstat הפשוטה ביותר היא רק כדי להפעיל את הכלי ללא כל פרמטר:

 netstat 

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

 netstat -t 

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

שים לב לקו אשר קורא " חיבור אינטרנט פעיל (w / o שרתים) ". החלק האחרון אומר ש- netstat לא כלל רשימה של שרתים שפועלים במחשב שלך; במילים אחרות, זה לא רשימה אלה תוכניות אשר מחכים חיבורי TCP אבל כרגע אין אף אחד הוקמה.

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

 netstat -at 

ה- -a עומד על כולם ומוסיף את מערכת יציאות ההאזנה. במבט למטה ברשימה, ניתן לראות כי המחשב לינוקס שלי מחכה גם חיבורים SSH מעל IPv6.

מידע זהה יכול גם להיות שנוצר עבור UDP באמצעות:

 netstat -au 

ההפך של הדגל הוא דגל -l שעושה netstat רשימה יציאות האזנה אבל להשמיט את החיבורים הפעילים.

כדי לראות רשימה של תהליכים שיש להם חיבורים פתוחים או מחכים לחיבורים, השתמש בדגל -p :

 sudo netstat-atp 

ניתן להשתמש ב- -p בשתי -TCP או ב- UDP. כמו כן שים לב שאתה צריך להפעיל את הפקודה עם sudo . הדגל -p עושה את הפירוש של רשימת החיבורים הרבה יותר קל. מהדוגמה לעיל, ניתן לראות כי לא רק שרת SSH פועל (sshd), אבל המכונה יש שרת CUPS פועל יחד עם שרת מיני DNSMasq.

אם עליך לבדוק אם שירות מסוים פועל, באפשרותך להשתמש ב- netstat בשילוב עם הפקודה grep . לדוגמה, בהגדרת הבדיקה שלי, התקנתי שרת דואר אלקטרוני (Postfix). כדי לבדוק אם הוא פועל, אני יכול להשתמש ב:

 sudo netstat -ltp | grep smtp 

הדגל -ltp אומר ל- netstat רק לרשום את שרתי ה- TCP (כלומר תהליכים אלה מקשיבים לחיבורים) והפקודה grep מסננת את הפלט כדי להציג רק את השורות עם מחרוזת "smtp". כתוצאה מכך, אנו יכולים לראות כי התהליך " Master "(המהווה את השם של התהליך הראשי של Postfix) מקשיב על IPv4 ו- IPv6 עבור חיבורי SMTP נכנסים.

Netstat הוא מסוגל ליצור די הרבה מידע סטטיסטי על תת הרשתות. נסה את הפקודות הבאות:

  • netstat -i כדי לקבל מידע על השימוש בממשקי הרשת
  • netstat -ie כדי לקבל מידע השימוש המורחבת
  • netstat -s כדי לקבל סיכום סטטיסטיקות עבור כל אחד פרוטוקולי רשת (כלומר TCP, UDP, ICMP וכן הלאה)

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

 netstat -rn 

טבלאות ניתוב הקריאה זקוקות לעין מאומנת, אך במהותן מה שמראה הדוגמה לעיל הוא שתו ברירת המחדל (0.0.0.0) עבור כל החבילות פרט לאלה של המכשיר המקומי יישלח ל - 192.168.1.254, אשר בהגדרת הבדיקה שלי הוא שער ברירת המחדל ואת מודם האינטרנט שלי / נתב.

אתה יכול להריץ פקודה ללא דגל, אשר אומר כי netstat ינסה לפתור את הכתובות.

בדף האיש של netstat יש רשימה מלאה של כל האפשרויות הזמינות, אתה יכול לקרוא אותו באמצעות:

 אדם 

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