درباره NAT

NAT

#اینترنت با سرعتی باورنکردنی همجنان در حال گسترش است . تعداد کامپیوترهای ارائه دهنده #اطلاعات (خدمات) و #کاربران_اینترنت روزانه تغییر و رشد می یابد. با اینکه نمی توان دقیقا” اندازه اینترنت را مشخص کرد ولی تقریبا” یکصد میلیون کامپیوتر میزبان (#Host) و ۳۵۰ میلیون کاربر از اینترنت استفاده می نمایند. رشد اینترنت چه نوع ارتباطی با (#NAT) دارد؟ هر کامپیوتر بمنظور ارتباط با سایر کامپیوترها و #سرویس_دهندگان_وب بر روی اینترنت، می بایست دارای یک #آدرس_IP باشد. IP یک عدد منحصر بفرد ۳۲ بیتی بوده که #کامپیوتر موجود در یک شبکه را مشخص می کند.
اولین مرتبه ای که مسئله آدرس دهی توسط IP مطرح گردید، کمتر کسی به این فکر می افتاد که ممکن است خواسته ای مطرح شود که نتوان به آن یک آدرس را نسبت داد. با استفاده از سیستم آدرس دهی IP می توان ۴٫۲۹۴٫۹۷۶٫۲۹۶ (۲۳۲) آدرس را تولید کرد. ( بصورت تئوری ). تعداد واقعی آدرس های قابل استفاده کمتر از مقدار ( بین ۳٫۲ میلیارد و ۳٫۳ میلیارد ) فوق است . علت این امر، تفکیک آدرس ها به کلاس ها و رزو بودن برخی آدرس ها برای multicasting ، تست و موارد خاص دیگر است .
همزمان با انفجار اینترنت ( عمومیت یافتن) و افزایش شبکه های کامپیوتری ، تعداد IP موجود، پاسخگوی نیازها نبود. منطقی ترین روش، طراحی مجدد سیستم آدرس دهی IP است تا امکان استفاده از آدرس های IP بیشَتری فراهم گردد. موضوع فوق در حال پیاده سازی بوده و نسخه شماره شش IP ، راهکاری در این زمینه است . چندین سال طول خواهد کشید تا #سیستم فوق پیاده سازی گردد، چراکه می بایست تمامی #زیرساخت_های_اینترنت تغییر واصلاح گردند. NAT با هدف کمک به مشکل فوق طراحی شده است . NAT به یک دستگاه اجازه می دهد که بصورت یک #روتر عمل نماید. در این حالت NAT بعنوان یک آژانس بین اینترنت (شبکه عمومی) و یک شبکه محلی ( شبکه خصوصی ) رفتار نماید. این بدان معنی است که صرفا” یک IP منحصر بفرد بمنظور نمایش مجموعه ای از کامپیوترها(یک گروه) مورد نیاز خواهد بود.

کم بودن تعداد IP صرفا” یکی از دلایل استفاده از NAT است.

شبکه خانگی

قابلیت های NAT

عملکرد #NAT مشابه یک تلفتچی در یک اداره بزرگ است . فرض کنید شما به تلفنچی اداره خود اعلام نموده اید که تماس های تلفنی مربوط به شما را تا به وی اعلام ننموده اید ، وصل نکند. در ادامه با یکی از مشتریان تماس گرفته و برای وی پیامی گذاشته اید که سریعا” با شما تماس بگیرد. شما به تلفتچی اداره می گوئید که منتظر تماس تلفن از طرف یکی از مشتریان هستم، در صورت تماس وی، آن را به دفتر من وصل نمائید. در ادامه مشتری مورد نظر با اداره شما تماس گرفته و به تلفنچی اعلام می نماید که قصد گفتگو با شما را دارد (چراکه شما منتظر تماس وی هستید). تلفنچی جدول مورد نظر خود را بررسی تا نام شما را در آن پیدا نماید. تلفنچی متوجه می شود که شما تلفن فوق را درخواست نموده اید، بنابراین تماس مورد نظر به دفتر شما وصل خواهد شد.
NAT توسط #شرکت_سیسکو و بمنظور استفاده در یک دستگاه (#فایروال، #روتر، #کامپیوتر) ارائه شده است.NAT بین یک #شبکه_داخلی و یک #شبکه_عمومی مستقر و شامل مدل ها ی متفاوتی است.

– #NAT_ایستا. عملیات مربوط به ترجمه یک آدرس IP غیر ریجستر شده ( ثبت شده ) به یک آدرس IP ریجستر شده را انجام می دهد. ( تناظر یک به یک ) روش فوق زمانیکه قصد استفاده از یک دستگاه را از طریق خارج از شبکه داشته باشیم، مفید و قابل استفاده است. در مدل فوق همواره IP 192.168.32.10 به IP 213.18.123.110 ترجمه خواهد شد.

 

– #NAT_پویا . یک آدرس IP غیر ریجستر شده را به یک #IP_ریجستر شده ترجمه می نماید. در ترجمه فوق از گروهی آدرس های IP ریجستر شده استفاده خواهد شد.

 

 

#OverLoading
. مدل فوق شکل خاصی از NAT پویا است . در این مدل چندین IP غیر ریجستر شده به یک IP ریجستر شده با استفاده از پورت های متعدد، ترجمه خواهند شد. به روش فوق PAT)Port Address Translation) نیز گفته می شود.

 

