לדלג לתוכן

הפקודה ifconfig

הפקודה ifconfig (קיצור של interface configuration) היא פקודה המשמשת לניהול ממשקי רשת במערכות Linux/Unix.
באמצעותה ניתן לצפות במידע על כתובות IP, להפעיל ולכבות ממשקים, לשנות כתובות MAC, להגדיר מסכות רשת ועוד.

📌 שימו לב: ifconfig הוא כלי ישן שהוחלף בפקודה ip (מהחבילה iproute2).
ברוב ההפצות המודרניות ifconfig לא מותקן כברירת מחדל, אך ניתן להתקין אותו:

sudo apt install net-tools  # עבור Debian/Ubuntu
sudo yum install net-tools  # עבור RHEL/CentOS

שימושים בסיסיים

1. הצגת מידע על כל ממשקי הרשת

ifconfig
  • מציג מידע על כל הממשקים הפעילים, כולל:
    • כתובות IP
    • כתובות MAC
    • מצב חיבור (UP/DOWN)
    • מהירות וקצב העברת נתונים
    • שגיאות וסטטיסטיקות תעבורה

2. הצגת מידע על ממשק ספציפי

ifconfig eth0
  • מציג מידע רק עבור ממשק eth0.

ניהול ממשקי רשת

3. הפעלת ממשק רשת

ifconfig eth0 up
  • מפעיל את הממשק eth0.

4. כיבוי ממשק רשת

ifconfig eth0 down
  • מכבה את eth0 (מנתק אותו מהרשת).

📌 זהירות! כיבוי הממשק eth0 בשרת מרוחק עלול לנתק את הגישה שלך!


שינוי כתובת IP

5. הגדרת כתובת IP ידנית

ifconfig eth0 192.168.1.100 netmask 255.255.255.0
  • קובע ל-eth0 את הכתובת 192.168.1.100 עם מסכת רשת 255.255.255.0.

שינוי כתובת MAC (MAC Spoofing)

6. שינוי כתובת MAC של ממשק רשת

ifconfig eth0 hw ether 00:11:22:33:44:55
  • משנה את כתובת ה-MAC של eth0 ל-00:11:22:33:44:55.

📌 שינוי זה זמני – ברגע שהממשק יופעל מחדש, ה-MAC יחזור לברירת המחדל.


הגדרת MTU (גודל חבילה מקסימלי)

7. שינוי גודל חבילה מקסימלי (MTU)

ifconfig eth0 mtu 1400
  • משנה את ערך MTU ל-1400 בתים.

📌 ערך ברירת המחדל הוא 1500. שינוי MTU יכול לעזור לפתור בעיות עם VPNs ותקשורת איטית.


סטטיסטיקות תעבורה

8. הצגת סטטיסטיקות של שליחה וקבלה

ifconfig eth0 | grep 'RX packets\|TX packets'
  • מציג את כמות החבילות שנשלחו (TX) ושהתקבלו (RX).

הפקודה netstat

פקודת netstat (Network Statistics) משמשת לצורך הצגת מידע על החיבורים הרשתיים במערכת. זוהי פקודה שימושית למנהלי מערכת, לפיתוח ובדיקת ביצועים של אפליקציות רשת. הפקודה מספקת מידע על חיבורים פתוחים, ממשקי רשת, שמות שרתים ומידע נוסף על תעבורת רשת.

שימושים עיקריים של פקודת netstat

  1. הצגת חיבורים פתוחים
    הפקודה netstat מאפשרת לראות את כל החיבורים הרשתיים הפעילים במערכת, כלומר את כל הקישורים בין המחשב למחשבים אחרים. החיבורים מוצגים עם פרטי ה-IP והפורט שמחובר אליו.

    לדוגמה:

netstat -an

פרמטר -an מציין הצגת החיבורים עם כתובת ה-IP והפורט ללא פתרון שמות DNS.

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

    לדוגמה, כדי להציג רק חיבורים של פרוטוקול TCP:

netstat -at
  1. הצגת סטטיסטיקות רשת
    ניתן להשתמש בפקודה כדי להציג סטטיסטיקות על ממשקי הרשת (interface statistics) במערכת.

    לדוגמה:

netstat -i
  1. הצגת תהליכים המאזינים על חיבורים
    אם נרצה לראות איזה תהליך מאזין על איזה פורט, ניתן להוסיף את האפשרות -p:
netstat -anp

דגלים נוספים בפקודת netstat

  • -a: הצגת כל החיבורים הפתוחים והסוקטים (sockets).
  • -n: הצגת כתובת ה-IP והפורט במספרים, במקום לפתור את השם.
  • -p: הצגת מזהה תהליך (PID) של התהליך המשתמש בחיבור.
  • -t: הצגת חיבורים של פרוטוקול TCP.
  • -u: הצגת חיבורים של פרוטוקול UDP.
  • -l: הצגת חיבורים מאזינים (Listening).

דוגמה לשימוש מעשי

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

netstat -anp

כדי לראות את החיבורים הפתוחים על פרוטוקול TCP:

netstat -at

סיכום

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

הפקודה ip

מבוא

הפקודה ip היא הכלי המרכזי לניהול רשתות בלינוקס. היא חלק מחבילת iproute2, שהחליפה את הכלים הישנים כמו ifconfig, route, ו-netstat.

