netcat

פקודת יוניקס

netcat (נקרא גם בקיצור: nc) היא תוכנית לכתיבה וקריאה מתוך חיבורי רשת בפרוטוקול TCP או UDP. התוכנית משמשת לרוב תוכניות אחרות או תסריטים, ומהווה כלי יעיל לאבחון תקלות באפליקציות רשת.

היסטוריה עריכה

הגרסה הראשונה של netcat נכתבה למערכת ההפעלה יוניקס. הגרסה האחרונה (1.10) ראתה אור במרץ 1996.[1]

קיימים מספר מימושים לתוכנית במערכות POSIX, כאשר הבולטים מביניהם הם זו של פרויקט גנו[2] וזו של OpenBSD.[3] הגרסה של OpenBSD הועברה גם ל-FreeBSD[4] ול-Microsoft Windows דרך Cygwin.[5] נוסף על כך, נכתבה גם גרסה ל-Windows.[6] ב-סולאריס 11 קיימת גרסה של netcat המבוססת על זו של OpenBSD.

במהלך השנים נוספו גרסאות מורחבות של netcat, הבולטות מביניהן הן socat, המהווה גרסה עשירה ומסובכת יותר[7], Cryptcat, המכילה תכונות קריפטורגפיות מובנות[8], ו-Ncat, גרסה מורחבת שנכתבה על ידי Nmap.[9]

במערכות שונות, ניתן לקרוא ל-netcat בעזרת הפקודות nc, ncat, pnetcat, socat, sock, socket, sbd.

תכונות עריכה

netcat כולל בתוכו את התכונות הבאות:[1]

  • טיפול בחיבורים יוצאים או נכנסים, TCP או UDP בכל פורט
  • סריקת פורטים מובנית
  • קריאה מהקלט הסטנדרטי
  • מצב שליחה איטי, שורה אחת בכל מספר שניות
  • תצוגה הקסדצימלית של הנתונים המועברים
  • יצירת מנהור

תחביר עריכה

באופן כללי, התחביר של פקודת netcat יראה כך:

nc [options] [hostname] [port[s]]

דוגמה נפוצה תהיה שימוש ב-netcat כלקוח, לדוגמה בשליחת מידע לשרת מרוחק:

echo "Hello server!" | nc server 8080

שימוש נפוץ נוסף הוא כשרת המאזין לפורט מסוים:

nc -l 8080

ראו גם עריכה

קישורים חיצוניים עריכה

  מדיה וקבצים בנושא Netcat בוויקישיתוף

הערות שוליים עריכה