صفحه اصلی

آرشیو مقاله ها

آرشیو اخبار

همکاری با ما

تماس با ما
 
عنوان خبر
 
  
 
سامانه جمع آوری خودکار تجهیزات IT
افرنگ نیوز مجله زندگی
ماشین ایرانی
elham_fitnees_cool
فروشگاه رایکا
فروشگاه رایکا
هر روز صبح جدیدترین اخبار در افرنگ نیوز کلیک کنید ...
A.A.C/ تنظيمات TCP/ IP در لينوكس‌
تعداد بازدید : 729
 
 



پروتكل TCP/IP به عنوان يكي از پركاربردترين پروتكل‌هاي شبكه‌اي، بسته به سيستم‌عاملي كه از آن استفاده مي‌كند، به تنظيمات خاص خود نياز دارد. در متن حاضر به‌طور مفصل به اين تنظيمات با استفاده از ابزارهاي مختلف خواهيم پرداخت.

 

 
قبل از تصميم‌گيري براي نصب و راه‌اندازي TCP/IP بر روي لينوكس بايد از آماده بودن فايل سيستم براي اين كار مطمئن شويد. براي اين‌كار كافي است چند گام ساده را طي كنيد. نخست آن‌كه بايد از نصب بودن نرم‌افزار شبكه اطمينان بيابيد. اين موضوع در زمان نصب لينوكس از كاربر سوال مي‌شود و در اكثر مواقع و در بيشتر توزيع‌هاي لينوكس به‌صورت پيش‌فرض انتخاب شده است.

توجه داشته باشيد كه دايركتوري proc/ يكي از مكان‌هايي است كه اطلاعات شبكه‌اي لينوكس در آنجا ذخيره‌مي‌شود. وجود اين دايركتوري يكي از نشانه‌هاي نصب بودن امكانات شبكه‌اي در لينوكس است.
زماني كه از محتويات دايركتوري proc/ ليست مي‌گيريد (يعني با دستور cd به اين مسير برويد و سپس فرمان ls را اجرا كنيد) چيزي مشابه  تصوير شكل 1 را مشاهده خواهيد كرد.

 
شكل 1
 
درصورتي‌كه دايركتوري proc/ در سيستم‌شما موجود نباشد (يادآوري مي‌كنيم كه براي اين‌كار لازم است كه از مجوز‌هاي root برخوردار باشيد)، به احتمال زياد ناگزير خواهيد بود كه كرنل سيستم‌عامل خود را مجدداً كامپايل كرده و گزينهproc/ را برگزينيد. به اين منظور بايد به دايركتوري سورس لينوكس يعني usr/src/linux/ تغيير مسير داده و روتين تنظيمات (يا configuration) كرنل را اجرا كنيد. دستور اين كار چنين است: Make config
اگر در محيط گرافيكي X-windows ‌كار مي‌كنيد، مي‌توانيد از ابزارهاي گرافيكي استفاده كرده و دستور مقابل را تايپ كنيد: Make xconfig
                               
در زمان كامپايل كرنل از شما سوال مي‌شود كه آيا به پشتيباني از procfs نياز داريد يا خير. به اين مورد پاسخ مثبت دهيد. همين موضوع باعث ساخته شدن دايركتوري proc/ در سيستم شما خواهد شد.
دايركتوري proc/ هميشه در زمان راه‌اندازي لينوكس به‌طور خودكار mount مي‌شود. وجود خطي مشابه با خط زير در فايل etc/fstab/ شرايط mount خود كار اين دايركتوري را فراهم مي‌كند None   /proc     proc    defaults                                       .
گام بعدي كه قبل از نصب و راه‌اندازي TCP/IP لازم است برداشته شود، انتخاب نام ميزبان (hostname) سيستم است. براي اين‌كار مي‌توان از دستور مقابل استفاده كرد :
 Hostname ...name ...                                                                                        
