پیشنیازهای تغییر آدرس آی پی در لینوکس
پیش از اینکه فرایند تغییر آدرس آیپی را آغاز کنیم، لازم است نیمنگاهی به آدرس آیپی کنونی بیندازیم.
برای پیدا کردن آی پی فعلی خود میتوانید فرمان «ip» را همراه با آپشن «a» به اجرا درآورید:
$ ip a
همانطور که میتوانید در اسکرینشات ببینید، هاست مثال ما دو آداپتور شبکه (Network Adapter) دارد:
- آدرس لوپبک (Loopback Address) – یا LocalHost – که از آن برای آزمودن اتصال شبکه روی کامپیوتر خود کمک میگیریم
- Interface یا رابط «enp0s3» که نقش آداپتور اصلی شبکه را ایفا میکند. این کارت شبکه چند نوع آدرس آیپی (IPv4 و IPv6) مختلف دارد.
درک نقش IP و تنظیمات شبکه، زمانی کامل میشود که با زیرساختی که روی آن اجرا میشود آشنا باشید. مقاله سرور مجازی لینوکس چیست بهخوبی توضیح میدهد که VPS لینوکسی چگونه کنترل کامل شبکه، IP و فایروال را در اختیار کاربر قرار میدهد و چرا این سطح از دسترسی برای مدیران سرور ضروری است.
در وضعیت فعلی، کامپیوتر مثال ما توانسته از Gateway یا درگاه «۱۹۲.۱۶۸.۱۷۸.۱/۲۴» به آدرس «۱۹۲.۱۶۸.۱۷۸.۳۱/۲۴» برسد.