– Overlapping . در روش فوق شبکه خصوصی از مجموعه ای IP ریجستر شده استفاده می کند که توسط شبکه دیگر استفاده می گردند. NAT می بایست آدرس های فوق را به آدرس های IP ریجستر شده منحصربفرد ترجمه نماید. NAT همواره آدرس های یک شبکه خصوصی را به آدرس های ریجستر شده منحصر بفرد ترجمه می نماید. NAT همچنین آدرس های ریجستر شده عمومی را به آدرس های منحصر بفرد در یک شبکه خصوصی ترجمه می نماید. (در هر حالت خروجی NAT، آدرس های IP منحصر بفرد خواهد بود. آدرس های فوق می تواند در شبکه های عمومی ریجستر شده جهانی باشند و در شبکه های خصوصی ریجستر شده محلی باشند)

شبکه اختصاصی ( خصوصی ) معمولا” بصورت یک #شبکه_LAN می باشند . به این نوع شبکه ها که از آدرس های IP داخلی استفاده می نمایند حوزه محلی می گویند. اغلب ترافیک شبکه در حوزه محلی بصورت داخلی بوده و بنابراین ضرورتی به ارسال اطلاعات خارج از شبکه را نخواهد داشت . یک حوزه محلی می تواند دارای آدرس های IP ریجستر شده و یا غیرریجستر شده باشد. هر کامپیوتری که از آدرس های IP غیرریجستر شده استفاده می کنند، می بایست از NAT بمنظور ارتباط با دنیای خارج از شبکه محلی استفاده نمایند.
NAT می تواند با استفاده از روش های متفاوت #پیکربندی گردد. در مثال زیر NAT بگونه ای پیکربندی شده است که بتواند آدرس های غیر ریجستر شده IP (داخلی و محلی – یک ISP (مرکز ارائه دهنده خدمات #اینترنت) یک محدوده از آدرس های IP را برای شرکت شما در نظر می گیرد. آدرس های فوق ریجستر و منحصر بفرد خواهند بود . آدرس های فوق Inside global نامیده می شوند. آدرس های IP خصوصی و غیرریچستر شده به دو گروه عمده تقسیم می گردند : یک گروه کوچک که توسط NAT استفاده شده (Outside local address) و گروه بزرگتری که توسط حوزه محلی استفاده خواهند شد ( Inside local address) . آدرس های #Outside_local بمنظور ترجمه به آدرس های منحصربفرد IP استفاده می شوند.آدرس های منحصر بفرد فوق، #outside_global نامیده شده و اختصاص به دستگاههای موجود بر روی شبکه عمومی (اینترنت) دارند.

– اکثر کامپیوترهای موجود در حوزه داخلی با استفاده از آدرس های #inside_local با یکدیگر ارتباط برقرار می نمایند.
– برخی از کامپیوترهای موجود در حوزه داخلی که نیازمند ارتباط دائم با خارج از شبکه باشند ،از آدرس های inside global استفاده و بدین ترتیب نیازی به ترجمه نخواهند داشت .
– زمانیکه کامپیوتر موجود در حوزه محلی که دارای یک آدرس inside local است، قصد ارتباط با خارج شبکه را داشته باشد بسته های اطلاعاتی وی در اختیار NAT قرار خواهد گرفت .
– NAT جدول روتینگ خود را بررسی تا به این اطمینان برسد که برای آدرس مقصد یک entry در اختیار دارد. در صورتیکه پاسخ مثبت باشد، NAT #بسته_اطلاعاتی مربوطه را ترجمه و یک entry برای آن ایجاد و آن را در جدول ترجمه آدرس (ATT) ثبت خواهد کرد. در صورتیکه پاسخ منفی باشد بسته اطلاعاتی دور انداخته خواهد شد.
– با استفاده از یک آدرس inside global ، روتر بسته اطلاعاتی را به مقصد مورد نظر ارسال خواهد کرد.
– کامپیوتر موجود در شبکه عمومی ( اینترنت )، یک بسته اطلاعاتی را برای شبکه خصوصی ارسال می دارد. آدرس مبداء بسته اطلاعاتی از نوع outside global است . آدرس مقصد یک آدرس inside global است .
– NAT در جدول مربوطه به خود جستجو و آدرس مقصد را تشخیص و در ادامه آن را به کامپیوتر موجود در حوزه داخلی نسبت خواهد کرد.
– NAT آدرس های inside global بسته اطلاعاتی را به آدرس های inside local ترجمه و آنها را برای کامپیوتر مقصد ارسال خواهد کرد.
روش Overloading از یک ویژگی خاص #پروتکل TCP/IP استفاده می نماید. ویژگی فوق این امکان را فراهم می آورد که یک کامپیوتر قادر به پشتیبانی از چندین اتصال همزمان با یک و یا چندین کامپیوتر با استفاده از پورت های متفاوت TCP و یا UDP باشد.. یک بسته اطلاعاتی IP دارای یک هدر(Header) با اطلاعات زیر است :

آدرس مبداء. آدرس کامپیوتر ارسال کننده اطلاعات است .

پورت مبداء. شماره پورت TCP و یا UDP بوده که توسط کامپیوتر مبداء به بسته اطلاعاتی نسبت داده شده است .

آدرس مقصد : آدرس کامپیوتر دریافت کننده اطلاعات است .

پورت مقصد. شماره پورتTCP و یا UDP بوده که کامپیوتر ارسال کننده برای باز نمودن بسته اطلاعاتی برای گیرنده مشخص کرده است .

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

NAT پویا

نحوه کار NAT پویا

#NAT_پویا

