دانلود - دانشگاه شاهد

Download Report

Transcript دانلود - دانشگاه شاهد

‫شبکه هاي کامپيوتري‬
‫فصل ششم‪:‬‬
‫آدرس دهی ‪IP‬‬
‫وحید حقیقت دوست‬
‫دانشکده فنی و مهندس ی دانشگاه شاهد‬
‫‪1‬‬
‫مقدمه آدرس دهی ‪IP‬‬
‫‪223.1.1.1‬‬
‫‪‬‬
‫‪223.1.2.1‬‬
‫‪223.1.2.9‬‬
‫‪223.1.2.2‬‬
‫‪223.1.1.2‬‬
‫‪223.1.1.4‬‬
‫‪223.1.1.3 223.1.3.27‬‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫‪223.1.3.2‬‬
‫‪223.1.3.1‬‬
‫‪223.1.1.1 = 11011111 00000001 00000001 00000001‬‬
‫‪1‬‬
‫‪2‬‬
‫‪1‬‬
‫‪1‬‬
‫‪223‬‬
‫آدرس ‪ :IP‬شناسه ‪ 32‬بیتی برای‬
‫میزبانها‪ ،‬اینترفیس روترها میباشد‬
‫ً‬
‫روترها معموال دارای چندین‬
‫اینترفیس میباشند‬
‫میزبانها نیز ممکن است دارای چندین‬
‫اینترفیس باشند‪.‬‬
‫به هر اینترفیس یک آدرس ‪IP‬‬
‫اختصاص می یابد‪.‬‬
‫‪IP Addressing‬‬
‫‪223.1.1.1‬‬
‫‪‬‬
‫‪223.1.2.1‬‬
‫‪223.1.2.9‬‬
‫بخشهای آدرس ‪IP‬‬
‫‪‬‬
‫‪223.1.1.2‬‬
‫‪223.1.1.4‬‬
‫‪‬‬
‫‪223.1.2.2‬‬
‫‪223.1.3.27‬‬
‫‪223.1.1.3‬‬
‫‪‬‬
‫‪LAN‬‬
‫‪223.1.3.2‬‬
‫یک شبکه چیست؟‬
‫‪‬‬
‫‪223.1.3.1‬‬
‫‪‬‬
‫شبکه ای متشکل از سه شبکه ‪IP‬‬
‫‪3‬‬
‫بخش مربوط به شبکه (بیت های با‬
‫ارزش آدرس)‬
‫بخش مربوط به میزبان (بیتهای کم‬
‫ارزش آدرس)‬
‫اینترفیس هایی که دارای بخش شبکه‬
‫یکسان در آدرس ‪ IP‬خود هستند‬
‫کامپیوترهای یک شبکه میتوانند بدون‬
‫واسطه (روتر) به یکدیگر دسترس ی‬
‫داشته باشند‪.‬‬
‫انتقال یک دیتاگرام از مبدا به مقصد‬
‫جدول مسیر یابی در‪A‬‬
‫‪Dest. Net. Next Router Nhops‬‬
‫‪1‬‬
‫‪2‬‬
‫‪2‬‬
‫‪223.1.1.4‬‬
‫‪223.1.1.4‬‬
‫‪223.1.1‬‬
‫‪223.1.2‬‬
‫‪223.1.3‬‬
‫‪223.1.1.1‬‬
‫دیتا گرام ‪IP‬‬
‫‪A‬‬
‫‪‬‬
‫‪223.1.2.1‬‬
‫‪223.1.2.9‬‬
‫‪E‬‬
‫‪4‬‬
‫‪223.1.1.2‬‬
‫‪223.1.1.4‬‬
‫‪B‬‬
‫‪223.1.3.27 223.1.2.2‬‬
‫‪223.1.1.3‬‬
‫‪223.1.3.2‬‬
‫‪data‬‬
‫‪223.1.3.1‬‬
‫‪‬‬
‫‪other source‬‬
‫‪dest‬‬
‫‪fields IP addr IP addr‬‬
‫دیتاگرام در طول سفرش از مبدا تا مقصد‬
‫بودن تغییر باقی میماند‬
‫آدرس مبدا و مقصد درون بسته قرار‬
‫میگیرند‬
‫‪Getting a datagram from source to dest.‬‬
‫جدول مسیر یابی در ‪A‬‬
‫‪other‬‬
‫‪data‬‬
‫‪fields 223.1.1.1 223.1.1.3‬‬
‫‪Dest. Net. Next Router Nhops‬‬
‫‪1‬‬
‫‪2‬‬
‫‪2‬‬
‫‪223.1.1.4‬‬
‫‪223.1.1.4‬‬
‫‪223.1.1‬‬
‫‪223.1.2‬‬
‫‪223.1.3‬‬
‫‪223.1.1.1‬‬
‫یک بسته که از ‪ A‬آغاز و برای ‪ B‬ارسال میشود را درنظر‬
‫بگیرید‪:‬‬
‫‪E‬‬
‫‪‬‬
‫‪B‬‬
‫‪223.1.1.3‬‬
‫‪223.1.3.2‬‬
‫‪5‬‬
‫‪223.1.1.2‬‬
‫‪223.1.1.4‬‬
‫‪223.1.3.27 223.1.2.2‬‬
‫‪223.1.3.1‬‬
‫‪‬‬
‫به این نتیجه میرسد که ‪ B‬در همان شبکه ‪A‬‬
‫قرار دارد‬
‫الیه پیوند داده بطور مستقیم بسته را برای ‪B‬‬
‫ارسال میکند‬
‫‪A‬‬
‫‪223.1.2.1‬‬
‫‪223.1.2.9‬‬
‫‪‬‬
‫به آدرس شبکه ‪ B‬در جدول مسیریابی خود نگاه‬
‫میکند‪.‬‬
‫‪Getting a datagram from source to dest.‬‬
‫جدول مسیر یابی در ‪A‬‬
‫‪other‬‬
‫‪data‬‬
‫‪fields 223.1.1.1 223.1.2.2‬‬
‫‪Dest. Net. Next Router Nhops‬‬
‫‪1‬‬
‫‪2‬‬
‫‪2‬‬
‫‪223.1.1.4‬‬
‫‪223.1.1.4‬‬
‫‪223.1.1‬‬
‫‪223.1.2‬‬
‫‪223.1.3‬‬
‫یک بسته که از ‪ A‬آغاز و برای ‪ E‬ارسال میشود را درنظر بگیرید‪:‬‬
‫‪‬‬
‫‪‬‬
‫‪A‬‬
‫‪223.1.1.1‬‬
‫‪‬‬
‫‪223.1.2.1‬‬
‫‪223.1.2.9‬‬
‫‪E‬‬
‫‪‬‬
‫‪B‬‬
‫‪223.1.3.27 223.1.2.2‬‬
‫‪223.1.1.3‬‬
‫‪223.1.3.2‬‬
‫‪6‬‬
‫‪223.1.1.2‬‬
‫‪223.1.1.4‬‬
‫‪223.1.3.1‬‬
‫‪‬‬
‫‪‬‬
‫به آدرس شبکه ‪ E‬در جدول مسیریابی خود نگاه میکند‪.‬‬
‫به این نتیجه میرسد که ‪ E‬در شبکه دیگری قرار دارد‬
‫‪ A ‬و ‪ E‬بطور مستقیم به هم وصل نیستند‬
‫جدول مسیر یابی‪ :‬جهش بعدی برای ‪223.1.1.4 ،E‬‬
‫میباشد‪.‬‬
‫الیه پیوند داده قابی را به روتر ‪ 223.1.1.4‬ارسال‬
‫میکند‬
‫دیتاگرام از ‪ 223.1.1.4‬وارد روتر میشود‬
‫و به سمت مقصد حرکت میکند ‪...‬‬
‫‪Getting a datagram from source to dest.‬‬
‫جدول مسیر یابی در روتر‬
‫‪other‬‬
‫‪data‬‬
‫‪fields 223.1.1.1 223.1.2.2‬‬
‫‪Dest. Net Router Nhops Interface‬‬
‫‪223.1.1.4‬‬
‫‪223.1.2.9‬‬
‫‪223.1.3.27‬‬
‫‪1‬‬
‫‪1‬‬
‫‪1‬‬
‫‬‫‬‫‪-‬‬
‫‪223.1.1‬‬
‫‪223.1.2‬‬
‫‪223.1.3‬‬
‫بسته از ‪ 223.1.4‬وارد روتر شده و مقصدش‬
‫‪ 223.1.2.2‬میباشد‬
‫‪‬‬
‫‪223.1.1.1‬‬
‫‪A‬‬
‫‪‬‬
‫‪223.1.2.1‬‬
‫‪223.1.2.9‬‬
‫‪E‬‬
‫‪‬‬
‫‪B‬‬
‫‪223.1.1.3‬‬
‫‪223.1.3.2‬‬
‫‪7‬‬
‫‪ E ‬بطور مستقیم به روتر متصل است‬
‫‪223.1.1.2‬‬
‫‪223.1.1.4‬‬
‫‪223.1.3.27 223.1.2.2‬‬
‫‪223.1.3.1‬‬
‫به آدرس شبکه مقصد بسته (‪ )E‬نگاه میکند‪.‬‬
‫‪ E‬روی اینترفیس ی از روتر قرار دارد که آدرس آن‬
‫‪ 223.1.2.9‬است‬
‫‪‬‬
‫الیه پیوند قابی را که مقصد آن ‪223.1.2.2‬‬
‫ایجاد و از اینترفیس ی که آدرس آن ‪223.1.2.9‬‬
‫است برایش ارسال میکند‬
‫دیتاگرام به ‪ 223.1.2.2‬وارد میشود‪.‬‬
‫آدرس‬
‫دهی ‪ :IP‬تمام کالس ( ‪)Class-full‬‬
‫در این روش‪ ،‬کلیه ‪ IP‬های قابل تعریف در قالب ‪ 6‬کالس تعریف میشوند‬
‫‪range‬‬
‫‪format‬‬
‫‪N.H.H.H‬‬
‫‪1.0.0.0 to‬‬
‫‪126.255.255.255‬‬
‫میزبان ‪ 3‬بایت‬
‫‪N.N.H.H‬‬
‫‪128.0.0.0 to‬‬
‫‪191.255.255.255‬‬
‫میزبان ‪ 2‬بایت‬
‫‪N.N.N.H‬‬
‫‪192.0.0.0 to‬‬
‫‪223.255.255.255‬‬
‫‪224.0.0.0 to‬‬
‫‪239.255.255.255‬‬
‫‪240.0.0.0 to‬‬
‫‪255.255.255.255‬‬
‫‪0‬‬
‫‪A‬‬
‫شبکه ‪ 2‬بایت‬
‫‪10‬‬
‫‪B‬‬
‫شبکه ‪ 3‬بایت‬
‫‪110‬‬
‫‪C‬‬
‫‪1110‬‬
‫‪D‬‬
‫‪1111‬‬
‫‪E‬‬
‫شبکه ‪ 1‬بایت‬
‫میزبان ‪ 1‬بایت‬
‫آدرس چندپخش ی‬
‫آدرس رزور شده‬
‫‪32 bits‬‬
‫‪8‬‬
‫‪class‬‬
class full ‫جمع بندی تقسیم بندی‬
The Class System
Address
Class
Class A
Class B
Class C
Number of
Number of
Application Network
Host Bits
Bits
Large
8 bits
24 bits
Networks
Medium16 bits
16 bits
sized
Small
24 bits
8 bits
Networks
Decimal
Address
Range
Number of
Networks
Number of
Possible
Host
1 - 126
126
16,777,214
128 - 191
65,534
65,534
192 - 223
2,097,152
254
Class D and E
12.5%
Class C
12.5%
Class A
50%
Class B
25%
9
‫آدرس خصوص ی (‪)Private addresses‬‬
‫‪‬‬
‫برخی از آدرسها برای استفاده در شبکه های محلی تعریف شده اند‪ .‬لذا این آدرسها در اینترنت اعتبار ندارند‪ .‬این‬
‫آدرسها در اینترنت ‪ route‬نمیشوند‪.‬‬
‫‪‬‬
‫روترهای اینترنت بسته هایی با این مقصدها را هدایت نمی کنند‬
‫)‪10.x.x.x —» 10.0.0.0 to 10.255.255.255 (a single class A net‬‬
‫‪10.2.50.1‬‬
‫‪Ex: 10.1.2.3‬‬
‫‪‬‬
‫)‪172.(16-31).x.x —» 172.16.0.0 to 172.31.255.255 (16 class B‬‬
‫‪172.19.20.2‬‬
‫‪Ex: 172.16.1.10‬‬
‫‪192.168.18.140‬‬
‫‪10‬‬
‫‪‬‬
‫‪‬‬
‫)‪192.168.x.x —» 192.168.0.0 to 192.168.255.255 (255 class C‬‬
‫‪Ex: 192.168.0.1‬‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫آدرسهای ‪ IP‬خاص‬
‫‪ ‬برخی آدرسها در کالسها برای کاربردهای خاص رزرو شده اند‪:‬‬
‫‪ :0.0.0.0 ‬آدرس فرستنده درست پس از ‪ Boot‬شدن‬
‫‪ :255.255.255.255 ‬معادل همه پخش ی (‪ ) broadcast‬در شبکه‬
‫فرستنده‬
‫‪ :NetworkID.111..11 ‬پس از آدرس شبکه چنانچه آدرس میزبان‬
‫معادل با آدرس ی باشد که تمام بیتهای آدرس میزبان برابر ‪ 1‬باشد به معنی‬
‫آدرس همه پخش ی در شبکه مقصد است‬
‫‪ :NetworkID.00..00 ‬پس از آدرس شبکه چنانچه آدرس میزبان معادل‬
‫با صفر باشد نشان دهنده آدرس شبکه است‪.‬‬
‫‪ 127.x.x.x ‬به معنی آدرس حلقه بازگشتی (‪ )loopback‬یعنی همان آدرس‬
‫فرستنده است‪.‬‬
‫‪11‬‬
1‫مثال‬
‫ کالس هر یک از آدرسهای زیر‬،class full ‫با فرض استفاده از تکنیک‬
:‫را پیدا کنید‬





172.19.23.1
194.15.8.4
15.8.3.2
192.168.1.2
123.18.14.9
172
1010 1100 
Class B
194
1100 0010 
Class C
15
0000 1111 
Class A
192
1100 0000 
Class C
10
0111 1011 
Class A

12
2 ‫مثال‬
‫ کدام ماشین های زیر با توجه به‬،class full ‫با فرض استفاده از تکنیک‬
:‫آدرسهای اختصاص یافته میتوانند در یک شبکه باشند‬
A) 172.19.23.1
B) 194.15.8.4
C) 15.8.3.2
D) 123.6.6.100
E) 194.15.9.1
F) 172.19.1.1
G) 15.100.100.100
H) 192.168.1.2
I) 123.18.14.9

A) Class B  NetID: 172.19.0.0
B) Class C  NetID: 194.15.8.0
C) Class A  NetID: 15.0.0.0
D) Class A  NetID: 123.0.0.0
E) Class C  NetID: 194.15.9.0
F) Class B  NetID: 172.19.0.0
G) Class A  NetID: 15.0.0.0
H) Class C  NetID: 192.168.1.0
I) Class A  NetID: 123.0.0.0
Network
Network
Network
Network
Network
Network
1:
2:
3:
4:
5:
6:
A,F
B
C,G
D,I
E
H
13
‫تغییر در فرایند آدرسها‬
‫‪‬‬
‫در سال ‪ 1991‬سارمان ‪ IAB‬سه تحدید را در خصوص آدرسها ارائه نمود‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫چهار استراتژی برای آدرس دهی‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫‪14‬‬
‫به انتها رسیدن آدرسهای کالس ‪B‬‬
‫افزایش تعداد شبکه ها منجر به بزرگ شدن جداول مسیریابی شد‬
‫افزایش تعداد شبکه ها و میزبانها با فضای آدرس ‪ 32‬بیتی دیگر تطبیقی ندارد‬
‫}‪2050‬‬
‫}‪1631‬‬
‫}‪1519‬‬
‫}‪1883‬‬
‫‪{RFC‬‬
‫‪{RFC‬‬
‫‪{RFC‬‬
‫‪{RFC‬‬
‫‪Creative address space allocation‬‬
‫)‪Private addresses {RFC 1918}, Network Address Translation (NAT‬‬
‫)‪Classless Inter-Domain Routing (CIDR‬‬
‫)‪IP version 6 (IPv6‬‬
‫اختصاص ‪ IP‬مدبرانه‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫آدرسهای کالس ‪ )64-127( A‬رزرو هستند‬
‫آدرسهای کالس ‪ B‬تنها برای نیازهای تایید شده قابل واگذاری هستند‬
‫آدرسهای کالس ‪C‬‬
‫‪‬‬
‫‪‬‬
‫( ‪)Creative address space allocation‬‬
‫به ‪ 8‬بلوک برای ناحیه های مختلف تقسیم میشوند‬
‫سه مرکز ثبت نام و اختصاص ‪ IP‬برای تایید افراد و اختصاص ‪ IP‬تعریف شدند‪:‬‬
‫‪APNIC – Asia & Pacific www.apnic.net‬‬
‫‪ARIN – N. & S. America, Caribbean & sub-Saharan Africa‬‬
‫‪www.arin.net‬‬
‫‪RIPE – Europe and surrounding areas www.ripe.net‬‬
‫‪15‬‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫‪NAT: Network Address Translation-1‬‬
‫‪‬‬
‫ایده‪ :‬شبکه های محلی برای اتصال به جهان بیرون تنها از یک ‪IP‬‬
‫استفاده میکنند‪.‬‬
‫‪ ‬نیازی به اختصاص بازه ای از آدرسها از طرف ‪ ISP‬وجود ندراد‪ .‬تنها یک آدرس‬
‫‪ IP‬برای تمامی دستگاه ها استفاده می شود‪.‬‬
‫‪ ‬میتوان آدرس دستگاه های داخلی را تغیی داد بدون اینکه به جهان بیرون‬
‫اطالع داد‬
‫‪ ‬میتوان ‪ ISP‬را تغییر داد بدون اینکه آدرس دستگاه های داخلی را تغییر داد‬
‫‪ ‬دستگاه های داخلی نمیتوانند بطور منحصر بفرد آدرس دهی شوند و از جهان‬
‫خارج دیده شوند (معیار مثبت از نظر امنیت)‬
‫‪16‬‬
‫شبکه ‪ IP‬خصوص ی‬
‫‪‬‬
‫‪‬‬
‫شبکه ‪ IP‬خصوص ی‪ ،‬شبکه ای است که بطور مستقیم به اینترنت متصل نمیباشد‬
‫آدرسهای ‪ IP‬در شبکه خصوص ی میتوانند دلبخواهی اختصاص یابند‬
‫‪‬‬
‫‪‬‬
‫بطور عمومی‪ ،‬شبکه های خصوص ی از آدرسهای خصوص ی که پیش از این معرفی شده بوند و به‬
‫آدرسهای غیر قابل مسیردهی در اینترنت (‪ )non-routable addresses‬شهرت دارند‬
‫استفاده میکنند‪:‬‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫‪17‬‬
‫نیازی به ثبت و تضمین منحصر بفرد بودن آن نیست‬
‫‪10.0.0.0 – 10.255.255.255‬‬
‫‪172.16.0.0 – 172.31.255.255‬‬
‫‪192.168.0.0 – 192.168.255.255‬‬
‫‪NAT: Network Address Translation-2‬‬
‫‪ ‬پیاده سازی‪ :‬روتر ‪ NAT‬باید‪:‬‬
‫‪‬‬
‫دیتاگرامهای خروجی‪ :‬جایگزین نمودن )‪ (source IP address, port #‬مربوط‬
‫به تمامی بسته های خروجی با)‪(NAT IP address, new port #‬‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫‪18‬‬
‫کالینت و سروهای مخاطب با )‪ (NAT IP address, new port #‬تعامل میکنند‪.‬‬
‫ثبت نگاشتها در جدول ترجمه ‪ :)NAT translation table( NAT‬هر نگاشت‬
‫صورت گرفته از )‪ (source IP address, port #‬به ‪(NAT IP‬‬
‫)‪ address, new port #‬بصورت یک زوج ثبت میشود‬
‫دیتاگرامهای ورودی‪ :‬جایگزین نمودن )‪(NAT IP address, new port #‬در‬
‫آدرس مقصد بسته با )‪ (source IP address, port #‬مرتبط باتوجه به جدول‬
‫ترجمه ‪NAT‬‬
NAT: Network Address Translation-3
rest of
Internet
local network
Private IP Network
(e.g., home network)
10.0.0/24
10.0.0.4
10.0.0.1
10.0.0.2
138.76.29.7
10.0.0.3
All datagrams leaving local
network have same single source
NAT IP public address: 138.76.29.7,
different source port numbers
Datagrams with source or
destination in this network
have 10.0.0/24 address
(private address)
19
NAT: Network Address Translation-4
2: NAT router
changes datagram
source addr from
10.0.0.1, 3345 to
138.76.29.7, 5001,
updates table
2
NAT translation table
WAN side addr
LAN side addr
1: host 10.0.0.1
sends datagram to
128.119.40, 80
138.76.29.7, 5001 10.0.0.1, 3345
……
……
S: 10.0.0.1, 3345
D: 128.119.40.186, 80
S: 138.76.29.7, 5001
D: 128.119.40.186, 80
138.76.29.7
S: 128.119.40.186, 80
D: 138.76.29.7, 5001
3: Reply arrives
dest. address:
138.76.29.7, 5001
3
1
10.0.0.4
S: 128.119.40.186, 80
D: 10.0.0.1, 3345
10.0.0.1
10.0.0.2
4
10.0.0.3
4: NAT router
changes datagram
dest addr from
138.76.29.7, 5001 to 10.0.0.1, 3345
20
‫‪NAT: Network Address Translation-4‬‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫شماره پورت برای تفکیک بسته های مربوط به برنامه های مختلف‬
‫میباشد‪.‬‬
‫از شماره پورت در الیه انتقال استفاده میشود‪.‬‬
‫‪ 16‬بیت برای شماره پورت در نظر گرفته شده است‬
‫‪‬‬
‫‪‬‬
‫‪21‬‬
‫همانطور که در فرایند ‪ NAT‬توضیح داده شد برای تمایز بسته ها از پورت‬
‫کمک گرفته شد‪.‬‬
‫‪ 232=65,536‬اتصال همزمان را میتوان با استفاده از یک ‪NAT IP‬‬
‫برقرار نمود‬
‫‪ Nat‬و برنامه های کاربردی‬
‫‪‬‬
‫‪22‬‬
‫برنامه هایی که آدرسهای ‪ IP‬را در بخش ‪ payload‬بسته ها حمل‬
‫میکنند بطور عمومی نمیتوانند در ترجمه آدرس خصوص ی به عمومی کار‬
‫کنند‬
)1( NAT & FTP :‫مثال‬
Public Network
FTP Server
No NAT Device
FTP Client
Public Address
147.202.71.22
Public Address
207.3.18.98
PORT 207.3.18.98, 1107
200 Port Command Successful
RETR file1
150 Opening Data Connection
Establish Data Connection
Client gives its IP address and port number for data connection.
Server starts data connection.
23
Public Network
FTP Server
Public Address
147.202.71.22
PORT command in
IP packet must be
modified.
)2( NAT & FTP :‫مثال‬
Private Network
NAT Device with
FTP Support
FTP Client
Public Address
207.3.18.98
PORT 207.3.18.98,1107
200 Port Command Successful
RETR file1
150 Opening Data Connection
Establish Data Connection
Private Address
10.0.1.1
PORT 10.0.1.1, 1107
200 Port Command Successful
RETR file1
150 Opening Data Connection
Establish Data Connection
24
‫مشکل عدم مشاهده مستقیم در ‪ NAT‬و تغییر در اختصاص ‪Port‬‬
‫‪‬‬
‫‪10.0.0.1‬‬
‫‪Client‬‬
‫‪NAT‬‬
‫‪router 10.0.0.4‬‬
‫کالینتی میخواهد به سرور با آدرس‬
‫‪ 10.0.0.1‬متصل شود‬
‫‪‬‬
‫‪‬‬
‫‪138.76.29.7‬‬
‫‪‬‬
‫آدرس سرور ‪ 10.0.0.1‬یک آدرس محلی‬
‫است‪ .‬کالینتها نمیتوانند از این آدرس بعنوان‬
‫آدرس مقصد استفاده کنند‬
‫تنها آدرس ی که از بیرون میتواند دیده شود‬
‫‪ 138.76.29.7‬میباشد‪.‬‬
‫راه حل ‪ :1‬بصورت ایستا ‪ NAT‬تنظیم شود تا‬
‫بسته های وارده برای یک پورت خاص همگی به‬
‫سرور ‪ 10.0.0.1‬انتقال داده شوند‪.‬‬
‫‪‬‬
‫برای مثال درخواست اتصال به‬
‫)‪ (138.76.29.7, port 80‬همیشه‬
‫بصورت)‪ (10.0.0.1 port 1405‬ترجمه‬
‫شود‬
‫‪‬‬
‫‪10.0.0.1‬‬
‫‪IGD‬‬
‫راه حل ‪ :2‬استفاده از ‪Internet Gateway‬‬
‫‪ Device (IGD) Protocol‬به میزبان ‪NAT‬‬
‫شده اجازه میدهد‪:‬‬
‫‪‬‬
‫‪NAT‬‬
‫‪router 10.0.0.4‬‬
‫‪‬‬
‫‪138.76.29.7‬‬
‫آدرس عموی را یاد بگیرد‬
‫)‪(138.76.29.7‬‬
‫نگاشت پورتها را خودش بسیار سریع انجام‬
‫دهد‬
‫‪‬‬
‫راه حل ‪ :3‬استفاده از سیستم میانی یا رله (‪)relay‬‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫کالینت ‪ NAT‬شده یک اتصال را به سرور رله برقرار می نماید‬
‫کالینت خارجی نیز به رله متصل میشود‪.‬‬
‫رله بعنوان پل عمل کرده و بسته های این دو کالینت را به آنها منتقل می نماید‬
‫‪NATted Host‬‬
‫‪2. connection to‬‬
‫‪relay initiated‬‬
‫‪by client‬‬
‫‪1. connection to‬‬
‫‪relay initiated‬‬
‫‪by NATted host‬‬
‫‪10.0.0.1‬‬
‫‪10.0.0.4‬‬
‫‪NAT‬‬
‫‪router‬‬
‫‪3. relaying‬‬
‫‪established‬‬
‫‪138.76.29.7‬‬
‫‪Client‬‬
‫آدرس دهی ‪ IP‬فاقد کالس (‪)class less‬‬
‫‪‬‬
‫آدرس دهی تمام کالس‬
‫‪‬‬
‫‪‬‬
‫کارایی پایین در استفاده از فضای آدرس و کمبود شدید آدرس برای شبکه های جدید‬
‫برای مثال یک شبکه ‪ class B‬فضای کافی برای ‪ 65K‬کالینت را دارد در حالی که ممکن است تنها ‪2K‬‬
‫میزبان در آن فعال باشند‪65K hosts, even if only 2K hosts in that network .‬‬
‫‪CIDR: Classless Inter Domain Routing‬‬
‫‪(RFC1519) ‬‬
‫‪ ‬بخش آدرس شبکه را میتوان در طولهای مورد نظر تعریف نمود‬
‫‪ ‬فرمت آدرسها بصورت ‪ a.b.c.d/x,‬هستند بطوری که ‪ x‬تعداد بیتهای مربوط به آدرس شبکه را مشخص‬
‫میکند‪.‬‬
‫‪network‬‬
‫‪part‬‬
‫‪host‬‬
‫‪part‬‬
‫‪11001000 00010111 00010000 00000000‬‬
‫‪200.23.16.0/23‬‬
‫‪28‬‬
‫الگوی زیر شبکه (‪)Subnet Mask‬‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫‪29‬‬
‫یک الگوی شبکه تعیین میکند که چه بیتهایی از آدرس میزبان مربوط به آدرس شبکه میباشد‪.‬‬
‫برای مثال یک میزبان با آدرس ‪ 137.138.28.228‬و الگوی زیر شبکه‬
‫‪255.255.255.0‬بیان میدارد که ‪ 24‬بیت با ارزش از آدرس میزبان مربوط به آدرس شبکه‬
‫و ‪ 8‬بیت دیگر مربوط به شناسه میزبان میباشد‬
‫عدد ‪ 255‬معادل با یک یک عدد یک بایتی است که تمام بیتهای آن ‪ 1‬باشد‪.‬‬
‫در کامپیوترها با انجام عملیات ‪ AND‬بیتی بین آدرس میزبان و الگوی زیرشبکه میتوان آدرس‬
‫شبکه را بدست آورد‪.‬‬
‫یادآوری‪ :‬هنگام تولید قاب در الیه پیوند داده برای ارسال بسته به مقصد الزم بود تا شبکه‬
‫ً‬
‫مقصد شناسایی شود و اگر آدرس شبکه مبدا و مقصد یکسان بود‪ ،‬بسته مستقیما برای مقصد‬
‫ارسال میشد و در غیر اینصور به ‪ Default Gateway‬تحویل داده میشد‬
‫نمایش الگوی پیشوندی در مقایسه با الگوی زیر شبکه‬
‫(‪)Prefix Mask via Subnet Mask‬‬
‫‪255.255.255.0‬‬
‫‪255.255.255.128‬‬
‫‪255.255.255.192‬‬
‫‪255.255.255.224‬‬
‫‪255.255.255.240‬‬
‫‪255.255.255.248‬‬
‫‪255.255.255.252‬‬
‫‪not usable‬‬
‫‪not usable‬‬
‫=‬
‫=‬
‫=‬
‫=‬
‫=‬
‫=‬
‫=‬
‫=‬
‫=‬
‫‪/24‬‬
‫‪/25‬‬
‫‪/26‬‬
‫‪/27‬‬
‫‪/28‬‬
‫‪/29‬‬
‫‪/30‬‬
‫‪/31‬‬
‫‪/32‬‬
‫‪255.255.0.0‬‬
‫‪255.255.128.0‬‬
‫‪255.255.192.0‬‬
‫‪255.255.224.0‬‬
‫‪255.255.240.0‬‬
‫‪255.255.248.0‬‬
‫‪255.255.252.0‬‬
‫‪255.255.254.0‬‬
‫=‬
‫=‬
‫=‬
‫=‬
‫=‬
‫=‬
‫=‬
‫=‬
‫‪/16‬‬
‫‪/17‬‬
‫‪/18‬‬
‫‪/19‬‬
‫‪/20‬‬
‫‪/21‬‬
‫‪/22‬‬
‫‪/23‬‬
‫‪= 255.0.0.0‬‬
‫‪= 255.128.0.0‬‬
‫‪= 255.192.0.0‬‬
‫‪= 255.224.0.0‬‬
‫‪= 255.240.0.0‬‬
‫‪= 255.248.0.0‬‬
‫‪= 255.252.0.0‬‬
‫‪= 255.254.0.0‬‬
‫ً‬
‫‪ /30‬برای شبکه ای با دو میزبان استفاده میشود و معموال برای اتصاالت نقطه به نقطه استفاده میشود‬
‫‪30‬‬
‫‪/8‬‬
‫‪/9‬‬
‫‪/10‬‬
‫‪/11‬‬
‫‪/12‬‬
‫‪/13‬‬
‫‪/14‬‬
‫‪/15‬‬
Prefix Equivalents
Network Prefix
Equivalent Number of Class Addresses
Number of Hosts
/27
/26
/25
/24
/23
/22
/21
/20
/19
/18
/17
/16
/15
/14
/13
/12
/11
/10
/9
/8
1/8th of a Class C
1/4th of a Class C
1/2 of a Class C
1 Class C
2 Class C
4 Class C
8 Class C
16 Class C
32 Class C
64 Class C
128 Class C
32
64
128
256
512
1,024
2,048
4,096
8,192
16,384
32,768
65,536
131,072
262,144
524,288
1,048,576
2,097,152
4,194,304
8,388,608
16,777,216
256 Class C or 1 Class B
512 Class C or 2 Class B
1,024 Class C or 4 Class B
2048 Class C or 8 Class B
4096 Class C or 16 Class B
8192 Class C or 32 Class B
16384 Class C or 64 Class B
32768 Class C or 128 Class B
65,536 Class C or 256 Class B or 1 Class A
31
‫زیر شبکه سازی (‪ :)Subnetting‬افزایش طول پیشوند شبکه‬
‫سوال‪ :‬چطور یک ‪ ISP‬میتواند فضای آدرس خودش را به بخش های کوچکتر‬
‫اختصاص داده و به شرکتها واگذار نماید‪.‬‬
‫آدرس اختصاص یافته به ‪ISP‬‬
‫‪200.23.16.0/20‬‬
‫‪32‬‬
‫‪11001000 00010111 00010000 00000000‬‬
‫‪ISP's block‬‬
‫‪11001000 00010111 00010000 00000000 200.23.16.0/23‬‬
‫‪11001000 00010111 00010010 00000000 200.23.18.0/23‬‬
‫‪11001000 00010111 00010100 00000000 200.23.20.0/23‬‬
‫‪…..‬‬
‫‪….‬‬
‫‪….‬‬
‫‪11001000 00010111 00011110 00000000 200.23.30.0/23‬‬
‫‪Organization 0‬‬
‫‪Organization 1‬‬
‫‪Organization 2‬‬
‫‪...‬‬
‫‪Organization 7‬‬
‫آدرس اختصاص یافته به ‪ ISP‬به ‪ 8‬زیر‬
‫شبکه کوچکتر تقسیم شده و در اختیار‬
‫سازمانهای مختلف قرار گرفته است‬
)route aggregation( ‫ تجمیع مسیر‬:‫آدرس دهی سلسله مراتبی‬
‫ اجازه میدهد تا انتشار اطالعات مسیریابی ساده تر‬،‫آدرس دهی سلسله مراتبی‬
‫صورت پذیرد‬
route aggregation or
route summarization.
Organization 0
200.23.16.0/23
Organization 1
200.23.18.0/23
Organization 2
200.23.20.0/23
Organization 7
.
.
.
200.23.30.0/23
.
.
.
ISP1
200.23.16.0/20
“Send me anything
with addresses
beginning
200.23.16.0/20”
Internet
ISP2
199.31.0.0/16
“Send me anything
with addresses
beginning
199.31.0.0/16”
33
‫آدرس دهی سلسله مراتبی‪ :‬وجود چندین مسیر برای یک مقصد‬
‫در ‪ ISP2‬بیش از یک ‪ rote‬برای ‪ organization 1‬وجود دارد‬
‫روترها در اینترنت از قانون همخوانی طوالنی ترین پیشوند ( ‪longest prefix‬‬
‫‪ )matching‬استفاده میکنند‪ .‬لذا چنانچه آدرس شبکه مربوط به بسته در چند ‪ route‬قرار‬
‫داشته باشد‪ ،‬بسته را در خروجی ارسال میکنند طول آدرس شبکه آن طوالنی تر باشد‬
‫‪Organization 0‬‬
‫‪200.23.16.0/23‬‬
‫”‪200.23.16.0 /20‬‬
‫‪20 bits‬‬
‫‪ISP1‬‬
‫‪Internet‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪Organization 2‬‬
‫‪200.23.20.0/23‬‬
‫‪.‬‬
‫‪.‬‬
‫‪.‬‬
‫‪Organization 7‬‬
‫‪200.23.30.0/23‬‬
‫‪ISP2‬‬
‫”‪200.23.18.0 /23‬‬
‫‪34‬‬
‫‪23 bits‬‬
‫‪Organization 1‬‬
‫‪200.23.18.0/23‬‬
‫ماسک زیر شبکه‬
ISP's block
11001000 00010111 00010000 00000000 200.23.16.0/20
ISP’s subnet mask 11111111 11111111 11110000 00000000 255.255.240.0
Organization 0
Organization 1
Organization 2
...
Organization 7
Or’s subnet mask
11001000 00010111 00010000 00000000 200.23.16.0/23
11001000 00010111 00010010 00000000 200.23.18.0/23
11001000 00010111 00010100 00000000 200.23.20.0/23
…..
….
….
11001000 00010111 00011110 00000000 200.23.30.0/23
11111111 11111111 11111110 00000000 255.255.254.0
Network part of an IP address= subnet mask & IP address
35
‫مثال ‪CIDR‬‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫یک کالس مجموعه ‪ IP‬فاقد کالس بصورت ‪ 200.32.108.0 /22‬درنظر گرفته شده‬
‫است‬
‫میخواهیم مجموعه فوق را بین چهار بخش زیر شبکه سازی (‪ )Subnetting‬کنیم‬
‫آدرس شبکه هر یک از بخشها را محاسبه کنید‪.‬‬
‫‪100 computers‬‬
‫‪300 computers‬‬
‫‪100 computers‬‬
‫‪100 computers‬‬
‫‪36‬‬
‫مثال ‪( CIDR‬سواالت)‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫‪37‬‬
‫باتوجه به آدرس بدون کالس ‪200.32.108.0 /22‬‬
‫‪‬‬
‫چه تعداد شبکه کالس ‪ C‬در شبکه فوق وجود دارد؟ ‪ 4‬کالس‬
‫‪‬‬
‫تعداد کل میزبانهایی که میتوان تعریف نمود؟ ‪ 4x254‬آدرس‬
‫‪‬‬
‫بزگترین شبکه دارای چند میزبان است؟ ‪ 300‬آدرس‬
‫باید چهار شبکه با ابعاد ‪ 100 ،100 ،300‬و ‪ 100‬کالینت با چهار لینک ‪WAN‬‬
‫برای هر شبکه طراحی کنیم‪.‬‬
‫ممکن است در برخی از مسائل نیاز به طراحی ‪ uplink‬ها نباشد‬
200.32.108.0 /22
0
0
200.32. 110.0/24
200.32.108.0/24
200.32. 110.0
255
255
0
0
200.32. 109.0/24
200.32. 111.0/24
200.32. 111.0
255255
255
38
0
0
200.32. 110.0/24
200.32.108.0 /23
0
300 hosts
200.32.108.0/24
200.32. 110.0
255
255
0
200.32. 109.0/24
200.32. 111.0/24
200.32. 111.0
255
255
39
0
255
127
200.32.110.128 /25
100 hosts
200.32.110.0 /25
200.32.108.0 /23
300 hosts
200.32.108.0/24
0
128
100 hosts
0
200.32. 110.0/24
255
0
200.32. 109.0/24
200.32. 111.0/24
255
255
40
0
200.32. 109.0
255
255
0
0
127
127
200.32.110.128 /25
100 hosts
200.32.110.0 /25
100 hosts
200.32.108.0
200.32.111.0 /25
100 hosts
200.32.108.0 /23
300 hosts
0
128
200.32. 110.0
128
255
200.32. 111.0
255
41
0
127
0
255
200.32. 110.0
255
128
200.32.111.0 /25
200.32. 109.0
200.32.110.128 /25
100 hosts
200.32.110.0 /25
255
100 hosts
200.32.108.0 /23
300 hosts
200.32.108.0
0
128
100 hosts
0
191
192
224
200.32. 111.0
239
240 248
243 251
244 252
127
223 247 255
WAN
links /30
42
)‫ (نتیجه‬CIDR ‫مثال‬
200.32.108.0 /22 ‫داده شده‬CIDR ‫آدرس‬
200.32.111.0 /25
1/2 Class C
100 computers
200.32.111.240 /30
300 computers
200.32.108.0 /23
2 Class C’s
200.32.111.248 /30
200.32.111.244 /30
100 computers
100 computers
200.32.110.128 /25
1/2 Class C
200.32.110.0 /25
1/2 Class C
43
‫مثال ‪CIDR‬‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫یک شبکه کالس ‪Major ،C‬داریم به شکل ‪ subnet mask 192.168.1.0/24‬در‬
‫این شبکه ‪ 255.255.255.0‬است‪ .‬میخواهیم این مجموعه را به ‪ 5‬شبکه که در هر یک‬
‫‪ 30‬میزبان وجود دارد تقسیم کنیم ‪.‬‬
‫جواب ‪:‬‬
‫ما ابتدا باید ببینیم چند بیت برای میزبانها الزم است‪ .‬برای ‪ 30‬میزبان باید ‪ 5‬بیت داشته باشیم‪.‬‬
‫در اینصورت ماسک شبکه جدید بصورت زیر است‬
‫‪11000000.10101000.00000001.00000000 = Network‬‬
‫‪11111111.11111111.11111111.00000000 = Default Subnet Mask = /24‬‬
‫‪11111111.11111111.11111111.11100000 = New Subnet Mask = /27‬‬
‫‪‬‬
‫‪44‬‬
‫با استفاده از ‪ 3‬بیت اضافه شده به بخش شبکه میتوان = ‪ 8‬زیر شبکه ایجاد نمود‪.‬‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫آدرس ‪ 8‬زیر شبکه بصورت زیر است‪:‬‬
‫)‪192.168.1.0 /27 (zero subnet‬‬
‫‪192.168.1.32 /27‬‬
‫‪192.168.1.64 /27‬‬
‫‪192.168.1.96 /27‬‬
‫‪192.168.1.128 /27‬‬
‫‪192.168.1.160 /27‬‬
‫‪192.168.1.192 /27‬‬
‫‪‬‬
‫‪45‬‬
‫هر چند به ‪ 5‬شبکه احتیاج داشتیم ولی میتوان سه مورد دیگر را برای‬
‫توسعه بعدی در شبکه رزرو کرد‪.‬‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫مثال‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫‪46‬‬
‫شبکه اي داريم بصورت ‪ ۱۳۵,۴۱,۰,۰‬در کالس ‪ ،B‬مي خواهيم شرايط‬
‫زير را داشته باشد‪:‬‬
‫یک ‪ Subnet‬با حداکثر ‪Host ۳۲۰۰۰‬‬
‫پانزده ‪ Subnet‬با حداکثر ‪Host ۲۰۰۰‬‬
‫هشت ‪ Subnet‬با حداکثر ‪Host 250‬‬
‫تجمیع ‪ IP‬یا ابر شبکه بندی (‪)Supernetting‬‬
‫‪‬‬
‫‪‬‬
‫‪47‬‬
‫در مقابل خرد کردن ‪ IP‬که با عنوان زیر شبکه سازی‬
‫)‪ (subnetting‬داشتیم و در آن مجموعه ‪ IP‬اختصاص یافته را‬
‫خرد میکردیم‪ .‬میتوان برای ایجاد شبکه هایی که به تعداد ‪ IP‬بیش از‬
‫یک کالس ‪ C‬احتیاج دارند از ‪ Supernetting‬استفاده کرد‪.‬‬
‫در یک سگمنت از کالس ‪ ،C‬حداکثر ‪ 254‬میزبان میتوانند قرار گیرند‪ .‬اگر‬
‫در شبکه ما نیازمند ‪ 500‬آدرس باشیم میتوانیم از دو کالس ‪ C‬پشت سر‬
‫هم استفاده کرد‪ .‬به این کار (‪ )Supernetting‬میگویند‬
‫مثال ‪)1( Supernetting‬‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫‪‬‬
‫‪48‬‬
‫شرکت ‪ xyz‬نیاز دارد تا ‪ 400‬میزبان را آدرس دهی کند‪.‬‬
‫‪ ISP‬شرکت دو مجموعه ‪ IP‬کالس ‪ C‬متوالی را به این شرکت اختصاص میدهد‪:‬‬
‫‪207.21.54.0/24 ‬‬
‫‪207.21.55.0/24 ‬‬
‫شرکت ‪ xyz‬میتواند دو کالس فوق را در هم تجمیع کرده و از آدرس ‪207.21.54.0 /23‬‬
‫برای آدرس دهی شبکه استفاده نمایید‬
‫‪207.21.54.0 /23‬‬
‫‪207.21.54.0/24 ‬‬
‫‪207.21.55.0/24 ‬‬
‫‪23 bits in common‬‬
)2( Supernetting ‫مثال‬
49
‫‪ CIDR‬و ‪ Provider‬ها‬
‫روتر ها باتوجه به آدرسهایی که به آنها متصلند برای‬
‫تبلیغ‪ ،‬از تجمیع آدرس ها استفاده میکنند‬
‫‪: a.b.c.d/x‬آدرس تبلیغی‬
‫‪50‬‬
TCP/IP protocol stack
mime
ftp http smtp telnet
snmp tftp
Transmission Control Pr. (TCP)
…
igm
p
icmp
rtp dns …
User Datagram Pr. (UDP)
rip
ospf
bgp
arp
rarp
…
Internet Protocol (IP)
Ethernet, Wireless, token ring, FDDI, ATM, Frame relay, SNA, X25
51