در دستور بالا، به‌جاي name نام مورد نظر خود را براي ميزبان قرار دهيد. در اينجا ذكر اين نكته ضروري است كه اگر سيستم شما در شبكه قرار دارد و در نتيجه داراي يك نام domain كامل هستيد، مي‌توانيد در دستور فوق از نام كامل سيستم و Domain استفاده كنيد. مثلاً: Hostnameyourname.yourdomain.com              
در هر صورت يك ورودي جديد در فايل etc/hosts/ ساخته خواهد شد كه منعكس كننده نتيجه اجراي دستور بالا است. توصيه مي‌شود كه از اين موضوع براي اطمينان از صحت عملكرد دستور قبلي حتماً استفاده كنيد.

نكته ديگري كه بايد قبل از راه‌اندازي TCP/IP بر روي سيستم خود در نظر بگيريدآن است كه بايد يك نشاني IP براي شناسايي سيستم خود در شبكه انتخاب كنيد. به‌طور معمول فايل etc/netyworks/ شامل تمامي نام‌ها و نشاني‌هايي است كه سيستم شما در شبكه با آن‌ها سروكار دارد. نرم‌افزارهاي كاربردي از اطلاعات موجود در اين فايل براي تعيين نشاني‌هاي مقاصد منابع موجود در شبكه استفاده مي‌كنند. در فايل etc.networks دو ستون براي فهرست كردن نام سمبوليك و نشاني‌ IP منابع شبكه در نظر گرفته شده است. در بسياري از موارد در فايل‌هايetc/networks/ مدخلي براي درايورloopback  وجود دارد. (نشاني loopback از طرف برخي از نرم‌افزارها براي اشاره به سيستم خودي مورد استفاده قرار مي‌گيرد) در زير نمونه‌اي از بخشي از يك فايلetc/networks/ آورده شده است:
zoopback            127.0.0.0  
Merlin-net      147.154.12.0    
BNR             47.0.0.0   

در نمونه فايل فوق،‌ دو شبكه به همراه نشاني‌هاي ‌IP آن‌ها ثبت شده‌اند. توجه داشته باشيد كه در نشاني‌هاي IP  فقط بخش شبكه در نشاني IP ذكر شده است و به‌جاي بخش انتهايي نشاني‌ها، صفر قرار داده شده است.

رابط شبكه‌
يكي از كارهاي ديگري كه در شبكه‌بندي لينوكس بايد انجام شود، تعيين رابط شبكه براي سيستم‌عامل و ديگر ابزارهاي نرم‌افزاري آن است. اين‌كار توسط دستور ‌ ifconfig انجام مي‌شود. اجراي اين دستور به همراه ذكر نشاني IP باعث مي‌شود تا لايه شبكه كرنل لينوكس بتواند با رابط شبكه ارتباط برقرار كند. بدين ترتيب سيستم‌عامل مي‌تواند از طريق رابط شبكه به تبادل اطلاعات با دنياي خارج بپردازد.

كاربر بايد به ازاي هر يك از درايورهاي شبكه، رابط‌هاي شبكه مربوط را برپاكند. بدين معني كه بايد براي هر يك از درايور‌هاي loopback ،‌ppp و يا اينترنت، يك‌بار فرمان ifconfig اجرا شود. ترتيب كار به‌صورت زير است:

Ifconfig interface-name IP-address
در دستور بالا، به‌جاي interfacename بايد نام اختصاري درايور قرار داده شود. (مثلاً در مورد loopback از lo و ppp  يا eth براي درايورهاي مربوطه به ppp  ياethernet)

بعد از آن‌كه دستور ‌ ifconfig اجرا شد و در نتيجه رابط شبكه فعال گرديد،‌ كاربر بايد از دستور route براي ايجاد و يا حذف مسيرها در جدول مسير‌يابي (routing table) كرنل استفاده كند. اين عمل از آن جهت اهميت دارد كه سيستم بتواند توسط جدول مسير‌يابي، ديگر منابع شبكه را بيابد. از دستور فوق به‌صورت زير استفاده مي‌شودُ‌:
Route add\dell IP_address
توجه داشته باشيد در هر مورد استفاده از دستور فوق، بايد يكي از حالات add يا del بكار برده شوند.
در صورتي‌كه بخواهيد محتويات فعلي جدول مسير‌يابي سيستم را مشاهده كنيد، مي‌توانيد به‌ اين صورت عمل كنيد: Route$ 

(يعني استفاده از دستور route بدون هيچ سوئيچ). اگر اين دستور را اجرا كنيد، ممكن است چيزي شبيه متن زير ببينيد. (در اين مثال، سيستم مورد نظر فقط داراي مدخل درايور loopback بوده است)

 route$
Kernel Routing table
Destination Gateway Genmask Flags MSS Window Use Iface
Loopback  *255.0.0.0U1936   0    16   |o
 

يادآوري مي‌كنيم كه يك روش ديگر نمايش داده‌هاي جدول مسير‌يابي، استفاده از دستور مقابل  است: 
Netstat    -rn                                                                      
 
كد1
 
 
كد2
 
 
كد3
 
در دستور فوق، سوئيچ r باعث نمايش جدول مسير‌يابي و سوئيچ n منجر به نمايش نشاني‌هاي IP به‌جاي اسامي نمادين مي‌شوند. در جداول مسير‌يابي، ستون‌هايي كه اهميت دارند، ستون مربوط به نام مقصد مثلا ًloopback، ستون مربوط به ماسك مانند Genmask و نهايتاً ستون نام رابط شبكه هستند. شما مي‌توانيد توسط دستور route به همراه سوئيچn، داده‌هاي جدول مسير‌يابي را به‌صورتي مشاهده كنيد كه در آن به‌جاي اسامي سمبوليك، از نشاني‌هاي IP استفاده شده باشد. همان‌طور كه قبلاً اشاره شد، در شرايط معمول سيستم‌هاي مجهز به سيستم‌عامل لينوكس داراي يك رابط loopback و يك رابط شبكه نظير اترنت هستند كه بايد به‌ترتيب تنظيم شوند.

تنظيم رابط loopback 
همان‌طور كه قبلاً اشاره كرديم، رابط loopback توسط برخي از نرم‌افزارها براي كاركرد طبيعي مورد استفاده قرار مي‌گيرد. از آن گذشته تعداد ديگري از نرم‌افزارهاي كاربردي تحت لينوكس نيز از اين رابط براي كاربردهاي عيب‌يابي كمك مي‌گيرند. يادآوري مي‌كنيم كه نشاني IP يك رابط شبكه loopback به‌صورت 127.0.0.1 نوشته مي‌شود و فايل etc/hosts/ بايد يك ورودي براي loopback باشد.

در اينجا مناسب است كه خاطر نشان كنيم كه نشاني loopback را مي‌توان به‌صورت‌هاي گوناگوني نوشت و اصولاً هر نشاني به فرم x)  127.x.x.x  به معني عددي بين 0 تا 255  است) پذيرفتني است. اينكه چرا عادت كرده‌ايم كه از نشاني 127.0.0.0 استفاده كنيم، فقط جنبه تاريخي دارد و در سيستم‌هاي يونيكسي اوليه چنين مرسوم بوده است.
 
در صورتي‌كه ورودي مربوط به رابط loopback در فايل etc/hosts/ ثبت نشده باشد، مي‌توان به كمك ابزار ifconfig  به‌صورت زير اين مدخل را ايجاد كرد:
Ifconfing |o 127.0.0.0
براي مشاهده وضعيت رابط loopback در فايل etc/hosts/ مي‌توانيم از دستور ifconfig  lo استفاده كنيم. كد شماره 1 خروجي و نتيجه اجراي دستور فوق را نشان مي‌دهد.

پس از اجراي دستور بالا، نوبت مي‌رسد به اضافه كردن درايور loopback به جدول مسير‌يابي كرنل كه اين‌كار با استفاده از دستور  route به صورت زير امكان‌پذير است:

Route               add                  127.0.0.0
Route               add                   localhost
براي بررسي درستي تنظيمات، مي‌توانيد از دستور ping به ‌شكل زير كمك بگيريد:
Pinglocalhost
كد شماره 2 نتيجه اجراي دستور فوق است. در اين مورد، روند اجرايي دستور ping توسط تركيب كليدهاي كنترل و C متوقف شده است. در صورتي‌كه نتيجه اجراي اين دستور در سيستم شما منجر به خروجي مطلوب نشده باشد، بدين معني است كه اوضاع صحيح نيست و بايد فايل‌هاي configuration را مجدد بررسي و احتمالاً ويرايش نماييد.