| روش | توزیعهای قابل استفاده | توضیح کوتاه | مزایا | محدودیتها |
|---|---|---|---|---|
| ifconfig (موقتی) | همه توزیعها | تغییر موقتی آیپی با دستور ifconfig | سریع، بدون نیاز به ویرایش فایلها | بعد از ریبوت از بین میرود |
| ip command | تمام نسخههای مدرن | جایگزین رسمی ifconfig برای تنظیم موقت IP | استاندارد جدید، کاملتر از ifconfig | غیردائمی |
| ویرایش /etc/network/interfaces | Ubuntu / Debian | تنظیم IP استاتیک با ifupdown | دائمی، قابل کنترل | در برخی نسخهها غیرفعال است |
| ویرایش فایلهای network-scripts | CentOS / RHEL 7 | تعیین IP استاتیک در ifcfg-* | کنترل کامل و دائمی | در نسخه ۸ حذف شده |
| nmcli (Network Manager) | Ubuntu / Debian / CentOS / RHEL | تغییر IP با ابزار رسمی NetwokManager | قدرتمند، مناسب سرورهای جدید | در برخی موارد بعد از ریبوت نیاز به reapply دارد |
| رابط گرافیکی GUI | دسکتاپهای لینوکسی | تغییر IP از طریق Settings شبکه | آسان، بدون نیاز به خط فرمان | مناسب سرورها نیست |
نحوه تغییر آدرس آی پی در لینوکس با iconfig (موقتی)
توزیعهای مدرنتر لینوکس، فرمان «ifconfig» را به طور کامل منسوخ کردهاند و در حال حاضر پیشنهاد میشود کاربران از فرمان «ip» کمک بگیرند. اما ifconfig هنوز برای تغییر آیپی کاربرد دارد و ما هم از آن کمک میگیریم:
$ which ifconfig /usr/sbin/ifconfig
برای تغییر آدرس آیپی به این روش، فرمان ifconfig را همراه با نام رابط شبکه و آدرس آیپی جدید مورد نظرمان به اجرا درمیآوریم.
برای اختصاص دادن یک Subnet Mask یا میتوانید از شرط «netmask» (همراه با سابنت مسک مورد نظر) کمک بگیرید و یا میتوانید مستقیما از آدرسدهی CIDR استفاده کنید.
$ ifconfig <interface_name> <ip_address> netmask <netmask_address>
نکته: برای اینکه قادر به تغییر آدرس آی پی باشید لازم است دسترسی Administrator به کامپیوتر داشته باشید. این یعنی روی لینوکسهای Debian و Ubuntu باید در گروه Sudo باشید و در CentOS و RedHat، در گروه Wheel.
کاربرانی که مایلاند تنظیمات IP را در سطح سیستم عامل انجام دهند، معمولاً به یک محیط کاملاً مستقل نیاز دارند. پیشنهاد ما خرید سرور مجازی لینوکس است؛ زیرا در این سرویس میتوانید بهصورت مستقیم تنظیمات شبکه، فایروال و IP را تغییر دهید، بدون آنکه روی سایر کاربران تأثیری داشته باشید.
برای مثال با توجه به آدرسهای آیپی مورد استفاده در بخشهای قبلی، اگر بخواهیم آیپی خود را تغییر دهیم (به ۱۹۲.۱۶۸.۱۷۸.۳۲/۲۴)، فرمان زیر را به اجرا درخواهیم آورد:
$ ifconfig enp0s3 192.168.178.32/24 $ ifconfig enp0s3 192.168.178.32 netmask 255.255.255.0
برای تایید اینکه آدرس آیپی به درستی تغییر کرده، بار دیگر فرمان «ifconfig» را همراه با نام آداپتور شبکه اجرا میکنیم:
$ ifconfig <interface_name>
تغییر DHCP به آدرسدهی Static
هنگامی که آدرس آیپی را به صورت دستی عوض میکنید، لینوکس به صورت خودکار متوجه میشود که میخواهید به جای سرور DHCP، از آدرسدهی آیپی Static استفاده کنید.
این اطلاعات درون فرمان ifconfig هم قابل مشاهده است. در نخستین اسکرینشات میتوانید ببینید که آدرس آیپی همراه با پارامتر «dynamic» – که تحت عنوان DHCP هم شناخته میشود – ارائه شده است.
نکته مهم: تغییراتی که از طریق فرمان ipconfig به وجود میآورید، همیشگی نخواهند بود و صرفا نشست یا Session کنونی را تحت تاثیر قرار میدهند.
نحوه تغییر آدرس آی پی در لینوکس با فرمان ifupdown (دائمی)
در سیستم عامل لینوکس، تغییر دادن آدرس آیپی از طریق ابزارهای شبکه به این معنی نخواهد بود که پیکربندی IP بعد از ریبوت هم مطابق با تغییرات باقی میماند.

فایلهای شبکه در Ubuntu و Debian
برای اینکه تغییر آیپی دائمی شود، باید پیکربندی شبکه را به فایل «etc/network/interfaces/» اضافه کنید یا اگر آن را نمیبینید، فایلی جدید بسازید.
# Content of /etc/network/interfaces iface eth0 inet static address <ip_address> netmask <network_mask> gateway <gateway_ip>
برای مثال فرض میکنیم که میخواهیم آیپی به «۱۹۲.۱۶۸.۱۷۸.۳۲» تغییر کند، سابنت مسک «۲۵۵.۲۵۵.۲۵۵.۰» باشد و درگاه پیشفرض یا Default Gateway هم روی «۱۹۲.۱۶۸.۱۷۸.۱» قرار بگیرد.
برای پیادهسازی این تغییرات لازم است محتوا فایل Interfaces را ادیت و خطوط زیر را به آن اضافه کنید:
$ vim /etc/network/interfaces # Content of /etc/network/interfaces iface eth0 inet static address 192.168.178.32 netmask 255.255.255.0 gateway 192.168.178.1
برای پیادهسازی این تغییرات لازم است سرویس شبکهسازی (Networking Service) خود را – که از طریق فرمان iupdown کنترل میشود – ریاستارت کنید.
# For systemd hosts $ sudo systemctl restart networking.service # For pre-systemd hosts sudo /etc/init.d/networking restart
بعد از ریاستارت سرویس شبکهسازی باید بتوانید آیپی جدید خود را از طریق فرمان ifconfig یا ip مشاهده کنید:
$ ifconfig $ ip address
فایلهای شبکه در CentOS و Red Hat
برای تغییر آدرس آی پی در لینوکس CentOS یا Red Hat باید ابتدا پیکربندی شبکه را به فولدر یا دایرکتوری «etc/sysconfig/network-scripts/» اضافه کنید.
در این مسیر، رابط شبکهای که میخواهید تغییر کند را بیابید و شروع به ادیت آن کنید.
$ ls -l /etc/sysconfig/network-scripts $ nano <file>