– یک #شبکه_داخلی (#حوزه_محلی) با استفاده از مجموعه ای از #آدرس_های_IP که توسط #IANA) Internet_Assigned_Numbers_Authority) به شرکت و یا موسسه ای اختصاص داده نمی شوند #پیکربندی می گردد. (سازمان فوق مسئول اختصاص آدرس های IP در سطح جهان می باشد) آدرس های فوق بدلیل اینکه منحصربفرد می باشند، غیر قابل #روتینگ نامیده می شوند.
– موسسه مربوطه یک #روتر با استفاده از قابلیت های #NAT را پیکربندی می نماید. روتر دارای یک محدوده از آدرس های IP منحصر بفرد بوده که توسط IANA د ر اختیار موسسه و یا شرکت مربوطه گذاشته شده است .
– یک کامپیوتر موجود بر روی حوزه محلی سعی درایجاد ارتباط با کامپیوتری خارج از شبکه ( مثلا” یک #سرویس_دهنده_وب) را دارد.
– روتر بسته اطلاعاتی را از کامپیوتر موجود در حوزه محلی دریافت می نماید.
– روتر آدرس IP غیرقابل روت را در جدول ترجمه آدرس ها ذخیره می نماید. روتر آدرس IP غیر قابل روت را با یک آدرس از مجموعه آدرس های منحصر بفرد جایگزین می نماید. بدین ترتیب جدول ترجمه، دارای یک رابطه ( معادله ) بین آدرس IP غیرقابل روت با یک آدرس IP منحصر بفرد خواهد بود.
– زمانیکه یک بسته اطلاعاتی از کامپیوتر مقصد مراچعت می نماید، روتر آدرس مقصد بسته اطلاعاتی را بررسی خواهد کرد. بدین منظور روتر در جدول آدرسهای ترجمه شده جستجو تا از کامپیوتر موجود در حوزه محلی که بسته اطلاعاتی به آن تعلق دارد، آگاهی پیدا نماید. روتر آدرس مقصد بسته اطلاعاتی را تغییر (از مقادیر ذخیره شده قبلی استفاده می کند) و آن را برای کامپیوتر مورد نظر ارسال خواهد کرد. در صورتیکه نتیجه جستجو در جدول، موفقیت آمیز نباشد، بسته اطلاعاتی دور انداخته خواهد شد.
– کامپیوتر موجود در حوزه، بسته اطلاعاتی را دریافت می کند. فرآیند فوق مادامیکه #کامپیوتر با سیستم خارج از شبکه ارتباط دارد، تکرار خواهد شد.

شبکه خانگی

نحوه کار Overloading پویا

 یک #شبکه_داخلی (حوزه محلی) با استفاده از مجموعه ای از #آدرس_های_IP که توسط #IANA) Internet_Assigned_Numbers_Authority) به شرکت و یا موسسه ای اختصاص داده نمی شوند #پیکربندی می گردد. آدرس های فوق بدلیل اینکه منحصربفرد می باشند غیر قابل #روتینگ نامیده می شوند.
– موسسه مربوطه یک #روتر را با استفاده از قابلیت های #NAT ، پیکربندی می نماید. روتر دارای یک محدوده از آدرس های IP منحصر بفرد بوده که توسط #IANA در اختیار موسسه و یا شرکت مربوطه گذاشته شده است.
– یک کامپیوتر موجود بر روی حوزه داخلی، سعی درایجاد ارتباط با کامپیوتری خارج از شبکه (مثلا” یک #سرویس_دهنده_وب) را دارد.
– روتر بسته اطلاعاتی را از #کامپیوتر موجود در حوزه داخلی دریافت می نماید.
– روتر آدرس IP غیرقابل روت و شماره پورت را در جدول ترجمه آدرس ها ذخیره می نماید. روتر آدرس IP غیر قابل روت را با یک آدرس منحصر بفرد جایگزین می نماید. روتر شماره پورت کامپیوتر ارسال کننده را با شماره #پورت اختصاصی خود جایگزین و آن را در محلی ذخیره تا با آدرس کامپیوتر ارسال کننده اطلاعات ، مطابقت نماید.
– زمانیکه یک بسته اطلاعاتی از کامپیوتر مقصد مراجعت می نماید ، روتر پورت مقصد بسته اطلاعاتی را بررسی خواهد کرد.بدین منظور روتر در جدول آدرس های ترجمه شده جستجو تا از کامپیوتر موجود در حوزه داخلی که بسته اطلاعاتی به آن تعلق دارد آگاهی پیدا نماید. روتر آدرس مقصد بسته اطلاعاتی و شماره پورت را تغییر (از مقادیر ذخیره شده قبلی استفاده می کند) و آن را برای کامپیوتر مورد نظر ارسال خواهد کرد. در صورتیکه نتیجه جستجو در جدول ، موفقیت آمیز نباشد بسته اطلاعاتی دور انداخته خواهد شد.
– کامپیوتر موجود در حوزه داخلی، بسته اطلاعاتی را دریافت می کند. فرآیند فوق مادامیکه کامپیوتر با سیستم خارج از شبکه ارتباط دارد، تکرار خواهد شد.
– با توجه به اینکه NAT آدرس کامپیوتر مبداء و پورت مربوطه آن را در جدول ترجمه آدرس ها ذخیره شده دارد، مادامیکه ارتباط فوق برقرار باشد از شماره پورت ذخیره شده ( اختصاص داده شده به بسته اطلاعاتی ارسالی) استفاده خواهد کرد. روتر دارای یک Timer بوده وهر بار که یک آدرس از طریق آن استفاده می گردد reset می گردد.در صورتیکه در مدت زمان مربوطه ( Timer صفر گردد ) به اطلاعات ذخیره شده در NAT مراجعه ای نشود، اطلاعات فوق ( یک سطر از اطلاعات ) از داخل جدول حذف خواهند شد.
در صورتیکه برخی ازکامپیوترهای موجود در شبکه خصوصی از آدرس های IP اختصاصی خود استفاده می نمایند ، می توان یک لیست دستیابی از آدرس های IP را ایجاد تا به روتر اعلام نماید که کدامیک از کامپیوترهای موجود در شبکه به NAT نیاز دارند.
تعداد ترجمه های همزمانی که یک روتر می تواند انجام دهد، ارتباط مستقیم با حافظه اصلی سیستم دارد. با توجه به اینکه در جدول ترجمه آدرس هر entry صرفا” ۱۶۰ بایت را اشغال خواهد کرد، یک روتر با ۴ مگابایت حافظه قادر به پردازش ۲۶٫۲۱۴ ترجمه همزمان است. مقدار فوق برای اغلب موارد کافی بنظر می آید.
#IANA محدوده ای از آدرس های IP را که غیرفابل روت بوده و شامل آدرس های داخلی شبکه هستند مشخص نموده است .آدرس های فوق #غیرریجستر شده می باشند.. هیچ شرکت و یا آژانسی نمی تواند ادعای مالکیت آدرس های فوق را داشته باشد و یا آنها را در شبکه های عمومی ( اینترنت ) استفاده نماید. روترها بگونه ای طراحی شده اند که آدرس های فوق را عبور (Forward) نخواهند کرد.

 Range 1: Class A – 10.0.0.0 through 10.255.255.255
 Range 2: Class B – 172.16.0.0 through 172.31.255.255
 Range 3: Class C – 192.168.0.0 through 192.168.255.255

امنیت :

همزمان با پیاده سازی یک NAT پویا، یک #فایروال بصورت خودکار بین شبکه داخلی و شبکه های خارجی ایجاد می گردد. NAT صرفا” امکان ارتباط به کامپیوترهائی را که در حوزه داخلی می باشند را خواهد داد. این بدان معنی است که یک کامپیوتر موجود در خارج از شبکه داخلی، قادر به ارتباط مستقیم با یک کامپیوتر موجود در حوزه داخلی نبوده، مگر اینکه ارتباط فوق توسط کامپیوتر شما مقدار دهی اولیه (هماهنگی های اولیه از بعد مقداردهی آدرس های مربوطه) گردد. شما براحتی قادر به استفاده از #اینترنت دریافت فایل و … خواهید بود ولی افراد خارج از شبکه نمی توانند با استفاده از آدرس IP شما، به کامپیوتر شما متصل گردند. NAT ایستا، امکان برقراری ارتباط با یکی از کامپیوترهای موجود در حوزه داخلی توسط دستگاههای موجود در خارج از شبکه را ، فراهم می نمایند.
برخی از روترهای مبتنی بر NAT امکان #فیلترینگ و ثبت ترافیک را ارائه می دهند. با استفاده از فیلترینگ می توان #سایت هائی را که پرسنل یک سازمان از آنها استفاده می نمایند را کنترل کرد.با ثبت ترافیک یک سایت می توان از سایت های ملاقات شده توسط کاربران آگاهی و گزارشات متعددی را بر اساس اطلاعات ثبت شده ایجاد کرد.
NAT دربرخی موارد با سرویس دهندگان #Proxy، اشتباه در نظر گرفته می شود. NAT و Proxy دارای تفاوت های زیادی می باشند. NAT بی واسطه بین کامپیوترهای مبداء و مقصد قرار می گیرد. Proxy بصورت بی واسطه نبوده و پس از استقرار بین کامپیوترهای مبداء و مقصد تصور هر یک از کامپیوترهای فوق را تغییر خواهد داد. کامپیوتر مبداء می داند که درخواستی را از Proxy داشته و می بایست بمنظور انجام عملیات فوق ( درخواست ) پیکربندی گردد. کامپیوتر مقصد فکر می کند که سرویس دهنده Proxy بعنوان کامپیوتر مبداء می باشد. Proxy در لایه چهارم (Transport) و یا بالاتر مدل OSI ایفای وظیفه می نماید در صورتیکه NAT در لایه سوم (Network) فعالیت می نماید. Proxy ، بدلیل فعالیت در لایه بالاتر در اغلب موارد از NAT کندتر است .

تونل سازی

Tunneling(تونل سازی)

اکثر #شبکه_های_VPN بمنظور ایجاد یک شبکه اختصاصی با قابلیت دستیابی از طریق #اینترنت از امکان “#Tunneling” استفاده می نمایند. در روش فوق تمام بسته اطلاعاتی در یک بسته دیگر قرار گرفته و از طریق شبکه ارسال خواهد شد. پروتکل مربوط به بسته اطلاعاتی خارجی (پوسته) توسط شبکه و دو نقطه (ورود و خروج بسته اطلاعاتی ) قابل فهم می باشد. دو نقطه فوق را “#اینترفیس_های_تونل” می گویند. روش فوق مستلزم استفاده از سه پروتکل است :

#پروتکل_حمل_کننده : از پروتکل فوق شبکه حامل اطلاعات استفاده می نماید.
#پروتکل_کپسوله_سازی: از پروتکل هائی نظیر: IPSec,L2F,PPTP,L2TP,GRE استفاده می گردد.
#پروتکل_مسافر : از پروتکل هائی نظیر IPX,IP,NetBeui بمنظور انتقال داده های اولیه استفاده می شود.

با استفاده از روش Tunneling می توان عملیات جالبی را انجام داد. مثلا” می توان از بسته ای اطلاعاتی که پروتکل اینترنت را حمایت نمی کند ( نظیر NetBeui) درون یک بسته اطلاعاتی IP استفاده و آن را از طریق اینترنت ارسال نمود و یا می توان یک بسته اطلاعاتی را که از یک #آدرس_IP غیر قابل روت ( اختصاصی ) استفاده می نماید، درون یک بسته اطلاعاتی که از آدرس های معتبر IP استفاده می کند ، مستقر و از طریق اینترنت ارسال نمود.
در شبکه های VPN از نوع ” سایت به سایت ” ، #GRE)generic_routing_encapsulation) بعنوان پروتکل کپسوله سازی استفاده می گردد. فرآیند فوق نحوه استقرار و بسته بندی ” پروتکل مسافر” از طریق پروتکل ” حمل کننده ” برای انتقال را تبین می نماید. ( پروتکل حمل کننده ، عموما” IP است ) . فرآیند فوق شامل اطلاعاتی در رابطه با نوع بست های اطلاعاتی برای کپسوله نمودن و اطلاعاتی در رابطه با ارتباط بین #سرویس_گیرنده و #سرویس_دهنده است . در برخی موارد از پروتکل IPSec (در حالت tunnel) برای کپسوله سازی استفاده می گردد. پروتکل IPSec، قابل استفاده در دو نوع شبکه VPN (سایت به سایت و دستیابی از راه دور) است. #اینترفیش های Tunnel می بایست دارای امکانات حمایتی از IPSec باشند.
در شبکه های VPN از نوع ” دستیابی از راه دور ” ، Tunneling با استفاده از PPP انجام می گیرد. PPP بعنوان حمل کننده سایر پروتکل های IP در زمان برقراری ارتباط بین یک سیستم میزبان و یک سیستم ازه دور ، مورد استفاده قرار می گیرد.
هر یک از پروتکل های زیر با استفاده از ساختار اولیه PPP ایجاد و توسط شبکه های VPN از نوع “دستیابی از راه دور” استفاده می گردند:
(L2F)Layer 2 Forwarding) : پروتکل فوق توسط سیسکو ایجاد شده است. در پروتکل فوق از مدل های تعیین اعتبار کاربر که توسط PPP حمایت شده اند، استفاده شده است .
PPTP) Point-to-Point Tunneling Protocol): پروتکل فوق توسط کنسرسیومی متشکل از شرکت های متفاوت ایجاد شده است . این پروتکل امکان رمزنگاری ۴۰ بیتی و ۱۲۸ بیتی را دارا بوده و از مدل های تعیین اعتبار کاربر که توسط PPP حمایت شده اند ، استفاده می نماید.
(L2TP): پروتکل فوق با همکاری چندین شرکت ایجاد شده است .پروتکل فوق از ویژگی های PPTP و L2F استفاده کرده است . پروتکل L2TP بصورت کامل IPSec را حمایت می کند. از پروتکل فوق بمنظور ایجاد تونل بین موارد زیر استفاده می گردد :
 سرویس گیرنده و روتر

 روتر و NAS

 روتر و روتر

