Posts

پیاده سازی تانل GRE در تجهیزات سیسکو

در قسمت قبل با مفاهیم تانل و کاربرد ها و ویژگی های آن آشنا شدیم و در این بخش می خواهیم به پیاده سازی تانل GRE بپردازیم با ما همراه باشید.

ایجاد تانل GRE :


ایجاد یک تانل GRE شامل چند مرحله می باشد که این مراحل به شرح زیر هستند :

  • مرحله 1 : در ابتدا یک اینترفیس تانل مجازی در Global Configuration با استفاده از دستور interface tunnel ID ایجاد کنید.
  • مرحله 2 : سپس در تنظیمات اینترفیس تانلی که ایجاد کرده اید یک آدرس IP با استفاده از دستور ip address ipaddress subnetmask اضافه کنید.
  • مرحله 3 : مبدا تانل را با استفاده از دستور tunnel source { interfaceid | ip address } براساس آدرس IP یا اینترفیس مشخص کنید.
  • مرحله 4 : مقصد تانل را با استفاده از دستور tunnel destination ip_address مشخص کنید.
  • مرحله 5 : مراحل ذکر شده را برای روتر مقابل تکرار کنید.

 

GRE Configuration Example :


برای اینکه با مراحل تنظیم تانل GRE بیشتر و بهتر آشنا شوید یک سناریو برای GRE را اجرا می کنیم.

Image

به تصویر بالا توجه کنید یک سازمان را در نظر بگیرید که دارای دو سایت است که از طریق Service Provider ارتباط بین این دو سایت را برقرار کرده است حال این سازمان می خواهد از یک پروتکل مسیریابی دینامیک مثل EIGRP برای شبکه خود استفاده کند. همانطور که در تصویر می بینید بین دو سایت چند روتر وجود دارد و ارتباط بین دو روتر سازمان به صورت مستقیم نیست و همانطور که می دانید یکی از شرایط برقراری رابطه همسایگی advertise یک شبکه تو هر دو روتر می باشد که در اینجا روتر R1 شبکه های 192.168.1.0 و 192.168.12.0 را دارد و روتر R4 شبکه های 192.168.4.0 و 192.168.34.0 را دارد و همانطور که می بینید این دو روتر شبکه مشترکی برای برقراری همسایگی خود ندارند. راه حل برطرف کردن این مشکل استفاده از تانل است که یک شبکه مجازی به صورت Point to Point بین دو روتر R1 و R4 ایجاد کند و باعث شود که هر دو روتر دارای یک شبکه مشترک شوند.
نکته : برای ایجاد تانل لازم است که دو روتر بتوانند با یکدیگر ارتباط داشته باشند برای اینکار می توان از Static route استفاده کرد که در این سناریو روی روتر R1 دستور زیر را برای ایجاد Static Route مورد نظر خود وارد می کنیم.

R1(config)#ip route 192.168.34.0 255.255.255.0 192.168.12.2

روی روتر R2 نیز برای Static Route دستور زیر را وارد می کنیم.

R4(config)#ip route 192.168.12.0 255.255.255.0 192.168.34.3

در ابتدا روتر R1 را تنظیم می کنیم که دستورات آن به صورت زیر است:

R1(config)#interface tunnel 1
R1(config-if)#ip address 192.168.14.4 255.255.255.0
R1(config-if)#tunnel source fastEthernet 1/0
R1(config-if)#tunnel destination 192.168.34.4

همانطور که می بینید در ابتدا یک اینترفیس تانل ایجاد شده است و به آن یک IP اختصاص داده شده است سپس مبدا این تانل را برابر اینترفیس fastethernet 1-0 قرار داده شده و مقصد تانل را برابر 192.168.12.1 قرار داده شده است این IP مربوط به اینترفیس fastethernet 1-0 روتر R4 است. نکته که اینجا حائز اهمیت است این است که این روتر بتواند با این IP ارتباط داشته باشد تا بتواند ارتباط تانل را برقرار کند.
سپس روتر R4 را با دستورات زیر تنظیم می کنیم :