برای تنظیم آیپی استاتیک در CentOS یا Red Hat، لازم است که پارامتر «BOOTPROTO» از حالت «dhcp» به حالت «Static» تغییر کند. از سوی دیگر باید اطلاعات شبکه خود – مانند Netmask و Default Gateway – را هم اضافه کنید.
در توزیعهای جدیدتر لینوکس مانند CentOS 8 یا RHEL 8 لازم است از دستور nmcli استفاده کنیم تا تغییرات به شکلی موثر پیادهسازی شوند.
اما اگر هنوز از سرویس شبکه (برای توزیعهایی مانند CentOS 7 و RHEL 7) استفاده میکنید، میتوانید سرویس شبکه را ریاستارت کنید تا تغییرات نهایی شوند.
$ nmcli device reapply <interface_name> (on CentOS 8) $ systemctl restart network.service (on CentOS 7/RHEL 7)
در حال حاضر تغییر آدرس آی پی در لینوکس نهایی شده است و میتوانید به کمک فرمان «ip»، از صحت آدرس مطمئن شوید:
$ ip a $ ifconfig
تغییر آدرس آی پی در لینوکس با Network Manager
در توزیعهای مدرنتر لینوکس که به سیستم systemd مجهز شدهاند احتمالا بارها با ابزار Network Manager روبهرو شده باشید. Network Manager جعبه ابزاری کامل است که اجازه میدهد اتصالات (Connections)، دیوایسها (Devices) و تنظیمات اتصال (Connectivity Settings) را روی هاست خود تغییر دهید.
یکی از ابزارهای موجود در Network Manager، به نام «nmcli» شناخته میشود و از آن برای تغییر آدرس آی پی لینوکس خود استفاده میکنیم.
برای تغییر آیپی به این روش، در بخش Device از فرمان nmcli کمک بگیرید و دقیقا مشخص کنید که «ipv4.address» کارت شبکه قرار است «modify» شود.
$ nmcli device modify <interface_name> ipv4.address <ip_address>

هنگام استفاده از فرمان «nmcli device modify»، نتوورک منیجر به صورت خودکار یک فایل اتصال جدید در فولدر «etc/NetworkManager/system-connection» ایجاد میکند.

برای اینکه تغییرات به شکلی موثر پیادهسازی شوند، لازم است پارامترهای «reapply» را به تنظیمات اتصال کنونی تغییر دهید.
$ nmcli device reapply <interface_name>
در حال حاضر آدرس آیپی توزیع دلخواه لینوکس شما تغییر کرده است. با این حال در نظر داشته باشید که تغییرات پدید آمده با ابزار nmcli ممکن است بعد از چند بار ریبوت سیستم، مجددا به حالت پیشین بازگردند.
تغییر آدرس آی پی به صورت دائمی
برای اینکه تغییرات پدیدآمده با Network Manager دائمی باشند، باید فایلهای اتصال را در مسیر «etc/NetworkManager/system-connection/» ادیت کنید. هنگام ادیت فایل پیکربندی Network Manager، خطی که باید تغییر کند را بیابید و آدرس آیپی مربوطه را وارد کنید.