عملکرد Tunneling مشابه حمل یک کامپیوتر توسط یک کامیون است . فروشنده ، پس از بسته بندی کامپیوتر ( پروتکل مسافر ) درون یک جعبه (پروتکل کپسوله سازی) آن را توسط یک کامیون (پروتکل حمل کننده) از انبار خود (ایترفیس ورودی تونل) برای متقاضی ارسال می دارد. کامیون (پروتکل حمل کننده) از طریق بزرگراه (اینترنت) مسیر خود را طی، تا به منزل شما (اینترفیش خروجی تونل) برسد. شما در منزل جعبه (پروتکل کپسول سازی) را باز و کامپیوتر (پروتکل مسافر) را از آن خارج می نمائید.

شبکه های خصوصی مجازی

شبکه های خصوصی مجازی

در طی ده سال گذشته دنیا دستخوش تحولات فراوانی در عرصه #ارتباطات بوده است . اغلب سازمانها و موسسات ارائه دهنده کالا و خدمات که در گذشته بسیار محدود و منطقه ای مسائل را دنبال و در صدد ارائه راهکارهای مربوطه بودند ، امروزه بیش از گذشته نیازمند تفکر در محدوده جهانی برای ارائه خدمات و کالای تولیده شده را دارند. به عبارت دیگر تفکرات منطقه ای و محلی حاکم بر فعالیت های تجاری جای خود را به تفکرات جهانی و سراسری داده اند. امروزه با سازمانهای زیادی برخورد می نمائیم که در سطح یک کشور دارای دفاتر فعال و حتی در سطح دنیا دارای دفاتر متفاوتی می باشند . تمام سازمانهای فوق قبل از هر چیز بدنبال یک اصل بسیار مهم می باشند : یک روش سریع ، ایمن و قابل اعتماد بمنظور برقراری ارتباط با دفاتر و نمایندگی در اقصی نقاط یک کشور و یا در سطح دنیا .
اکثر سازمانها و موسسات بمنظور ایجاد یک #شبکه_WAN از #خطوط_اختصاصی (#Leased_Line) استفاده می نمایند.خطوط فوق دارای انواع متفاوتی می باشند. ISDN ( با سرعت ۱۲۸ کیلوبیت در ثانیه )، ( OC3 Optical Carrier-3) ( با سرعت ۱۵۵ مگابیت در ثانیه ) دامنه وسیع خطوط اختصاصی را نشان می دهد. یک شبکه WAN دارای مزایای عمده ای نسبت به یک شبکه عمومی نظیر #اینترنت از بعد امنیت و کارآئی است . پشتیانی و نگهداری یک شبکه WAN در عمل و زمانیکه از خطوط اختصاصی استفاده می گردد ، مستلزم صرف هزینه بالائی است .
همزمان با عمومیت یافتن اینترنت ، اغلب سازمانها و موسسات ضرورت توسعه #شبکه_اختصاصی خود را بدرستی احساس کردند. در ابتدا شبکه های اینترانت مطرح گردیدند.این نوع شبکه بصورت کاملا” اختصاصی بوده و کارمندان یک سازمان با استفاده از رمز عبور تعریف شده ، قادر به ورود به شبکه و استفاده از منابع موجود می باشند. اخیرا”، تعداد زیادی از موسسات و سازمانها با توجه به مطرح شدن خواسته های جدید ( کارمندان از راه دور ، ادارات از راه دور )، اقدام به ایجاد #شبکه_های اختصاصی_مجازی  VPN Virtual Private Network نموده اند.
یک #VPN ، شبکه ای اختصاصی بوده که از یک شبکه عمومی ( عموما” اینترنت ) ، برای ارتباط با سایت های از راه دور و ارتباط کاربران بایکدیگر، استفاده می نماید. این نوع شبکه ها در عوض استفاده از خطوط واقعی نظیر : خطوط Leased ، از یک ارتباط مجازی بکمک اینترنت برای شبکه اختصاصی بمنظور ارتباط به سایت ها استفاده می کند.

عناصر تشکیل دهنده یک VPN

دو نوع عمده شبکه های VPN وجود دارد :

● دستیابی از راه دور (Remote-Access). به این نوع از شبکه ها VPDN)Virtual private dial-up network)، نیز گفته می شود.در شبکه های فوق از مدل ارتباطی User-To-Lan ( ارتباط کاربر به یک شبکه محلی ) استفاده می گردد. سازمانهائی که از مدل فوق استفاده می نمایند ، بدنبال ایجاد تسهیلات لازم برای ارتباط پرسنل ( عموما” کاربران از راه دور و در هر مکانی می توانند حضور داشته باشند ) به شبکه سازمان می باشند. سازمانهائی که تمایل به برپاسازی یک شبکه بزرگ ” دستیابی از راه دور ” می باشند ، می بایست از امکانات یک مرکز ارائه دهنده خدمات #اینترنت-جهانی #ESP)Enterprise_service_provider) استفاده نمایند. سرویس دهنده #ESP ، بمنظور نصب و پیکربندی VPN ، یک #NAS)Network_access_server) را پیکربندی و نرم افزاری را در اختیار کاربران از راه دور بمنظور ارتباط با سایت قرار خواهد داد. کاربران در ادامه با برقراری ارتباط قادر به دستیابی به NAS و استفاده از نرم افزار مربوطه بمنظور دستیابی به شبکه سازمان خود خواهند بود.

