این قابلیت بصورت پیش فرض در اغلب توزیع های لینوکسی غیر فعال است.برای انکه بخواهید Static Route یا سرویس های NAT و VPN و … راه اندازی کنید باید ویژگی ip forward را فعال کنید. این ویژگی تحت هسته لینوکس و توسط فایل ip_forward برای IPV4 کنترل می شود. عدد صفر در این فایل یعنی غیر فعال بودن و عدد یک در این فایل به معنی فعال بودن این ویژگی می باشد.برای فعال کردن آن راه حل های متفاوتی وجود دارد که آنها را بررسی می کنیم.
اول بررسی می کنیم که ایا این ویژگی فعال است یه نه دو روش وجود دارد: روش اول خواندن فایل ip_forward با دستور cat در مسیر زیر :
روش دوم اسستفاده از دستور sysctl با پارامتر ورودی net.ipv4.ip_forward بصورت زیر :
در هر دو حالت خروجی صفر به معنی غیر فعال بودن این ویژگی می باشد.برنامه sysctl برای پیکربندی پارامتر های هسته (کرنل) لینوکس در زمان اجرای سیستم است.
فعال کردن ویژگی ip_forward :
دو روش برای فعال کردن ip_forward وجود دارد : روش اول استفاده از دستور sysctl به همراه گزینه w- بصورت زیر که مقدار یک را به پارامتر net.ipv4.ip_forward قرار می دهیم :
یا اینکه با دستور زیر مستقیما مقدار یک را در فایل ip_forward بریزیم :
این تغییرات فورا اعمال می شوند اما پس از خاموش کردن یا Reboot کردن سیستم از بین می روند. دلیل آن هم اینکه فایل ip_forward در دایرکتوری proc وجود دارد و خود این دایرکتوری بصورت فیزیکی و دائمی نیست بلکه در هنگام بوت شدن سیستم و اجرای هسته لینوکس در حافظه اصلی یا همان RAM قرار می گیرد و پس از خاموش شدن یا ری بوت شدن سیستم از بین می رود.
تو جه داسته باشد برای غیر فعال کردن بجای عدد 1 در دو دستور بالا عدد 0 را جایگزین کنید.
اعمال همیشگی و دائمی :
دستور های بالا تغییذات دائمی داشتند. دستور SYSCTL فایلی در مسیر etc/ به نام sysctl.conf دارد که پارمتر net.ipv4.ip_forward را در خو دارد که بصورت پیش فرض با عدد 0 را مقدار دهی شده است. با هر کداماز ویرایشگر ها فایل را باز کرده و بجای عدد 0 عدد 1 را برای پارامتر net.ipv4.ip_forward جایگزین کنید. این تغییر در فایل ip_forward هم بطور دائمی اعمال می شود.
برای اعما تغییرات به فایل sysctl.con دستور زیر را اجرا نمایید :
ودر نهاست سرویس network را restart می کنیم :
نویسنده نامی امیر
اول بررسی می کنیم که ایا این ویژگی فعال است یه نه دو روش وجود دارد: روش اول خواندن فایل ip_forward با دستور cat در مسیر زیر :
کد PHP:
cat /proc/sys/net/ipv4/ip_forward
output : 0
کد PHP:
sysctl net.ipv4.ip_forward
output : net.ipv4.ip_forward = 0
فعال کردن ویژگی ip_forward :
دو روش برای فعال کردن ip_forward وجود دارد : روش اول استفاده از دستور sysctl به همراه گزینه w- بصورت زیر که مقدار یک را به پارامتر net.ipv4.ip_forward قرار می دهیم :
کد PHP:
sysctl -w net.ipv4.ip_forward=1
کد PHP:
echo 1 > /proc/sys/net/ipv4/ip_forward
تو جه داسته باشد برای غیر فعال کردن بجای عدد 1 در دو دستور بالا عدد 0 را جایگزین کنید.
اعمال همیشگی و دائمی :
دستور های بالا تغییذات دائمی داشتند. دستور SYSCTL فایلی در مسیر etc/ به نام sysctl.conf دارد که پارمتر net.ipv4.ip_forward را در خو دارد که بصورت پیش فرض با عدد 0 را مقدار دهی شده است. با هر کداماز ویرایشگر ها فایل را باز کرده و بجای عدد 0 عدد 1 را برای پارامتر net.ipv4.ip_forward جایگزین کنید. این تغییر در فایل ip_forward هم بطور دائمی اعمال می شود.
برای اعما تغییرات به فایل sysctl.con دستور زیر را اجرا نمایید :
کد PHP:
sysctl -p net.ipv4.ip_forward
کد PHP:
etc/init.d/network restart