تنظيم رابط اترنت
براي تنظيم رابط اترنت (مثلاً كارت شبكه)‌ هم مي‌توانيد همان مراحل قبلي را مجدد تكرار كنيد. فقط توجه داشته باشيد كه نام رابط شما چيزي مانند  eth0 يا eth1 است و نشاني IP را نيز بايد به نشاني IP انتخابي خود تغيير دهيد. در اينجا زماني‌كه قصد اجراي دستور ifconfig را براي رابط شبكه داريد، نيازي به مشخص كردن ماسك شبكه نخواهيد داشت. زيرا سيستم‌عامل مي‌تواند مقدار پارامتر ماسك را به‌طور خودكار از نشاني‌ IP داده شده به‌دست آورد. به عنوان مثال مي‌توانيد براي ثبت نشاني 147.123.20.1 از يكي از خطوط زير استفاده كنيد:

Ifconfig       147.123.20.1            
 Ifocnrig        147.123.20.1         netmask    25.255.255.0       
براي بررسي صحت انجام عمليات مي‌توانيد بار ديگر از دستور  fconfig  eth0 استفاده كنيد. كد شماره 3 نمونه‌اي از نتيجه اجراي اين دستور را نمايش مي‌دهد.

 
شكل 2
 
اگر به خروجي شكل 2 دقت كنيد، متوجه مي‌شويد كه نشاني Broadcast بر اساس نشانيIP سيستم محلي تنظيم شده است. اين عمل از آن جهت توسط TCP/IP انجام مي‌گيرد كه تمام سيستم‌هاي موجود در شبكه به يك‌باره در دسترس قرار گيرند. مقدار و اندازه Maximum Transfer Unit  هم به‌طور معمول بر اساس استانداردهاي شبكه‌هاي اترنت، به مقدار حداكثر مجاز يعني 1500 تنظيم  مي‌شود.

همان‌طور كه مي‌دانيد، گام بعدي اضافه كردن نشاني اترنت به جدول مسير‌يابي كرنل است. نشاني IP مورد نياز براي همراهي در دستور route همان نشاني شبكه بدون ذكر پارامتر محلي است (يعني به‌جاي بخش آخر، از مقدار صفر استفاده مي‌كنيم). براي آنكه تمام شبكه محلي را در يك نوبت پوشش دهيم، از گزينه net در دستور route كمك مي‌گيريم. در نتيجه شكل استفاده از دستور route براي مثال ما، به‌صورت زير خواهد بود:

Route   add  -net   147.123.20.0

اين دستور تمامي  سيستم هاي موجود درشبكه محلي را كه توسط نشاني  147.123.20.0شناسايي مي‌شوند، را به جدول مسير‌يابي اضافه مي‌كند. در صورتي‌كه از اين دستور به‌شكل بالا استفاده نكنيد، ناگزير خواهيد بود كه يكايك سيستم‌هاي موجود در شبكه را به‌صورت دستي به جدول مسير‌يابي ا ضافه كنيد.

روش ديگر آن است كه از فايل tc/networks/ فقط براي مشخص كردن بخش شبكه نشاني‌هاي IP شبكه استفاده كنيم. فايل tc/networks/ ممكن است شامل فهرست‌هايي از نام‌ها و نشاني‌هاي IP باشد. به عنوان مثال در صورتي‌كه در اين فايل، ورودي مربوط به شبكه‌اي به‌نام foobarnet داشته باشيم، مي‌توانيم تمام شبكه كمك دستور زير به جدول مسير‌يابي اضافه كنيم:

Route  add  foobar  -net
استفاده از فايل etc/networks‌/ اين اشكال امنيتي را به همراه دارد كه به تمام سيستم‌هاي موجود در شبكه اجازه دسترسي و مجوز‌هاي يكساني داده مي‌شود.

 
شكل 3
 
پس از آن‌كه مسير‌ها به جدول‌ مسير‌يابي كرنل اضافه شدند، مي‌توانيد براي بررسي صحت تنظيمات، از دستور ping براي هر يك از سيستم‌هاي شبكه استفاده كنيد. براي اين‌كار يا بايد نام سيستم‌مقصد را داشته باشيد و يا آنكه نشاني IP آن‌را بدانيد. اين اطلاعات مي‌توانند از طريق فايل etc/hosts/ و يا سرويسي مانند DNS به‌دست آيند.
پس از آنكه مراحل فوق به درستي انجام گرديدند، سيستم‌ لينوكس شما قادر خواهد بود كه به هر يك از سيستم‌هاي موجود در شبكه محلي توسط پروتكل TCP/IP متصل شود. در صورتي‌كه شبكه مورد نظر كوچك باشد، اين عمل كفايت مي‌كند و كار در همين‌جا خاتمه يافته تلقي مي‌شود.
 
اما در شبكه‌هاي بزرگ‌تر و يا شبكه‌هايي كه از پروتكل‌هاي ويژه‌اي استفاده مي‌كنند و يا در آن‌ها ‌Gateway به‌كار رفته باشد، نياز به طي  مراحل ديگري وجود خواهد داشت. در صورتي‌كه قصد اضافه كردن سيستم‌هاي ديگري را به شبكه داشته باشيد كه از TCP/IP استفاده مي‌كنند، مي‌توانيد همانند مراحل قبلي، نام و نشاني‌IP هاي آن‌ها را به فايل etc/hosts/ اضافه كنيد. در شكل 3 نمونه‌اي از يك فايل etc/hosts/ نمايش داده شده است كه در آن سيستم‌هايي به‌نام‌هاي godzilla و godzilla.tpci  ثبت شده‌اند. اين سيستم‌ها كه مي‌توانند مجهز به سيستم‌عاملي (كه از TCP/IP پشتيباني مي‌كند) باشند، قادر خواهند بود به‌كمك telnet يا ftp به سيستم لينوكسي ما متصل شوند (توجه داشته باشيد كه كاربر چنين سيستم‌هايي فقط زماني قادر خواهد بود به سيستم شما ‌ login كند كه مجوزهاي مربوط را براي آنها تنظيم كرده باشيد).  درصورتي‌كه نام يا نشاني يك سيستم راه‌دور در فايل etc/hosts/ ثبت شده باشد، شما قادر خواهيد بود كه توسط ابزارهايي مانند telnet يا ftp با آن سيستم ارتباط داشته باشيد.
 
Name service و Name resolver 
پروتكلTCP/IP از ورودي‌هاي فايلetc/hosts/ براي ترجمه اسامي به نشاني‌هاي IP استفاده مي كند. به عنوان مثال، زماني از نامي مانند darkstar استفاده مي‌كنيد، TCP/IPبه فايل etc/hosts/ مراجعه مي‌كند تا نشاني سيستمي به‌نام darkstar را در آن بيابد. در صورتيكه چنين ورودي در اين فايل موجود نباشد، شما قادر به اتصال چنين سيستمي نخواهيد بود.

اما تصور كنيد كه تعداد سيستم‌هاي موجود در شبكه زياد باشند و شما قصد اتصال به تعداد بيشتري از سيستم‌ها را داشته باشيدو در اين صورت تنظيم و اضافه كردن يكايك نام‌ها و نشاني‌هاي IP به جدول مسير‌يابي كاري خسته‌كننده و زمان‌بر خواهد بود. سرويس BIND كه مخفف عبارت Berkeley Internet Name Domain Service  است براي حل اين مشكل ايجاد شده است.

بعد‌ها BIND در DNS يا Domain Name System نيز پياده‌سازي شد. در حال حاضر اكثر توزيع‌هاي لينوكس به BIND مجهز هستند و در بعضي از نسخه‌ها هم DNS از قبل پياده‌سازي شده است. BIND و DNS هر دو مقوله‌هاي پيچيده‌اي هستند كه بسياري از كاربران لينوكس را فراري مي‌دهند. درصورتي‌كه شبكه شما به يك DNS سرور متصل باشد و يا آن‌كه قصد استفاده از سرور DNS  ISP را داشته باشيد، نيازي به اجراي BIND بر روي سيستم خود نخواهيد داشت. اما در عوض بايد سيستم خود را به‌گونه‌اي تنظيم كنيد كه قادر به استفاده از سرور DNS باشد. در چنين مواقعي، به‌جاي آن‌كه نام‌ها و نشاني‌هاي يكايك سيستم‌هاي متصل به شبكه را به فايل etc/hosts/ اضافه كنيد، كلاينت DNS و يا مجموعه‌اي از روتين‌هاي كتابخانه‌اي در لينوكس، فراخواني مي‌شوند و با استفاده از سرور DNS نام‌هاي مورد نظر را به نشاني‌هاي مربوطه آن‌ها ترجمه يا Resolve مي‌كنند. Name Resolver توسط فايل etc/resolv.conf/ تنظيم مي‌شود.

به‌طور معمول اين فايل شامل راهنماي (directive) جستجو وراهنماي Name server است. راهنماي جستجو به‌شكل زير به‌كار برده مي‌شود:
 
در عبارت فوق، هر يك از domain‌ها توسط فهرستي از پسوند‌هاي دامنه‌اي جايگزين مي‌شوند كه Name Resolverبه اسامي ميزباني اضافه مي‌كند كه به‌صورت كامل مشخص نشده باشد. به عنوان مثال، به راهنماي جستجوي زير توجه كنيد:

Search  xyz.com  Us.xyz.com   europe.xyz.com
درصورتي‌كه نامي مانند http://www.abc.com  به‌كار گرفته شده باشد، مي‌گوييم كه اين نام به‌صورت كامل بيان شده است (كه شامل abc.com  و پسوند نام ميزبان http://www  است). در چنين وضعيتي، از راهنماي جستجو استفاده نخواهد شد. اما اگر يك سرويس TCP/IP  از نامي مانند www  استفاده كند كه به‌شكل كامل نيست، در اين صورت راهنماي جستجو سعي خواهد كرد تا اين نام را به ترتيب به صورت اسامي مشابه باhttp://www.xyz.com  و http://www.us.xyz.com  و . . . تعبير كند.
سرور‌هاي DNS مورد استفاده Name Resolver توسط راهنماي nameserver مشخص مي‌شود:
Nameserver  IPaddress

كه در آن پارامتر Ipaddress نشاني IP سرور DNS است. به عنوان مثال، در صورتي‌كه نخستين سرور DNS داراي نشاني IP برابر با  199.231.13.10 باشد، در اين صورت راهنماي DNS به‌شكل زير خواهد شد:
Nameserver 100.231.13.10   

در هر مورد مي‌توان حداكثر مي‌توان سه نشاني سرور DNS مشخص كرد كه هر يك داراي راهنماي nameserver  خود هستند و در يك خط ثبت مي‌شوند.

مطلب ديگري كه مي‌تواند توسط كاربر تنظيم شود، ترتيب مراجعه به DNS يا فايل etc/hosts/ در زمان ترجمه نام‌ است. بدين معني كه كاربر مي‌تواند با كمك فايل etc/nsswitch.conf/ انتخاب كند كه براي ترجمه نام، نخست به DNS مراجعه شود و سپس به فايل etc/hosts/ و يا به‌صورت برعكس.

در هنگام استفاده از سيستم‌هاي بزرگ و يا در زماني كه قصد استفاده از تمام سرويس‌هاي اينترنتي در سيستم لينوكس خود داشته باشيد، لازم خواهد بود كه مشخصه‌هاي BIND به‌درستي تنظيم شده باشند. خوشبختانه چنين تنظيمي فقط كافي است كه يك‌بار انجام شود. براي اين‌كار به نرم‌افزار BIND نياز خواهد بود كه در اكثر توزيع‌هاي جديد لينوكس پيش‌بيني شده است.