R4(config)#interface tunnel 1
R4(config-if)#ip address 192.168.14.1 255.255.255.0
R4(config-if)#tunnel source fastEthernet 1/0
R4(config-if)#tunnel destination 192.168.12.1

دستورات استفاده شده برای روتر R4 مشابه روتر R1 است فقط تفاوت آن در IP مقصد تانل است که در اینجا IP اینترفیس fastethernet 1-0 روتر R1 استفاده می شود.
نکته : از دستور tunnel mode gre ip برای تعیین نوع GRE برای تانل استفاده می شود اما چون به صورت پیش فرض اینترفیس تانل که ایجاد می شود در این حالت قرار می گیرد نیاز به وارد کردن این دستور نیست.
حال تانل ایجاد شده است و همینطور که در تصویر زیر می بینیم در وضعیت UP قرار گرفته است.

Image

با استفاده از دستور show interface tunnel 1 می توانیم وضعیت تانل را با جزئیات بیشتری ببینیم.

Image

همانطور که در تصویر مشخص شده است وضعیت تانل در حالت UP قرار دارد. آدرس تانل 192.168.14.1 می باشد. پهنای باند آن 100 Kbps می باشد. نوع کپسوله تانل می باشد. مبدا و مقصد تانل مشخص شده است. پروتکل تانل GRE و پروتکل Transport را IP مشخص کرده است.
حال اگر پروتکل مسیریابی EIGRP را پیاده سازی کنیم دو روتر R1 و R4 می توانند از طریق تانل همسایه شوند. در تصویر زیر نشان داده شده است که روتر R1 از طریق Tunnel 1 با روتر R4 همسایه شده است.

Image

همچنین اگر از PC1 بخواهیم PC2 را trace بگیریم خروجی به شکل زیر خواهد بود.

Image

همانطور که در تصویر می بینید تنها روترهای R1 و R4 در مسیر ما نمایش داده شده است و روترهای R2 و R3 در اینجا دیده نمی شوند و دلیل آن استفاده از تانل می باشد.

آموزش راه اندازی GRE Tunnel در روترهای سیسکو

تانل این امکان را برای ما فراهم می کند که یک پروتکل را درون یک پروتکل دیگر کپسوله کنیم و آنرا منتقل کنیم این ویژگی باعث می شود حتی بتوانیم پروتکل هایی غیر IP را رو روی بستر IP منتقل کنیم. تانل به صورت یک اینترفیس مجازی اجرا می شود و به ما یک اینترفیس ساده برای تنظیم می دهد. اینترفیس تانل به پروتکل یا نحوی انتقال خاصی وابسته نیست و به عنوان یک معماری طراحی شده است که سرویس های لازم برای برقراری یک ارتباط point to point استاندارد را فراهم کند. تانل به عنوان یک لینک point to point باید هر دو نقطه انتهایی آن به تنظیم گردد.

Image