● سایت به سایت (Site-to-Site) . در مدل فوق یک سازمان با توجه به سیاست های موجود ، قادر به اتصال چندین سایت ثابت از طریق یک شبکه عمومی نظیر اینترنت است . شبکه های VPN که از روش فوق استفاده می نمایند ، دارای گونه های خاصی در این زمینه می باشند:

▪ مبتنی بر اینترانت . در صورتیکه سازمانی دارای یک و یا بیش از یک محل ( راه دور) بوده و تمایل به الحاق آنها در یک شبکه اختصاصی باشد ، می توان یک اینترانت VPN را بمنظور برقرای ارتباط هر یک از شبکه های محلی با یکدیگر ایجاد نمود.

▪ مبتنی بر اکسترانت . در مواردیکه سازمانی در تعامل اطلاعاتی بسیار نزدیک با سازمان دیگر باشد ، می توان یک اکسترانت VPN را بمنظور ارتباط شبکه های محلی هر یک از سازمانها ایجاد کرد. در چنین حالتی سازمانهای متعدد قادر به فعالیت در یک محیط اشتراکی خواهند بود.
استفاده از VPN برای یک سازمان دارای مزایای متعددی نظیر : گسترش محدوه جغرافیائی ارتباطی ، بهبود وضعیت امنیت ، کاهش هزینه های عملیاتی در مقایسه با روش های سنتی WAN ، کاهش زمان ارسال و حمل اطلاعات برای کاربران از راه دور ، بهبود بهره وری ، توپولوژی آسان ،… است . در یکه شبکه VPN به عوامل متفاوتی نظیر : امنیت ، اعتمادپذیری ، مدیریت شبکه و سیاست ها نیاز خواهد بود.

تکنولوژی

تکنولوژی های VPN

با توجه به نوع #VPN ( ” دستیابی از راه دور ” و یا ” سایت به سایت ” ) ، بمنظور ایجاد شبکه از عناصر خاصی استفاده می گردد:

#نرم_افزارهای مربوط به کاربران از راه دور
#سخت_افزارهای اختصاصی نظیر یک ” کانکتور VPN” و یا یک #فایروال PIX
 سرویس دهنده اختصاصی VPN بمنظور سرویُس های Dial-up
 #سرویس_دهنده_NAS که توسط مرکز ارائه خدمات اینترنت بمنظور دستیابی به VPN از نوع “دستیابی از را دور” استفاده می شود.
 شبکه VPN و مرکز مدیریت سیاست ها

با توجه به اینکه تاکنون یک استاندارد قابل قبول و عمومی بمنظور ایجاد شVPN ایجاد نشده است، شرکت های متعدد هر یک اقدام به تولید محصولات اختصاصی خود نموده اند.