دروازه‌ يا Gateway 
زماني كه دو يا چند شبكه به يكديگر متصل مي‌شوند، از Gateway استفاده مي‌شود. Gateway ماشيني است كه به عنوان رابط بين چند شبكه عمل مي‌كند و اطلاعات را بر اساس نشاني‌هايIP آن‌ها به شبكه‌هاي مربوطه هدايت و مسير‌دهي مي‌كند. زماني كه قرار باشد يك سيستم لينوكسي به عنوان Gateway كار كند، بايد چند تغيير در تنظيمات فايل‌هاي configuration شبكه اعمال شود.

براي آن‌كه بتوان از سرويس‌هاي يك سيستم ديگر به عنوان Gateway استفاده كرد، بايد به جدول مسير‌يابي، اطلاعاتي از Gateway داده شود. ساده‌ترين شكل استفاده از يك Gateway زماني است كه يك Gateway قرار باشد شبكه‌اي را به اينترنت متصل سازد. اين عمل توسط دستور زير قابل تنظيم است:
Route   add   default   gw   netgate

در دستور بالا، netgate نام سيستمي در شبكه است كه قرار است به عنوان يك gateway به‌كار گرفته شود. اين نام در دستور بالا  بعد از كليدواژه gw ذكر مي‌شود. معني عبارت default در دستور بالا به اين معني است كه تمام سيستم‌هاي موجود در شبكه قادر به اتصال به اينترنت از طريق Gateway هستند.

در صورتي‌كه قصد ارتباط دادن دو شبكه توسط يك Gateway در بين باشد، بايد نام شبكه دوم در فايل
 etc/networks/ قيد شده باشد و در اين صورت شكل نوشتاري دستور route به‌صورت زير خواهد بود:
Route    add     big-corp       gw      gate-serv

در دستور فوق از سيستمي به‌نام gateserv براي دسترسي به شبكه‌اي به‌نام bigcorp مي‌توان استفاده كرد. نكته ديگر آنكه اگر به همين‌جا اكتفا شود، كاربران فقط قادر خواهند بود كه اطلاعات را به سيستم‌هاي مقصد در شبكه دوم ارسال كنند و قابليت دريافت اطلاعات از آن سيستم‌ها وجود نخواهد داشت. براي حل اين مسئله لازم است كه در جداول مسير‌يابي سيستم‌هاي شبكه دوم، تنظيماتي انجام شود.

اگر قصد استفاده از سيستم محلي خود را به عنوان ارتباط‌دهنده دو شبكه داشته باشيد، بايد سيستم خود را به دو كارت شبكه (يا دو اتصال PPP و يا SLIP ) مجهز كنيد. فرض كنيد كه قصد استفاده از سيستم خود را براي اتصال دو شبكه به‌نام‌هاي small-net و  big-net داشته باشيم و شرايط سخت‌افزاري اين‌كار (دو كارت شبكه) فراهم شده باشد. نخستين گام آن است كه رابط‌هاي اترنت كارت‌هاي شبكه هر يك با نشاني‌هاي خودشان تنظيم شوند. به عنوان مثال، ممكن است سيستم شما در شبكه بزرگ‌تر داراي نشاني IP برابر با 163.12.34.36 باشد و در شبكه كوچك‌تر نشاني سيستم 147.123.12.1 باشد.

در اين صورت لازم خواهد بود كه دو ورودي در فايل etc/hosts/ براي ساده‌تر عمل ترجمه نام (Name resolution)  ايجاد كنيم. مثلاً به اين ترتيب:
merlin.big-net.com      merlin-iface1    163.12.34.36
merlin.small-net.com   merlin-iface2    147.123.12.1

در اين مثال فرض شده است كه سيستم شما در هر دو شبكه داراي نام merlin است كه كاملاً قانوني است. در مورد فوق، اسامي رابط‌ها نيز به‌جهت سهولت قيد شده‌اند.

پس از اين مرحله، بايد از فرمان ifconfig براي برقراري ارتباط بين رابط‌ها و اسامي‌هاي به‌كار رفته در فايل
 etc/hosts/ استفاده كنيم:
merlin-iface0Ifconfig    eth1
merlin-iface1Ifconfig    eth2

و نهايتاً لازم است كه جدول مسير‌يابي را تغيير دهيم. براي اين‌كار از دستورات زير به‌صورت مشخص شده بايد استفاده كنيم:
Route  add   big-net
Route add small-net

