לדלג לתוכן

הפקודה ifconfig

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

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

sudo apt install net-tools  # for Debian/Ubuntu
sudo yum install net-tools  # for RHEL/CentOS

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

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

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

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

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

ניהול interfaces רשת

3. הפעלת interface רשת

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

4. כיבוי interface רשת

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

📌 זהירות! כיבוי הinterface 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 של interface רשת

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

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


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

7. שינוי גודל packet מקסימלי (MTU)

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

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


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

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

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

הפקודה netstat

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

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

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

    לדוגמה:

netstat -an

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

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

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

netstat -at
  1. הצגת סטטיסטיקות רשת
    ניתן להשתמש בפקודה כדי להציג סטטיסטיקות על interfaces הרשת (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 מספקת מידע חשוב ומפורט על חיבורים רשתיים, שמות תהליכים, interfaces רשת וסטטיסטיקות רשת. מדובר בכלי חיוני לניהול רשת וביצוע ניתוח בעיות רשת במערכות לינוקס.

הפקודה ip

מבוא

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

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

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

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

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

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

1.1 הצגת כל הinterfaces

ip a

או:

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

📌 דוגמה לפלט:

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 הצגת interface ספציפי

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

1.3 הצגת interfaces פעילים בלבד

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

2. ניהול interfaces רשת

2.1 הפעלת interface רשת

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

2.2 כיבוי interface רשת

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 לinterface

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

3.2 הסרת כתובת IP מinterface

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 (Routing)

4.1 הצגת טבלת הrouting

ip route show

או:

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

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

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

4.3 הסרת gateway ברירת מחדל

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

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

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

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

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

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

5.2 הצגת שכבת ARP (כתובות MAC בcache)

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

5.3 ניקוי cache ARP

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

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

6.1 יצירת interface וירטואלי (Dummy Interface)

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

6.2 יצירת interface VLAN (802.1Q)

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

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

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

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

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

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

סיכום

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

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

פעולה פקודה
הצגת כל הinterfaces ip a
הפעלת interface ip link set eth0 up
הוספת כתובת IP ip addr add 192.168.1.100/24 dev eth0
הצגת טבלת routing ip route show
הגדרת gateway ברירת מחדל 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

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

sudo dhclient eth0

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