#کانکتور VPN : سخت افزار فوق توسط شرکت سیسکو طراحی و عرضه شده است. کانکتور فوق در مدل های متفاوت و قابلیت های گوناگون عرضه شده است . در برخی از نمونه های دستگاه فوق امکان فعالیت همزمان ۱۰۰ کاربر از راه دور و در برخی نمونه های دیگر تا ۱۰٫۰۰۰ کاربر از راه دور قادر به اتصال به شبکه خواهند بود.
روتر مختص VPN : روتر فوق توسط شرکت سیسکو ارائه شده است . این روتر دارای قابلیت های متعدد بمنظور استفاده در محیط های گوناگون است . در طراحی روتر فوق شبکه های VPN نیز مورد توجه قرار گرفته و امکانات مربوط در آن بگونه ای بهینه سازی شده اند.
فایروال PIX : فایروال PIX(Private Internet eXchange) قابلیت هائی نظیر NAT ، سرویس دهنده Proxy ، فیلتر نمودن بسته ای اطلاعاتی ، فایروال و VPN را در یک سخت افزار فراهم نموده است .

VPN

امنیت VPN

شبکه های VPN بمنظور تامین امنیت (داده ها و ارتباطات) از روش های متعددی استفاده می نمایند :

● فایروال : #فایروال یک دیواره مجازی بین شبکه اختصای یک سازمان و #اینترنت ایجاد می نماید. با استفاده از فایروال می توان عملیات متفاوتی را در جهت اعمال سیاست های امنیتی یک سازمان انجام داد. ایجاد محدودیت در تعداد پورت ها فعال، ایجاد محدودیت در رابطه به #پروتکل های خاص، ایجاد محدودیت در نوع بسته های اطلاعاتی و … نمونه هائی از عملیاتی است که می توان با استفاده از یک فایروال انجام داد.

● رمزنگاری : فرآیندی است که با استفاده از آن #کامپیوتر مبداء اطلاعاتی رمزشده را برای کامپیوتر دیگر ارسال می نماید. سایر کامپیوترها ی مجاز قادر به رمزگشائی اطلاعات ارسالی خواهند بود. بدین ترتیب پس از ارسال اطلاعات توسط فرستنده، دریافت کنندگان، قبل از استفاده از اطلاعات می بایست اقدام به رمزگشائی اطلاعات ارسال شده نمایند. سیستم های رمزنگاری در کامپیوتر به دو گروه عمده تقسیم می گردد :

 رمزنگاری کلید متقارن
 رمزنگاری کلید عمومی

در رمز نگاری ” کلید متقارن ” هر یک از کامپیوترها دارای یک کلید #Secret ( کد ) بوده که با استفاده از آن قادر به رمزنگاری یک بسته اطلاعاتی قبل از ارسال در شبکه برای کامپیوتر دیگر می باشند. در روش فوق می بایست در ابتدا نسبت به کامپیوترهائی که قصد برقراری و ارسال اطلاعات برای یکدیگر را دارند ، آگاهی کامل وجود داشته باشد. هر یک از کامپیوترهای شرکت کننده در مبادله اطلاعاتی می بایست دارای کلید رمز مشابه بمنظور رمزگشائی اطلاعات باشند. بمنظور #رمزنگاری_اطلاعات ارسالی نیز از کلید فوق استفاده خواهد شد. فرض کنید قصد ارسال یک پیام رمز شده برای یکی از دوستان خود را داشته باشید. بدین منظور از یک الگوریتم خاص برای رمزنگاری استفاده می شود .در الگوریتم فوق هر حرف به دوحرف بعد از خود تبدیل می گردد. (حرف A به حرف C ، حرف B به حرف D ). پس از رمز نمودن پیام و ارسال آن، می بایست دریافت کننده پیام به این حقیقت واقف باشد که برای رمزگشائی پیام ارسال شده ، هر حرف به دو حرق قبل از خود می باطست تبدیل گردد. در چنین حالتی می باطست به دوست امین خود ، واقعیت فوق ( کلید رمز ) گفته شود. در صورتیکه پیام فوق توسط افراد دیگری دریافت گردد ، بدلیل عدم آگاهی از کلید ، آنان قادر به رمزگشائی و استفاده از پیام ارسال شده نخواهند بود.
در رمزنگاری عمومی از ترکیب یک کلید خصوصی و یک کلید عمومی استفاده می شود. کلید خصوصی صرفا” برای کامپیوتر شما ( ارسال کننده) قابل شناسائی و استفاده است . کلید عمومی توسط کامپیوتر شما در اختیار تمام کامپیوترهای دیگر که قصد ارتباط با آن را داشته باشند ، گذاشته می شود. بمنظور رمزگشائی یک پیام رمز شده، یک کامپیوتر می بایست با استفاده از کلید عمومی (ارائه شده توسط کامپیوتر ارسال کننده)، کلید خصوصی مربوط به خود اقدام به رمزگشائی پیام ارسالی نماید . یکی از متداولترین ابزار “رمزنگاری کلید عمومی” ، روشی با نام PGP)Pretty Good Privacy) است. با استفاده از روش فوق می توان اقدام به رمزنگاری اطلاعات دلخواه خود نمود.
#IPSec . پروتکل IPsec)Internet protocol security protocol) ، یکی از امکانات موجود برای ایجاد امنیت در ارسال و دریافت اطلاعات می باشد . قابلیت روش فوق در مقایسه با الگوریتم های رمزنگاری بمراتب بیشتر است. پروتکل فوق دارای دو روش رمزنگاری است : #Tunnel# ، Transport . در روش tunel ، هدر و Payload رمز شده درحالیکه در روش transport صرفا” #payload رمز می گردد. پروتکل فوق قادر به رمزنگاری اطلاعات بین دستگاههای متفاوت است :

 روتر به روتر
 فایروال به روتر
 کامپیوتر به روتر
 کامپیوتر به سرویس دهنده