تانل زدن یک مکانیزم برای حمل یک بسته از یک پروتکل توسط یک پروتکل دیگر است. پروتکل های که حمل می شوند پروتکل های passenger (مسافر) نامیده می شود و پروتکل های که برای حمل این پروتکل های passenger ، استفاده می شوند را پروتکل های transport می نامند. GRE به عنوان یک مکانیزم قابل استفاده برای تانل است که از IP به عنوان پروتکل Transport استفاده می کند و می توان از آن برای حمل پروتکل های مختلف استفاده کرد تانل مانند یک لینک مجازی Point to Point عمل می کند که دارای دو نقطه انتهای است که توسط tunnel source و tunnel destination در هر دو سمت آن شناسایی می شود.
یک مثال برای تانل این است که ما یک سازمان با دفتر مرکزی و چند شعبه داریم برای این سازمان می خواهیم یک پروتکل مسیریابی مانند RIP ، OSPF یا EIGRP اجرا کنیم که بین شعبه ها و دفتر مرکزی عملی مسیریابی انجام شود. لینک ارتباطی بین دفتر مرکزی و شعبه ها از چند روتر Service Provider عبور می کند. در نتیجه با توجه به اینکه برای برقراری همسایگی پروتکل های مسیریابی ذکر شده به یک ارتباط مستقیم نیاز داریم همسایگی بین روترهای دفتر مرکزی و شعبه ها برقرار نمی شود. اما استفاده از تانل این مشکل را برطرف می کند. استفاده از تانل مانند این است که یک ارتباط Point to Point بین دو دستگاه ایجاد کنیم در نتیجه دو روتر می توانند رابطه همسایگی خود را برقرار کنند. GRE یک تکنیک تانل زنی ساده است که این کار را به راحتی برای ما انجام می دهد.
GRE یک پروتکل برای تانل زدن است که توسط سیسکو توسعه یافته است و می تواند پروتکل های مختلف لایه شبکه را در داخل یک لینک Point to Point روی بستر IP کپسوله کند. تانل (Generic Routing Encapsulation (GRE همانطور که از نامش پیداست می تواند تقریبا هر نوع دیتایی را encapsulate کرده و آنرا روی اینترفیس های فیزیکی روتر ارسال کند. در واقع GRE می تواند انواع پروتکل های لایه 3 را encapsulate کند که باعث می شود GRE بسیار انعطاف پذیر شود.

Image

نکته : با توجه به اضافه شدن هدر GRE بسته ما دو هدر لایه سه خواهد داشت که در تصویر زیر یک بسته با هدر GRE نمایش داده شده است:

Image

GRE به تنهایی مکانیزمی برای تامین امنیت دیتای که منتقل می کند ندارد اما بسته های GRE را می توان روی یک IPsec VPN ارسال کرد که باعث می شود بسته های GRE به صورت امن ارسال شوند. این نوع پیکربندی معمولا مورد استفاده قرار می گیرد اما IPsec تنها می تواند از بسته های unicast حفاظت کند. این محدودیت باعث مسائلی برای پروتکل های مسیریابی که از IP Multicast استفاده می کنند می شود. خوشبختانه تانل GRE می تواند بسته های IP Multicast را encapsulate کند. در نتیجه بسته های unicast و multicast توسط تانل GRE کپسوله می شوند و همچنین بسته های unicast توسط تانل IPsec محافظت می شوند.
به عنوان مثال تصویر 2-3 را در نظر بگیرید. روتر HQ و Branch نیاز دارند که یک ارتباط همسایگی برای OSPF از طریق شبکه Service Provider ایجاد کنند. علاوه بر این ترافیک ارسالی بین این دو روتر باید محافظت شود. IPsec می تواند از ترافیک IP unicast محافظت کند و OSPF به صورت IP Multicast ارتباط برقرار می کند. بنابراین تمام ترافیک بین HQ و Branch (شامل ترافیک OSPF به صورت Multicast) در تانل GRE کپسوله می شود. بسته های GRE که یک بسته IP unicast هستند به وسیله تانل IPsec ارسال و محافظت می شوند.

Image

 

مزایای GRE :


  • تانل GRE امکان انتقال ترافیک multicast را دارد.
  • تانل GRE اجازه برقراری VPN را روی شبکه های WAN را می دهد.
  • اتصال شبکه های جدا از هم
  • پیاده سازی ساده و آسان
  • به دلیل عدم استفاده از مکانیزم های رمزنگاری منابع کمتری مصرف می کند
  • عبور ترافیک با آدرس Private روی شبکه اینترنت
  • راه حلی برای شبکه هایی که از پروتکل هایی که محدودیت تعداد hop دارند مانند پروتکل RIP
  • امکان عبور پروتکل های مختلف مورد استفاده در شبکه local از طریق یک پروتکل در شبکه backbone
  • تانل GRE امکان انتقال ترافیک IPv6 را دارد.