اطلاعیه

بستن
هنوز اطلاعیه ای در دست نیست.

دستور ip برای تنظیمات اینترفیس شبکه به همراه 10 مثال عملی

بستن
X
 
  • فیلتر کردن
  • زمان
  • نمایش
Clear All
پست های جدید

    دستور ip برای تنظیمات اینترفیس شبکه به همراه 10 مثال عملی

    در این پست قصد داریم با استفاده از دستور ip در لینوکس نحوه اضافه کردن static ip address, static route, default gateway و غیره را مرور کنیم. ip دادن به اینترفیس شبکه در لینوکس قالبا با دستور ip انجام میشود. دستور ifconfig در حقیقت منسوخ شده و به جای آن در لینوکس از دستور ip استفاده میشود. به هر حال دستور ifconfig نیز همچنان کار میکند و در اکثر توزیع های لینوکسی موجود است.

    دستور ip در لینوکس


    توجه : لطفا قبل از اعمال هر گونه تغییرات از فایل configuration خود backup تهیه کنید.


    چگونه در لینوکس static ip address v4 را تعریف کنیم؟

    برای تعریف statick ip address شما باید فایل کانفیگ شبکه خود را آپدیت یا ویرایش کنید تا بتوانید یک ip static به سیستم assign کنید. برای این منظور شما باید super user باشید. در حقیقت از دستور su که مخفف switch user هست در ترمینال یا command prompt استفاده کنیم.


    در سیستم عامل های RHEL/CentOS/Fedora :

    کانفیگ فایل مورد نظر برای اینترفیس خود (eth0 یا eth1) را با استفاده از ویرایشگر مورد علاقه تان باز کنید. برای مثال ما با دستور زیر میخواهیم به اینترفیس eth0 مان ip بدهیم :
    کد:
    [root@linuxzone ~]# vi /etc/sysconfig/network-scripts/ifcfg-eth0

    نمونه خروجی دستور :
    کد:
    DEVICE="eth0"
    BOOTPROTO=static
    ONBOOT=yes
    TYPE="Ethernet"
    IPADDR=192.168.50.2
    NAME="System eth0"
    HWADDR=00:0C:29:28:FD:4C
    GATEWAY=192.168.50.1
    با خط های بالا که درون فایل وارد میکنیم میتوانیم ip و دیگر اطلاعات مورد نظرمان را به صورت static وارد کنیم.



    در سیستم عامل های Ubuntu/Debian/Linux Mint :

    برای ip دادن به اینترفیس eth0 باید فایل کانفیگ آن را که در مسیر /etc/network/interfaces میباشد و ویرایش کنیم و پارامترهای آن را همانند مثال زیر تغییر دهیم :
    کد:
    auto eth0 iface eth0 inet static address 192.168.50.2 netmask 255.255.255.0 gateway 192.168.50.1
    اکنون سرویس network را بعد از وارد کردن همه جزئیات گفته شده با استفاده از دستور زیر restart میکنیم :
    کد:
    $ /etc/init.d/networking restart
    کد:
    $ sudo /etc/init.d/networking restart


    1 - نحوه تخصیص یک ip address به اینترفیس مورد نظر :

    با استفاده از دستور زیر میتوانیم ip address را به یک اینترفیس خاص (eth1) خیلی سریع اختصاص دهیم :
    کد:
    $ ip addr add 192.168.50.5 dev eth1
    کد:
    $ sudo ip addr add 192.168.50.5 dev eth1

    توجه : متاسفانه همه تنظیمات بالا بعد از یک بار restart سیستم از بین خواهد رفت و در حقیقت موقتی میباشد.



    2 - نحوه چک کردن ip address :

    برای دریافت اطلاعات کامل از اینترفیس های شبکه تان مانند جزییات ip address و mac address دستور زیر را استفاده میکنیم :
    کد:
    $ ip addr show
    کد:
    $ sudo ip addr show

    نمونه خروجی دستور :
    کد:
    1: lo: <LOOPBACK,UP,LOWER_UP> mtu 16436 qdisc noqueue state UNKNOWN
        link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
        inet 127.0.0.1/8 scope host lo
        inet6 ::1/128 scope host
           valid_lft forever preferred_lft forever
    2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UNKNOWN qlen 1000
        link/ether 00:0c:29:28:fd:4c brd ff:ff:ff:ff:ff:ff
        inet 192.168.50.2/24 brd 192.168.50.255 scope global eth0
        inet6 fe80::20c:29ff:fe28:fd4c/64 scope link
           valid_lft forever preferred_lft forever
    3: eth1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UNKNOWN qlen 1000
        link/ether 00:0c:29:28:fd:56 brd ff:ff:ff:ff:ff:ff
        inet 192.168.50.5/24 scope global eth1
        inet6 fe80::20c:29ff:fe28:fd56/64 scope link
           valid_lft forever preferred_lft forever


    3 - نحوه حذف یک ip address :

    دستور زیر ip address داده شده به یک اینترفیس (eth1) را حذف خواهد کرد :
    کد:
    $ ip addr del 192.168.50.5/24 dev eth1
    کد:
    $ sudo ip addr del 192.168.50.5/24 dev eth1


    4 - نحوه فعال کردن اینترفیس شبکه :

    آپشن up به همراه نام اینترفیس (eth1) اینترفیس شبکه را فعال میکند. برای مثال دستور زیر اینترفیس eth1 را فعال مینماید :
    کد:
    $ ip link set eth1 up
    کد:
    $ sudo ip link set eth1 up


    5 - نحوه غیرفعال کردن اینترفیس شبکه :

    آپشن down به همراه نام اینترفیس (eth1) اینترفیس شبکه را غیرفعال میکند. برای مثال دستور زیر اینترفیس eth1 را غیرفعال مینماید :
    کد:
    $ ip link set eth1 down
    کد:
    $ sudo ip link set eth1 down


    6 - چگونه route table را بررسی کنم؟

    برای چک کردن اطلاعات routing table سیستم دستور زیر را اجرا کنید :
    کد:
    $ ip route show
    کد:
    $ sudo ip route show

    نمونه خروجی دستور :
    کد:
    10.10.20.0/24 via 192.168.50.100 dev eth0
    192.168.160.0/24 dev eth1  proto kernel  scope link  src 192.168.160.130  metric 1
    192.168.50.0/24 dev eth0  proto kernel  scope link  src 192.168.50.2
    169.254.0.0/16 dev eth0  scope link  metric 1002
    default via 192.168.50.1 dev eth0  proto static


    7 - نحوه اضافه کردن static route :

    دلیل اینکه چرا شما نیاز به اضافه کردن static route ها یا manual route یا route ها دستی به این خاطر است که ترافیک نباید از طریق default gateway عبور کند. ما باید static route اضافه کنیم تا ترافیک را از بهترین راه عبور دهیم تا به مقصد برسد :
    کد:
    $ ip route add 10.10.20.0/24 via 192.168.50.100 dev eth0
    کد:
    $ sudo ip route add 10.10.20.0/24 via 192.168.50.100 dev eth0


    8 - نحوه حذف static route :

    برای حذف static route اختصاص داده شده میتوانید به اسانی با اجرای دستور زیر این کار را انجام دهید :
    کد:
    # ip route del 10.10.20.0/24
    کد:
    $ sudo ip route del 10.10.20.0/24


    9 - نحوه اضافه کردن static route های دائمی :

    همه روت های بالا بعد از یک بار restart سیستم از بین میرود. برای اضافه کردن static route به صورت دائمی فایل /etc/sysconfig/network-scripts/route-eth0 ویرایش میکنیم. ( ما static route مربوط به eth0 را جمع آوری کرده و خطوط زیر را اضافه و سپس save و خارج میشویم.) به صورت پیش فرض فایل route-eth0 وجود ندارد و باید ایجاد گردد :


    در سیستم عامل های RHEL/CentOS/Fedora :
    کد:
    # vi /etc/sysconfig/network-scripts/route-eth0
    10.10.20.0/24 via 192.168.50.100 dev eth0

    در سیستم عامل های Ubuntu/Debian/Linux Mint :
    فایل /etc/network/interfaces را باز کنید و در انتهای آن route های static دائمی را اضافه کنید. در سیستم شما ip address متفاوت خواهد بود :
    کد:
    $ sudo vi /etc/network/interfaces
    کد:
    auto eth0
    iface eth0 inet static
    address 192.168.50.2
    netmask 255.255.255.0
    gateway 192.168.50.100
    #########{Static Route}###########
    up ip route add 10.10.20.0/24 via 192.168.50.100 dev eth0

    سپس سرویس network را بعد از وارد کردن جزییات بالا با استفاده از دستور زیر restart میکنیم :
    کد:
    # /etc/init.d/network restart
    کد:
    $ sudo /etc/init.d/network restart


    10 - نحوه اضافه کردن default gateway :

    default gateway میتواند یا به صورت کلی و یا به در یک کانفیگ فایل اینترفیس خاص مشخص شود. مزایایی default gateway در اینجاست که اگر ما بیشتر از یک اینترفیس شبکه روی سیستم موجود داشته باشیم میتوانیم تنها برای یکی default gateway تعریف کنیم. شما میتوانید سریعا و با دستور زیر default gateway تعریف کنید :
    کد:
    # ip route add default via 192.168.50.100
    کد:
    $ sudo ip route add default via 192.168.50.100

    همچنین توصیه میشود مطالعه کنید :

    دستور netstat برای مدیریت شبکه در لینوکس

    راهنمای جامع برای یک Sysadmin لینوکس به منظور مدیریت، عیب یابی و برطرف کردن مشکلات شبکه

    13 دستور پیکربندی و عیب یابی شبکه در لینوکس

    دستور ping به همراه 12 مثال عملی


    باعث خوشحالی بنده هست اگر ایرادات من رو تصحیح کنید. لطفا برای کسب اطلاعات بیشتر دربار دستور ip صفحه man آن را در ترمینال مطالعه کنید.

    موفق باشید
    محمد هابیلی
    آخرین ویرایش توسط Habili; در تاریخ/ساعت 02-02-2021, 03:37 PM.

درباره انجمن منطقه لینوکسی ها

انجمن منطقه لینوکسی ها با هدف ارتقاء سطح علمی کاربران در سطح جهانی و همچنین کمک به بالا بردن سطح علمی عمومی در زمینه های تخصصی فوق پایه گذاری شده است. انجمن منطقه لینوکسی ها از طریق کارشناسان و متخصصان پاسخگوی سوالات گوناگون کاربران مبتدی یا پیشرفته میباشد تا حد امکان تلاش شده که محیطی متنوع و کاربر پسند و به دور از هرگونه حاشیه جهت فعالیت کاربران در این انجمن ایجاد شود. لذا ما به صورت مستمر برای پیشرفت کمی و کیفی محتوی و اطلاعات انجمنمان میکوشیم که این برای ما ارزشمند و حائز اهمیت است. کلیه حقوق،اطلاعات و مقالات در این انجمن متعلق به سایت منطقه لینوکسی ها میباشد، و هرگونه نسخه برداری بدون ذکر منبع مورد پیگرد قانونی خواهد شد.

شبکه های اجتماعی
در حال انجام ...
X