📌 למה להשתמש ב-ip?

  • מהיר ויעיל יותר
  • תומך בפרוטוקולים מודרניים (IPv6, VRF, וכו')
  • מציג מידע מפורט יותר
  • מאפשר ניהול גמיש של ממשקי רשת, כתובות, נתיבים, וחוקים

🔹 סוגי ניהול עם ip:

  1. ניהול כתובות IP
  2. ניהול ממשקי רשת (Interfaces)
  3. הגדרת שערי ברירת מחדל וניתוב (Routing)
  4. תצוגת חיבורים וסטטיסטיקות
  5. ניהול ARP ושכבות רשת מתקדמות

1. הצגת מידע על ממשקי רשת

1.1 הצגת כל הממשקים

ip a

או:

ip addr show
  • מציג את כל ממשקי הרשת והכתובות המוגדרות בהם.

📌 דוגמה לפלט:

1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536
    inet 127.0.0.1/8 scope host lo
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500
    inet 192.168.1.10/24 brd 192.168.1.255 scope global dynamic eth0
    inet6 fe80::1a2b:3c4d:5e6f/64 scope link

1.2 הצגת ממשק ספציפי

ip addr show eth0
  • מציג מידע רק על eth0.

1.3 הצגת ממשקים פעילים בלבד

ip link show up
  • מציג רק את הממשקים שמוגדרים UP.

2. ניהול ממשקי רשת

2.1 הפעלת ממשק רשת

ip link set eth0 up
  • מפעיל את eth0.

2.2 כיבוי ממשק רשת

ip link set eth0 down
  • מכבה את eth0 (מנתק אותו מהרשת).

2.3 שינוי כתובת MAC

ip link set dev eth0 address 00:11:22:33:44:55
  • משנה את כתובת ה-MAC של eth0.

📌 שינוי זה זמני – עם אתחול, כתובת ה-MAC תחזור לברירת המחדל.


3. ניהול כתובות IP

3.1 הוספת כתובת IP לממשק

ip addr add 192.168.1.100/24 dev eth0
  • מוסיף ל-eth0 את הכתובת 192.168.1.100 עם מסכת 255.255.255.0.

3.2 הסרת כתובת IP מממשק

ip addr del 192.168.1.100/24 dev eth0
  • מסיר את הכתובת 192.168.1.100 מ-eth0.

3.3 הצגת כתובות IPv6 בלבד

ip -6 addr show
  • מציג רק כתובות IPv6.

4. ניהול ניתוב (Routing)

4.1 הצגת טבלת הניתוב

ip route show

או:

ip r
  • מציג את טבלת הניתוב.

4.2 הוספת שער ברירת מחדל (Default Gateway)

ip route add default via 192.168.1.1
  • מגדיר שער ברירת מחדל לכתובת 192.168.1.1.

4.3 הסרת שער ברירת מחדל

ip route del default
  • מסיר את שער ברירת המחדל.

4.4 הוספת נתיב לרשת ספציפית

ip route add 10.0.0.0/24 via 192.168.1.254
  • מגדיר ניתוב לרשת 10.0.0.0/24 דרך הכתובת 192.168.1.254.

5. הצגת סטטיסטיקות רשת

5.1 הצגת נתוני חיבור TCP/UDP

ip -s link
  • מציג סטטיסטיקות תעבורה לכל הממשקים (כמות חבילות, שגיאות וכו').

5.2 הצגת שכבת ARP (כתובות MAC במטמון)

ip neigh show
  • מציג את טבלת ה-ARP (התאמה בין כתובות IP ל-MAC).

5.3 ניקוי מטמון ARP

ip neigh flush all
  • מוחק את כל רשומות ה-ARP.

6. יצירת ממשקים וירטואליים (Tunnels, VLANs וכו')

6.1 יצירת ממשק וירטואלי (Dummy Interface)

ip link add dummy0 type dummy
ip link set dummy0 up
  • יוצר ממשק וירטואלי בשם dummy0.

6.2 יצירת ממשק VLAN (802.1Q)

ip link add link eth0 name eth0.100 type vlan id 100
  • יוצר ממשק VLAN עם מזהה 100 על eth0.

7. ניהול כללי של הרשת

7.1 בדיקת חיבור לכתובת IP (בדומה ל-ping)

ip route get 8.8.8.8
  • בודק כיצד המערכת תנתב חבילות אל 8.8.8.8.

7.2 בדיקת MTU (גודל חבילה מקסימלי)

ip link set eth0 mtu 1400
  • משנה את גודל ה-MTU ל-1400 בתים.

סיכום

✅ הפקודה ip היא הכלי המודרני והעוצמתי ביותר לניהול רשת בלינוקס.
✅ היא מחליפה את ifconfig, route ו-netstat.
✅ מאפשרת ניהול ממשקים, כתובות, ניתוב, סטטיסטיקות, VLANs ועוד.

🔹 הפקודות החשובות לזכור:

פעולה פקודה
הצגת כל הממשקים ip a
הפעלת ממשק ip link set eth0 up
הוספת כתובת IP ip addr add 192.168.1.100/24 dev eth0
הצגת טבלת ניתוב ip route show
הגדרת שער ברירת מחדל ip route add default via 192.168.1.1
הצגת כתובות ARP ip neigh show

בונוס: הפקודה dhclient

הפקודה dhclient בלינוקס היא כלי שמבצע בקשה לשרת DHCP (Dynamic Host Configuration Protocol) על מנת לקבל כתובת IP אוטומטית עבור המחשב. לפעמים כשאנחנו מרימים רשתות מחשבים, אנחנו לא מקבלים ip אוטמטית משרת הdhcp, אז dhclient יכול לשמש אותנו כדי אקטיבית לבקש משרת הdhcp כתובת ip.

ברוב המקרים, dhclient מופעל אוטומטית בעת אתחול המערכת או חיבור לרשת, אך ניתן להפעיל אותה ידנית כדי לקבל כתובת IP חדשה:

sudo dhclient

בנוסף, ניתן לציין ממשק רשת ספציפי (כמו eth0 או wlan0):

sudo dhclient eth0

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