زماني كه اين مراحل به‌درستي انجام شوند، مي‌توانيد از سيستم خود به عنوان يك Gateway براي برقراري ارتباط بين دو شبكه استفاده كنيد.

استفاده از ابزارهاي گرافيكي براي تنظيمات رابط‌هاي شبكه‌
تا اينجا از دستوراتي استفاده كرديم كه تمام مراحل لازم براي ايجاد و تنظيمات شبكه را از ابتداي كار توصيف مي‌كردند. زماني كه لينوكسي راه‌اندازي مي‌شود، به‌طور معمول نيازي به اجراي اسكريپت‌هايي نظير اسكريپت‌هاي فوق را نخواهيد داشت. علت اين موضوع آن است كه چنين اسكريپت‌هايي به‌طور خودكار در زمان راه‌اندازي اجرا مي‌شوند. اما اشكال كار در اينجا است كه اين اسكريپت‌ها ممكن است از يك توزيع لينوكس به توزيع ديگري كمي تفاوت داشته باشند. به عنوان مثال، لينوكس‌هايي مانند slackware كه از اسكريپت‌هايي به‌سبك يونيكس BSD استفاده مي‌كنند، با لينوكس‌هايي مانند RedHat يا Fedora كه از اسكريپت‌هاي به‌سبك يونيكس 4 VR پيروي مي‌كنند، از نظر اسكريپت‌هاي shell، تفاوت دارند.

اما خوشبختانه، توزيع‌هاي لينوكس امروزي به همراه ابزارهاي گرافيكي عرضه مي‌شوند كه كار تنظيمات شبكه را تا حد بسيار زيادي تسهيل مي‌كنند. اين ابزارها به‌طور خودكار تغييرات و ويرايش‌هاي شما را در اسكريپت‌هاي راه‌اندازي اعمال مي‌كنند.

يكي از نخستين ابزارهاي گرافيكي تنظيمات لينوكس، netcfg نام دارد. براي راه‌اندازي اين ابزار كافي است كه نام آن را از خط فرمان اجرا كنيد. تصوير شماره 3 شكل ظاهر منوي استاراندارد اين ابزار را نمايش مي‌دهد. از اين ابزار مي‌توان براي تنظيم نام‌ها، ميزبان‌ها، رابط‌ها و مسير‌دهي كمك گرفت.

Linuxconf
 
شكل 4
 
ابزار بسيار قوي ديگر، linuxconf نام دارد كه مي‌توان از آن براي تنظيمات شبكه و بسياري از اعمال مديريتي ديگر استفاده كرد. از آنجايي‌كه از اين ابزار براي مسير‌دهي و اعمال پيچيده ديگر استفاده مي‌شود، فراگيري آن و كسب مهارت در آن كاملاً منطقي است. براي راه‌اندازي اين ابزار هم مي‌توانيد به‌سادگي نام آن‌را از خط فرمان اجرا كنيد. البته برنامه‌هاي گرافيكي ميزكارهايي مانند KDE يا GNOME هم بسته به نسخه لينوكسي كه از آن استفاده مي‌كنيد، ممكن است پيش‌بيني آيكوني براي فراخواني linuxconf را كرده باشند. در شكل شماره 4 ظاهر گرافيكي اين ابزار ديده مي‌شود.
 

 
نویسنده: مسعود سعيدي
مترجم :
منبع : ماهنامه شبکه – شماره 53 – فروردين و ارديبهشت 1383
تاریخ : فروردين و ارديبهشت 1383
مطالب مرتبط
 
 A.A.C/ پنگوئني كه از گرمسير آمد - Ubuntu، لينوكسي براي همه‌
 A.A.C/ لينوكس 64 بيتي‌
 A.A.C/ نگاهي به نسخه جديد لينوكس ردهت RHEL4
 A.A.C/ لينوكس سحرآميز ، Mandrake Linux 10.1
 A.A.C/ مدارك لينوكس ‌كاران
 
نظرات
 
نام : شهر :
   
 
 
کلیه حقوق این وب سایت متعلق به شرکت فرا ارتباط می باشد