● سرویس دهنده AAA . سرویس دهندگان( AAA : Authentication ,Authorization,Accounting) بمنظور ایجاد امنیت بالا در محیط های VPN از نوع ” دستیابی از راه دور ” استفاده می گردند. زمانیکه کاربران با استفاده از خط تلفن به سیستم متصل می گردند ، سرویس دهنده AAA درخواست آنها را اخذ و عمایات زیر را انجام خواهد داد :

 شما چه کسی هستید؟ ( تایید ، #Authentication )
 شما مجاز به انجام چه کاری هستید؟ ( مجوز ، #Authorization )
 چه کارهائی را انجام داده اید؟ ( حسابداری ، #Accounting )

شبکه های LAN

شبکه های LAN جزایر اطلاعاتی

فرض نمائید در جزیره ای در اقیانوسی بزرگ ، زندگی می کنید. هزاران جزیره در اطراف جزیره شما وجود دارد. برخی از جزایر نزدیک و برخی دیگر دارای مسافت طولانی با جزیره شما می باشند. متداولترین روش بمنظور مسافرت به جزیره دیگر، استفاده از یک کشتی مسافربری است . مسافرت با کشتی مسافربری ، بمنزله عدم وجود #امنیت است . در این راستا هر کاری را که شما انجام دهید ، توسط سایر مسافرین قابل مشاهده خواهد بود. فرض کنید هر یک از جزایر مورد نظر به مشابه یک #شبکه_محلی (#LAN) و اقیانوس مانند #اینترنت باشند. مسافرت با یک کشتی مسافربری مشابه برقراری ارتباط با یک #سرویس_دهنده_وب و یا سایر دستگاههای موجود در اینترنت است . شما دارای هیچگونه کنترلی بر روی کابل ها و روترهای موجود در اینترنت نمی باشید. (مشابه عدم کنترل شما بعنوان مسافر کشتی مسافربری بر روی سایر مسافرین حاضر در کشتی). در صورتیکه تمایل به ارتباط بین دو #شبکه_اختصاصی از طریق منابع عمومی وجود داشته باشد ، اولین مسئله ای که با چالش های جدی برخورد خواهد کرد ، امنیت خواهد بود. فرض کنید ، جزیره شما قصد ایجاد یک پل ارتباطی با جزیره مورد نظر را داشته باشد. مسیر ایجاد شده یک روش ایمن، ساده و مستقیم برای مسافرت ساکنین جزیره شما به جزیره دیگر را فراهم می آورد. همانطور که حدس زده اید، ایجاد و نگهداری یک پل ارتباطی بین دو جزیره مستلزم صرف هزینه های بالائی خواهد بود. (حتی اگر جزایر در مجاورت یکدیگر باشند). با توجه به ضرورت و حساسیت مربوط به داشتن یک مسیر ایمن و مطمئن، تصمیم به ایجاد پل ارتباطی بین دو جزیره گرفته شده است. در صورتیکه جزیره شما قصد ایجاد یک پل ارتباطی با جزیره دیگر را داشته باشد که در مسافت بسیار طولانی نسبت به جزیره شما واقع است، هزینه های مربوط بمراتب بیشتر خواهد بود. وضعیت فوق، نظیر استفاده از یک اختصاصی #Leased است . ماهیت پل های ارتباطی (خطوط اختصاصی) از اقیانوس (اینترنت) متفاوت بوده و کماکن قادر به ارتباط جزایر (#شبکه_های_LAN) خواهند بود. سازمانها و موسسات متعددی از رویکرد فوق (استفاده از خطوط اختصاصی) استفاده می نمایند. مهمترین عامل در این زمینه وجود امنیت و اطمینان برای برقراری ارتباط هر یک سازمانهای مورد نظر با یکدیگر است . در صورتیکه مسافت ادارات و یا شعب یک سازمان از یکدیگر بسیار دور باشد ، هزینه مربوط به برقرای ارتباط نیز افزایش خواهد یافت .
با توجه به موارد گفته شده ، چه ضرورتی بمنظور استفاده از #VPN وجود داشته و VPN تامین کننده ، کدامیک از اهداف و خواسته های مورد نظر است؟ با توجه به مقایسه انجام شده در مثال فرضی ، می توان گفت که با استفاده از VPN به هریک از ساکنین جزیره یک زیردریائی داده می شود. زیردریائی فوق دارای خصایص متفاوت نظیر :
 دارای سرعت بالا است .
 هدایت آن ساده است .
 قادر به استتار ( مخفی نمودن) شما از سایر زیردریا ئیها و کشتی ها است .
 قابل اعتماد است .
 پس از تامین اولین زیردریائی ، افزودن امکانات جانبی و حتی یک زیردریائی دیگر مقرون به صرفه خواهد بود .
در مدل فوق، با وجود ترافیک در اقیانوس، هر یک از ساکنین دو جزیره قادر به تردد در طول مسیر در زمان دلخواه خود با رعایت مسایل ایمنی می باشند. مثال فوق دقیقا” بیانگر تحوه عملکرد VPN است. هر یک از کاربران از راه دور شبکه قادر به برقراری ارتباطی امن و مطمئن با استفاده از یک محیط انتقال عمومی (نظیر اینترنت) با شبکه محلی (LAN) موجود در سازمان خود خواهند بود. توسعه یک VPN ( افزایش تعداد کاربران از راه دور و یا افزایش مکان های مورد نظر ) بمراتب آسانتر از شبکه هائی است که از خطوط اختصاصی استفاده می نمایند. قابلیت توسعه فراگیر از مهمتزین ویژگی های یک VPN نسبت به خطوط اختصاصی است .