سپس فایل را ذخیره کنید و از فرمان nmcli همراه با آپشن device reapply کمک بگیرید تا پیکربندی دستگاه مجددا اعمال شود:
$ nmcli device reapply
حالا که تغییرات نهایی شدهاند، میتوانید با استفاده از یکی از دو دستور «ifconfig» یا «ip»، آدرس آی پی جدید خود را مشاهده کنید.
تغییر آدرس آی پی با رابط گرافیکی (Graphical Interface)
گاهی از اوقات ممکن است بخواهید آدرس IPv4 را از طریق پنجرههای گرافیکی تغییر دهید. در توزیعهای مدرن لینوکس، پارامترهای شبکه را میتوان از طریق آیکن Network در گوشه بالا سمت راست صفحه (که تحت عنوان nm-applet نیز شناخته میشود) مدیریت کرد.

درون تنظیمات شبکه سیستم، روی نماد چرخدنده کنار اتصال مورد نظر کلیک کنید.

سپس در بخش IPv4 از تنظیمات اتصال، میتوانید IP Method را روی حالت دستی (Manual) قرار دهید و آدرس آیپی استاتیک را تعیین کنید.

برای تغییر آدرس خیلی ساده روی دکمه Apply کلیک و سپس سرویسهای شبکهسازی را از طریق nmcli ریاستارت کنید.
$ nmcli networking off $ nmcli networking on
به همین سادگی فرایند تغییر آدرس آی پی در لینوکس اوبونتو، دبیان و CentOS به پایان میرسد.
شبکهسازی در لینوکس چطور مدیریت میشود؟
در توزیعهای جدیدتر لینوکس ممکن است با ابزارهای متنوعی برای پیکربندی شبکهها روبهرو شوید. اکثر اوقات از Network Manager و فرمان ifupdown برای مدیریت شبکهسازی استفاده میشود:
$ sudo systemctl status NetworkManager $ sudo systemctl status networking
در برخی توزیعها، ممکن است ifupdown اصلا نصب نباشد و رابطهای شبکه تنها از طریق Network Manager مدیریت میشوند.
با این حال اگر روی کامپیوتر خود دو سرویس داشته باشید، میتوانید بدون اینکه Network Manager تداخلی در تنظیمات به وجود آورد، رابطها را از طریق فایل «etc/network/interfaces» تعیین کنید.

اگر میخواهید مدیریت رابطهای تعیین شده در فایل Interfaces از طریق Network Manager پیش برود، لازم است پارامتر Managed» را در فایل پیکربندی «NetworkManager.conf» روی حالت True قرار دهید.
سرور مجازی ایران
VPS ایران انتخابی قدرتمند با منابع اختصاصی، هاردهای NVMe پرسرعت و میزبانی روی بهترین دیتاسنترهای داخلی برای تجربهای سریع، پایدار و قابلاعتماد.
جمعبندی
در این مطلب نحوه تغییر آدرس آی پی توزیعهای اوبونتو، لینوکس، CentOS و Red Hat را به روشهای گوناگون آموختید. علاوه بر این با نحوه مدیریت و معماری شبکه در لینوکس آشنا شدید و یاد گرفتید که با پیکربندی صحیح، از بروز تداخل در آیپی آدرس جلوگیری کنید. در نهایت کار را با پاسخ به چند سوال پرتکرار به پایان میرسانیم.
سوالات متداولی که شما می پرسید؟
۱. آیا تغییر آیپی کاری غیرقانونی به حساب میآید؟
در اکثر موارد خیر، اما بسته به اینکه چطور آیپی خود را تغییر میدهید و در چه کشوری سکونت دارید، این کار میتواند غیرقانونی نیز تلقی شود.
۲. آیا آدرس آیپی روی دستگاههای گوناگون تغییر میکند؟
بله، در سادهترین حالت، تمام دیوایسها یک آیپی آدرس متفاوت از دیگری دارند.
۳. چه میشود اگر دو دستگاه آدرس آیپی یکسان داشته باشند؟
عبارت «تداخل آیپی» برای اوقاتی به کار میرود که دو یا چند دستگاه درون شبکه یا سابنتی واحد سعی دارند از یک آیپی آدرس یکسان استفاده کنند. این تداخل میتواند ارتباط با هاست را دچار مشکل کند و عملکرد آن را تحت تاثیر قرار دهد.
منبع:

