از جمله مباحث اصلی مطرح در بخش آموزش شبکه و بخصوص در +Network  ، آموزش مباحث مربوط به شناسه های IP و به اصطلاح Subnetting  می باشد. با یادگیری کامل این بحث در اداره شبکه موفقیت بسیار چشمگیری خواهیم داشت و بدون اطلاع کافی از آن، احتمال ایجاد شبکه ای با اختلال و ترافیک و امنیت بالا، زیاد می باشد.

فهرست مطالب موجود: IP از منظر مقدار دسیمال و باینری،  طرز تبدیل باینری و دسیمال به یکدیگر، کلاس های استاندارد IP Address V4، ساب نت Subnet Mask چیست، طرز بدست آوردن IP شبکه، تقسیم یک شبکه به IP های مجزا، IP‌های Valid و Public و Private و Invalid، مفهوم CIDR،

در انتها فایل PDF‌ این مطالب کنجانده شده است

فایل های آموزشی پاورپوینت اضافه شد (1392/05/16)

 

IP Address چیست؟

 IP Address یک شناسه منحصر بفرد برای بدست آوردن محل منطقی یک NODE در شبکه بمنظور ارسالPACKETها میباشد. این آدرس در ورژن چهار متشکل از 32 بیت است که در چهار جزء 8 بیتی دسته بندی میشود که اصطلاحا به هر بخش یک Octed گفته می شود و هر جزء آن با یک نقطه (DOT) از هم جدا میشود. به عنوان مثال: 

11000000.

10101000.

01100100.

00000001

مقدار باینری یک IP

192

168

100

1

مقدار دهدهی و دسیال معادل IP

192.168.100.1   

IP

 

 این حالت نمایانگر شکل باینری یک IP Address میباشد که برای تبدیل و استفاده آن به حالت دسیمال از ارزش گذاری هریک از بیت ها بشکل زیر عمل میکنیم:

 

1

1

1

1

1

1

1

1

مقدار ۰ یا ۱ در هر بیت

8

7

6

5

4

3

2

1

جایگاه بیت

128

64

32

16

8

4

2

1

مقدار دسیمال و دهدهی بیت: ۲ بتوان جایگاه بیت

 

که در مثال بالا برای تبدیل آن به حالت دسیمال بشکل زیر عمل میکنبم:

Binary

Binary <=> Decimal

Decimal

11000000

1*128+1*64+0*32+0*16+0*8+0*4+0*2+0*1

192

10101000

1*128+0*64+1*32+0*16+1*8+0*4+0*2+0*1

168

01100100

0*128+1*64+1*32+0*16+0*8+1*4+0*2+0*1

100

00000001

0*128+0*64+0*32+0*16+0*8+0*4+0*2+1*1

1

 

  


کلاس های استاندارد IP Address V4

 IP Address v4 در 5 کلاس A, B, C, D, E که هریک از آنها شامل دو قسمت شناسه ارتباط NET ID و شناسه کاربر    Host ID و یا Node ID      میباشد. برای شناسائی آن ها از جدول زیر استفاده مینمائیم:

 

کلاس های اپی شبکه

 

Class 1st Octet Decimal Range 1st Octet High Order Bits

Network/Host ID

(N=Network, H=Host)

Default Subnet Mask Number of Networks

Hosts per Network

(Usable Addresses)

A 1 – 126* 0 N.H.H.H 255.0.0.0

126

(27 – 2)

16,777,214 (224 – 2)
B 128 – 191 10 N.N.H.H 255.255.0.0

16,382

(214 – 2)

65,534

(216 – 2)

C 192 – 223 110 N.N.N.H 255.255.255.0 2,097,150 (221 – 2)

254

(28 – 2)

D 224 – 239 1110 Reserved for Multicasting
E 240 – 254 1111 Experimental; used for research

در جدول فوق برای آدرس IP کلاس A میبایست جزء اول عددی مابین 1 تا 126 را دارا بوده، کلاس B میبایست جزء اول عددی مابین 128 تا 191 را دارا بوده، کلاس C میبایست جزء اول عددی مابین 192 تا 223 را دارا بوده، کلاس D میبایست جزء اول عددی مابین 224 تا 239 را دارا بوده و کلاس E میبایست جزء اول عددی مابین 240 تا 254 را دارا باشد.

در اصل در کلاس A بخش Octed اول NetID می باشد که بیت اول آن رزرو و مقدار 0 را داراست و لذا 7 بیت بعدی تا حداکثر عدد 127 را پوشش می دهند و در کلاس B‌که دو octed جزء NetID‌می باشندو دو بیت اول Octed اول ذخیره بصورت   1 0 می باشد و لذا از 128 تا 191 را شامل می گردد و بهمین ترتیب برای کلاس C. متذکر می شویم که کلاس D اصطلاحا برای Multicast و کلاس E نیز Unused  می باشد و لذا عملا تنها از 3 کلاس اول استفاده می گردد.

*  نکته‌ای که باید به آن اشاره کرد این است که عدد 127 به عنوان شناسه شبکه، برای استفاده در شبکه محلی (Localhost) رزرو شده است. پس از 127.0.0.0 تا 127.255.255.255 را به جز localhost نمی‌توان استفاده کرد. (اصطلاحا این رنج IP‌برای LOOPBACK‌می باشد)

 


Subnet Mask چیست؟

Subnetmask یک عدد 32 بیتی میباشد که همواره همراه IP Address برای مشخص کردن NET ID آن IP بکار میرود. که بصورت استاندارد Subnet mask های کلاس های IP Address بصورت زیر است:

Class A

11111111.

00000000.

00000000.

00000000

:255.0.0.0

Class B

11111111.

11111111.

00000000.

00000000

:255.255.0.0

Class C

11111111.

11111111.

11111111.

00000000

:255.255.255.0

از انطباق Subnet mask بر روی IP Address  شناسه ارتباط NET ID در آدرس مشخص میشود مثال:

IP Address

172.16.10.1

:10101100.

00010000.

00001010.

00000001

SubnetMask

255.255.0.0

:11111111.

11111111.

00000000.

00000000

|_____NET

ID_____|

|____HOS

TID____|

 

 

IP Subnetting چگونه؟

در این حالت با استفاده از یکی از آدرس های کلاس A یا B یا C ما میتوانیم به بیش از یک NET ID دست پیدا کرده و در همان آدرس با طبقه بندی بیش از یک Subnet ارتباطات را از هم جدا کنیم، به عنوان مثال شما پس از استفاده از Net Id 192.168.100.0 در کلاس C فقط میتوانید در یک طبقه بندی بین آدرس های 192.168.100.1 ~ 192.168.100.254 آدرس دهی کرده و ارتباطات مسقیم را پیاده سازی نمائید. حال انکه فرض کنید شما میخواهید با خرد کردن رنج آدرس های فوق از ارتباط بین دو نود 192.168.100.130 و 192.168.100.10 به صورت مستقیم جلوگیری کرده و با عبور ترافیک آنها به صورت غیر مستقیم با استفاده از روتر اطلاعات جابجا شده بین آنها را کنترل نمائید برای رسیدن به هدف بالا میبایست با استفاده از IP Subnetting یک رنج آدرس کلاس C را به دوطبقه بندی تقسیم کرده و ارتباط مستقیم بین طبقه بندی اول و دوم را قطع نمائید. برای شروع عملیات subnetting ما تعدادی بیت یک به استاندارد Subnet mask اضافه مینمائیم مثال:

255.255.0.0

11111111.11111111.00000000.00000000

255.255.248.0

11111111.11111111.11111000.00000000

-----------------------|YYYYY|---------------

Y=Subnetting ID

 مثال IP Subnetting

شبکه آدرس دهی بر اساس آدرس 192.168.100.0 را به دو شبکه منطقی تقسیم کرده و رنج هریک را محاسبه نمائید.

با استفاده از فرمول زیر تعداد بیت هائی که میبایست به subnet mask اضافه کرد را بدست میآوریم:

2^ (#subnetting bit)>=#subnet (تعداد شبکه مورد نیاز در تقسیم)

2^y>=2 => y=1     تعداد بیت برای Subnetting ID

سطر

 

 

 

 

 

 

1

IP Address

192.

168.

100.

0

2

Default Subnet Mask (Decimal)

255.

255.

255.

0

3

Default Subnet Mask:Binary

11111111.

11111111.

11111111.

00000000

 = 255.255.255.0 

4

Subnetted Subnet Mask:Binary

11111111.

11111111.

11111111.

10000000 

=255.255.255.128

5

Default IP NetID

11000000.

10101000.

01100100.

6

Subnetted IP NetID

11000000.

10101000.

01100100.

V

 

V=0 or 1

7

NetID Range01

11000000.

10101000.

01100100.

0

8

NetID Range02

11000000.

10101000.

01100100.

1

 

9

Range01

11000000.

10101000.

01100100.

00000000

192.168.100.0

10

11000000.

10101000.

01100100.

01111111

192.168.100.127

11

Range02

11000000.

10101000.

01100100.

10000000

192.168.100.128

12

11000000.

10101000.

01100100.

11111111

192.168.100.255


در نتیجه از  192.168.100.0/24  به 192.168.100.0/25 و 192.168.100.128/25  تبدیل می شود ﴿عدد /24 و /25 ، CIDR نام دارد (در ادامه بدان می پردازیم) و نشان دهنده تعداد بیت های استفاده شده در Subnet می باشد /25 یعنی 3 تا 8 تا که همان 3 octed‌اول است و یک بیت هم از octed آخر که می شود 25 که در مقدار دهدهی subnet‌جای همه یک می گذاریم)

در اصل مدل IP فوق یعنی 192.168.100.0 (سطر اول فوق) از نوع کلاس C می باشدکه دارای Subnet پیش فرض 255.255.255.0 است (سطر دوم) لذا از سه قسمت اول subnet 24 بیت (3 تا 8 بیت) و چون به دو قسمت قرار است تقسیم گردد  طبق فرمول 2^y>=2 => y=1    یک بیت دیگر نیز نیاز است که این بیت از قسمت چهارم استفاه می شود که این یک بیت 25 ام نیز دارای ارزش یک می گردد لذا Subnet‌ مورد نیاز برابر می گردد با 255.255.255.128  (سطر سوم) (بخش آخر  10000000معادل است با  1*128+0*64+0*32+0*16+0*8+0*4+0*2+0*1 = 128- اگر دو بیت بود می شد 11000000 که معادل است با 128+64=192 و الی آخر)  -

در مر حله بعد و اخر رنج  IP های مورد نیاز با استفاده از تعداد بیت متغیر مورد نیاز و بر اساس IP اصلی بدست می آید که مثلا در اینجا که یک بیت اول از Octed‌  آخر آن نیز (همان یک بیت که گفته شد برای تغییرات بدان نیازمندیم) بین 0 و 1 متغیر است (اگر دو بیت نیاز بود آن دو بیت بین 0 و 1 تغییر می کند که حالات 00 – 01 – 10 – 11 ‌ را شامل می گردد.) پس رنج IP‌می شد سطر های 7 یا 8 و حد اقل و حداکثر هرکدام نیز با قرار دادن تمام بیت ها با ارزش 0 و تمام بیت های مابقی با ارزش 1 بدست می آید (سطر9  و 10 برای رنج اول و حالت  0xxxxxxx از Octed آخر  و  سطر 11 و 12 برای حالت 1xxxxxxx از octed‌آخر).

باید توجه داشت که اولین آدرس نشانی شبکه و آخرین نشانی همه پخشی (Broadcast) شبکه مورد نظر است که با تر کیب منطقی حالت باینری هر آدرس  شبکه با subnet‌ مربوط ان بدست می آید.

IP Address

192.

168.

100.

0

یکی از IP های شبکه اصلی

Default Subnet Mask (Decimal)

255.

255.

255.

0

IP Address (Binary

11000000.

10101000.

01100100.

00000000

 

Default Subnet Mask (Binary)

11111111.

11111111.

11111111.

00000000

 

IP AND Subnet

11000000.

10101000.

01100100.

00000000

نتیجه:   NET IP Address=192.168.100.0     ,          Broadcast IP Address=192.168.100.255

شبکه تفکیک شده اول

IP Address 2  (Subnet 1)

192.

168.

100.

50

یکی از IP های شبکه اول

Default Subnet Mask (Decimal)

255.

255.

255.

128

IP Address (Binary

11000000.

10101000.

01100100.

00110010

Default Subnet Mask (Binary)

11111111.

11111111.

11111111.

10000000

IP AND Subnet

11000000.

10101000.

01100100.

00000000

 

نتیجه:   NET IP Address=192.168.100.0     ,          Broadcast IP Address=192.168.100.127

IP Address 2  (Subnet 1)

192.

168.

100.

170

یکی از IP های شبکه دوم

Default Subnet Mask (Decimal)

255.

255.

255.

128

 

IP Address (Binary

11000000.

10101000.

01100100.

10101010

 

Default Subnet Mask (Binary)

11111111.

11111111.

11111111.

10000000

 

IP AND Subnet

11000000.

10101000.

01100100.

10000000

نتیجه:  NET IP Address=192.168.100.128     ,          Broadcast IP Address=192.168.100.255

1 AND 0 = 0    /   1 AND 1 =1      /     0 AND 0= 0      /   0 AND 1=0

تعریف اعمال منطقی AND

1 OR 0 = 1     /    1 OR 1 =1        /     0 OR 0= 0       /    0 OR 1=1

تعریف اعمال منطقی OR

1 XOR 0 = 1   /    1 XOR 1 =0      /     0 XOR 0= 0     /    0 XOR 1=1

تعریف اعمال منطقی XOR

                                                                                                                                                        

مثال دوم : تقسیم یک شبکه بفرم کلی 192.168.226.0/24 به 6 شبکه مستقل که یکدیگر را Ping‌نکنند (همدیگر را نبینند)

 در این مورد با توجه به اینکه 2^3>6 است لذا به 3 بیت اضافی نیازمندیم و چون کلاس آدرس اصلی از نوع C‌است لذا subnet‌اصلی 255.255.255.0‌می باشدپس subnet جدید عبارتست از :

11111111.11111111.11111111.11100000 =      255.255.255.224 (128+64+32=224)

لذا رنج IP‌های جدید بصورت زیر بدست می آید

با 3 بیت می توان 8 حالت بر اساس 0 و  1 داشت 000-001-010-100-011-101-110-111  لذا بر اساس IP‌ داده شده داریم:

11000000.10101000.11100010.00000000  =192.168.226.0     IP اصلی

11000000.10101000.11100010.00000000 =192.168.226.0/27        (192.168.226.0 ---192.168.226.31 )

11000000.10101000.11100010.00100000 =192.168.226.32/27      (192.168.226.32 ---192.168.226.63)

11000000.10101000.11100010.01000000 =192.168.226.64/27      (192.168.226.64 ---192.168.226.95)

11000000.10101000.11100010.01100000 =192.168.226.96/27      (192.168.226.96 ---192.168.226.127)

11000000.10101000.11100010.10000000 =192.168.226.128/27    (192.168.226.128 ---192.168.226.159)

11000000.10101000.11100010.10100000 =192.168.226.160/27    (192.168.226.160 ---192.168.226.191)

11000000.10101000.11100010.11000000 =192.168.226.192/27    (192.168.226.192 ---192.168.226.223)

11000000.10101000.11100010.11100000 =192.168.226.224/27    (192.168.226.224 ---192.168.226.255)

 

که 6 قسمت اول بکار این مثال می آید و دوتای آخر اضافی می ماند.

 لذا بعنوان مثال دیگر داریم:

  

network address 192.168.10.0/26 192.168.10.64/26 192.168.10.128/26 192.168.10.192/26
network address 192.168.10.0 192.168.10.64 192.168.10.128 192.168.10.192

Valid IP

192.168.10.1 192.168.10.65 192.168.10.129  -----------
192.168.10.2 192.168.10.66 192.168.10.130

ادامه

ادامه

ادامه

ادامه

ادامه

ادامه

192.168.10.62 192.168.10.126 192.168.10.190
broad cast address 192.168.10.63 192.168.10.127 192.168.10.191  
customize subnet mask 255.255.255.192 255.255.255.192 255.255.255.192 255.255.255.192


(CIDR(Classless Inter-Domain Routing  

اصطلاح دیگری که شما باید با آن آشنا بشوید CIDR است این بطور اساسی یک روش است که ISPها (Internet Service Providers) برای تخصیص دادن یک مقدار از آدرس به یک کمپانی و یا مشتری استفاده میکنند
زمانی که شما یک دسته آدرس را از یک ISP دریافت میکنید چیزی شبیه به این 192.168.10.32/28 است.این به شما subnet mask شما را میگوید .نشان slash به معنای این است که چه مقدار bits روشن است 
بدیهی است که بیشترین32/ است زیرا یک byte است 8 bit پس 32=8*4 
اما بخاطر داشته باشید که بیشترین subnet mask میتواند باشد 30/ زیرا شما باید حداقل دو bits برای host bits نگه دارید 
بطور مثال در کلاس A ,defult subnet mask 255.0.0.0 است این بدین معنی است که اولین byte از subnet mask همگی یک است (11111111) وقتی استناد به علامت slash کنیم بطور مسلم 255.0.0.0 است 8/ زیرا این هشت bits دارد 
همچنین در کلاس (B ,defulf subnet mask 255.255.0.0(1111111.1111111.0.0 است و همجنین میتوانیم تعریف کنیم 16/ زیرا 16 بیت یک است 
توجه داشته باشید که در روترهای سیسکو از فرمت slash استفاده نمیتوانیم بکنیم 

Prefix Format Decimal Available Host Addresses
/8 255.0.0.0 16777214
/9 255.128.0.0 8388606
/10 255.192.0.0 4194302
/11 255.224.0.0 2097150
/12 255.240.0.0 1048574
/13 255.248.0.0 524286
/14 255.252.0.0 262142
/15 255.254.0.0 131070
/16 255.255.0.0 65534
/17 255.255.128.0 32766
/18 255.255.192.0 16382
/19 255.255.224.0 8190
/20 255.255.240.0 4094
/21 255.255.248.0 2046
/22 255.255.252.0 1022
/23 255.255.254.0 510
/24 255.255.255.0 254
/25 255.255.255.128 126
/26 255.255.255.192 62
/27 255.255.255.224 30
/28 255.255.255.240 14
/29 255.255.255.248 6
/30 255.255.255.252       2


IPهای Valid و  Invalid. 

 IP های Valid بر خلاف آنچه تصور می شود معتبر در شبکه مورد نظر می باشند و ممکن است در شبکه دومی معتبر نباشد  مثلا دو شبکه داشته باشیم که کلاینت A در شبکه اول دارای IP بصورت 192.168.226.1 باشد و دراین IP‌تنها در این شبکه معتبر است و در شبکه دومی شاید این IP به کلاینت دیگری متصل باشد.

IPهای  Public و Private  

IP های Public بر خلاف Valid ‌در کل اینترنت معتبر است مثل IP های سایت های گوگل و .. که در هر جای دنیا ،آن IP به سایت گوگل بر می گردد. این دسته از IP ها در شرکت (IANA(Internet Assigned Numbers Authority  ثبت  می باشند. Private address  برای تعیین شبکه های محلی استفاده میشود و برای استفاده از آنها احتیاج به هیچ مجوزی نیست.

چگونه میتوان تشخیص داد ای پی عمومی است یا خصوصی ؟ 
برای IP های خصوصی یک رنج موجود میباشد اگر IP در آن رنج بود خصوصی است در غیر اینصورت IP عمومی است

 

PRIVATE  IP  ADDRESS

IP Class Host IP from Host IP To
Class A 10.0.0.0 10.255.255.255
Class B 172.16.0.0 172.31.255.255
Class C 192.168.0.0 192.168.255.255

 

 

Some Public  IP  ADDRESS

site Public  IP 
google.com 46.61.155.123
www.yahoo.com                   98.139.183.24

با برخی سایت ها مثل

 http://www.whatsmyip.org/whois-dns-lookup 

می توانید این IP‌ها را بدست اورید

 

 



Default gateway 

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

در مورد اتصال به اینترنت در یک شبکه اعم از اتصال با میکروتیک، مودم ADSL‌و... بدلیل اینکه ان Device محلی برای عبور از شبکه و رفتن به شبکه دیگر (در اینجا شبکه اینترنت) می باشد لازم است آدرس IP روتر یا مودم بعنوان gateway کلاینت های نیازمند اتصال به اینترنت داده شود 

لذا این آدرس معمولا دو کاربرد اصلی دارد :

1- آدرس کامپیوتری یا device ی  که اینترنت را برای کلاینت Share کرده است؛هنگامی که یک کامپیوتر در شبکه به اینترنت وصل است و باید اینترنت را در اختیار بقیه قرار دهد چنین حالتی پیش می آید. البته همیشه به این سادگی و فقط با تنظیم Gateway کارها انجام نمی شود اما این یکی از ساده ترین حالت هاست. 

2- آدرس پورت روتر در سمتی از سگمنت که کلاینت در آن قرار دارد تا بدین وسیله به روتر وصل شود و در نتیجه با سگمنت های دیگر ارتباط برقرار کند. شکل زیر را ببینید. در این شکل برای برقراری ارتباط بین کامیپوترهای دو طرف، سیستم های سمت چپ باید آدرس 192.168.100.150 یعنی پورت روتر سمت خود و سیستم های سمت راست هم به همین ترتیب آدرس 192.168.200.170 را به عنوان Default Gateway تنظیم کنند.

یک مثال دیگر:

 یک شبکه داریم شامل دو قسمت IT و مالی، فنآوری اطلاعات با 50 سیستم و مالی با 45 سیستم در شبکه، بهترین سناریو برای ایجاد شبکه های مستقل که یکدیگر را ping نکنند چیست.


در روش اول مثل قبل  چون  2=1^2  است پس برای 2 زیر شبکه مستقل، نیاز به استفاده از 1 بیت می باشد لذا میتوان مثلا بصورت زیر نهایی کرد:  192.168.0.0/25  با ساب نت  255.255.255.128  هر زیرشبکه شامل 128 سیستم

در روش دوم بخاطر اینکه شبکه هایی با حداقل Broadcast داشته باشیم و در ضمن بهتر است شبکه ای با حداقل کلاینت برای ما باشد تا حداقل IP خالی برای نفوذ باقی بماند لذا برای 50 سیستم بهتر است از 2 بیت استفاده گردد تا بفرم 192.168.0.0/26 با 255.255.255.192 و شامل زیر شبکه هایی با حداکثر64 سیستم گردد (64  اولین توان 2 می باشد که تعداد حداکثری IP مورد نیاز را در زیرشبکه ها پوشش می دهد)

و سناریوی دوم از لحاظ امنیتی بهتر است


ویدئو آموزش Subnetting:

منبع: http://www.aparat.com/v/DxSXe


دریافت فایل:




منابع: مهندس حسینی مدیریت راهبرد دانش همدان و سایت http://www.tadrisi.com  و تجربیات شخصی بنده