စဥ္းစားမႈမပါဘဲ သင္ယူေသာ ပညာသည္ အခ်ည္းႏွီးျဖစ္၍ ၊ ပညာမရွိဘဲ စဥ္းစားျခင္းကား အလြန္ အႏၱရာယ္ၾကီးေပသည္။ (ကြန္ျဖဴးရွပ္)

Saturday, October 1, 2011

IPv4 Subnetting အေၾကာင္းသိေကာင္းစရာ

RFF: WinTun Hlaing
IP Address မွာယေန့လက္ရွိ Ipv4 ရယ္၊IPv6 ရယ္ဆိုပီးေတာ့ရွိပါတယ္။အခု Ipv4 အေျကာင္းကို
ပဲအဓိကေရးပါ့မယ္။IPv4 ကေတာ့ Address Space 32-bitsပါ။အဲ့ဒီ32-bits ကိုေလးပိုင္းခြဲပီးတစ္
ပုိင္းမွာ8-bits စီအလုပ္လုပ္ပါတယ္။ေနာက္ပီး IP Address ေတြကို Network ေပာ္မူတည္ပီးClass
ေတြခြဲသံုးပါတယ္။Class ေတြကေတာ့A,B,C,D,E ေပါ့။ကြ်န္ေတာ္တို့ကIP Address တစ္ခုကိုျကည့္
ရံုနဲ့ ဘယ္ Class မွာပါတယ္ဆိုတာကိုတန္းသိနုိင္ပါတယ္။
 Class A
0 to 126 အထိျဖစ္ပါတယ္။အေသးစိတ္ေပးရင္ 0.0.0.0 ကေန 126.255.255.255 အထိေပါ့။
Class B
128 to 191 အထိျဖစ္ပါတယ္။အေသးစိတ္ဆိုရင္ေတာ့ 128.0.0.0 ကေန 191.255.255.255
အထိျဖစ္ပါတယ္။
Class C
192 to 223 အထိျဖစ္ပါတယ္။အေသးစိတ္ဆိုရင္ေတာ့ 192.0.0.0 ကေန 223.255.255.255
အထိျဖစ္ပါတယ္။
Class D
224 to 239 အထိျဖစ္ပါတယ္။အေသးစိတ္ဆိုရင္ေတာ့ 224.0.0.0 ကေန 239.255.255.255
အထိျဖစ္ပါတယ္။
Class E
240 to 255 အထိျဖစ္ပါတယ္။အေသးစိတ္ဆိုရင္ေတာ့ 240.0.0.0 ကေန 255.255.255.255
အထိျဖစ္ပါတယ္။
တစ္ခုသတိထားမိမလားမသိဖူး။အထက္က Address ေတြထဲမွာ 127 ဆိုတာမပါဖူးေလ။အဲ့ဒါကlookbuck Address ပါ။ဒါေျကာင့္ဘာconnection မွမရွိတဲ့အခ်ိန္မွာ nslookup ဆိုတဲ့ command
ရုိက္ျကည့္ရင္ 127.0.0.1 ဆိုတာေတြ့ရမယ္ေလ။IPv6 မွာေတာ့ ::1 က lookbuck address ေပါ့။
အထက္ကClass ေတြအနက္မွာမွကြ်န္ေတာ္တို့A,B,C ရယ္ကိုပဲသံုးပါမယ္။Class D ကေတာ့
multicast ျဖစ္ပီး၊ Class Eကေတာ့ Research အတြက္ပါ။အဲ့ေတာ့အဲ့နွစ္ခုကိုမသံုးဖူးလို့ပဲမွတ္ပါ။
ေအာက္မွာ Class A,B,C ရဲ့ Network Address နဲ့ Host Address ေတြကိုေသးစိတ္တြက္ျပပါမယ္။

 ClassA : Network . Hosts . Hosts . Hosts
                  8-bits    8-bits   8-bits   8-bits
ClassB : Networks. Networks . Hosts . Hosts
                  8-bits         8-bits      8-bits    8-bits
ClassC: Networks.Networks.Networks.Hosts
                  8-bits      8-bits         8-bits     8-bits

ClassA မွာဆိုရင္ေရွ့ဆံုး 8-bits က Network Address ျဖစ္ပီးေနာက္ 24-bits ကေတာ့ hosts
Address ပါ။ကုိယ့္ရဲ့ Network မွာ Host ေတြအမ်ားျကီးသံုးခ်င္ရင္ClassA ကိုယူေပါ့။တိတိက်
က်ဆိုရင္ ClassA က Hosts ေပါင္း16 သန္းေက်ာ္သံုးလို့ရပါတယ္။
ClassB မွာဆိုရင္ေရွ့ဆံုး 16-bits က Network Address ျဖစ္ပီးေနာက္16-bits ကေတာ့ hosts
Address ပါ။ကိုယ့္Network မွာ Host ေတြက254 လံုးထက္ေက်ာ္မယ္ClassA ေလာက္လည္းမ
မ်ားဖူးဆိုရင္ေတာ့ Class B ကိုသံုးေပါ့။Class B က hosts ေပါင္းေျခာက္ေသာင္းခြဲေက်ာ္သံုးလို့ရပါ
တယ္။ClassC မွာေတာ့ ေရွ့24-bits က Network Address ျဖစ္ပီးေနာက္8-bits ကhosts Address ျဖစ္ပါတယ္။
သူကေတာ့host Address နည္းသြားတာေပါ့။Class C မွာhost ေပါင္း254လံုးသံုးလို့ရပါတယ္။
ကြ်န္ေတာ္တို့ကဘာေပာ္မွာInternet ခ်ိတ္ထားတဲ့ computer ေတြအမ်ားျကီးပါ။computer တစ္လံုး
ကို IP တစ္ခုေပးလိုက္မယ္ဆိုရင္ ရွိသမ်ွ IP ေလးေတြေျပာင္သြားပါလိမ့္မယ္။ဒါေျကာင့္IP Address
ေတြကို Private Address နဲ့ Public Address ဆိုပီးထပ္ခြဲပါတယ္။Public Address ဆိုတာက
Internet ေပာ္မွာသံုးတဲ့ Address ျဖစ္ပီးPrivate Address ကေတာ့မည္သူမဆိုလြပ္လပ္စြာသံုးစြဲ
နိုင္ပါတယ္။သံုးတဲ့ေနရာမွာလည္းကိုယ့္ Network ေပာ္မူတည္ပီး အဆင္ေျပတဲ့Class ကိုယူသံုးနိုင္
ပါတယ္။private IP အေသးစိတ္ကေတာ့.....

Class A : 10.0.0.0 to 10.255.255.255 (Netmask :255.0.0.0)
Class B : 172.16.0.0 to 172.35.255.255(Netmask:255.255.0.0)
Class C: 192.168.0.0 to 192.168.255.255(Netmask:255.255.255.0)
ျဖစ္ပါတယ္။က်ြ်န္ေတာ္တို့အေတြ့ရမ်ားတဲ့ 192.168 ဆိုတာကClassC ရဲ့ Private Address ပါ။
အခုက်ြန္ေတာ္ဒီမွာေရးခ်င္တာက CIDR နဲ့ပတ္သတ္တာျဖစ္လို့ က်န္တဲ့အပိုင္း ေတြကို ေက်ာ္သြားပါမယ္။CIDR အအဓိကရည္ရြယ္ခ်က္ကေတာ့ IP ေတြကိုအတတ္နိုင္ဆံုးေခ်ြတာခ်င္လို့
သံုးတာျဖစ္ပါတယ္။CIDR ကိုတြက္မယ္ဆိုရင္ Binary နဲ့ Decimal သေဘာတရားေလးေတြနည္း
နည္းေတာ့သိထားရပါမယ္။Class A,B,C ကိုBinar ပံုစံေလးေနဲ့ျကည့္မယ္ဆိုရင္..

ClassA : 11111111.00000000.00000000.00000000(255.0.0.0)
ClassB : 11111111.11111111.00000000.00000000(255.255.0.0)
ClassC : 11111111.11111111.11111111.00000000(255.255.255.0)
ျဖစ္ပါတယ္။ေအာက္မွာ Binar ကေန Decimal ေျပာင္းပံုေလးပါ။
11111111=(1*2^8)+(1*2^7)+(1*2^6)+(1*2^5)+(1*2^4)+(1*2^3)+(1*2^2)+
(1*2^1)+(1*2^0)
=128+64+32+16+8+4+2+1=255
အခုကြ်န္ေတာ္ Class C ကိုအဓိကထားပီးေရးပါ့မယ္။အသံုးမ်ားတယ္ Private IP လည္းျဖစ္တဲ့
192.168 ကိုပဲသံုးပါ့မယ္။
192.168.10.20(255.255.255.0) နဲ့ 192.168.20.20(255.255.255.0) အဲ့ဒီ Address နွစ္ခုကိုျကည့္ပါ။ClassC ျဖစ္ပီးnetmaskလည္းတူပါတယ္။ဒါေပမယ့္ Network ေတာ့မတူပါဖူး။တစ္ခုက 192.168.10.0 network မွာရွိေနပီး
ေနာက္တစ္ျဖစ္တဲ့ 192.168.20.20 ကေတာ့ 192.168.20.0 Network မွာရွိေနပါတယ္။အခုကြ်န္ေတာ္ CIDR ကို ClassC Addressနဲ့
တြက္ျပပါ့မယ္။Class C ရဲ့ subnet mask ကေတာ့ 255.255.255.0 ပါ။အေပာ္မွာေရးပီးပါပီ။အဲ့ဒါ
ကိုCIDR ပံုစံေလးေျပာင္းေရးျကည့္ခ်င္လို့ပါ။ဒါကClassC ကို CIDR နဲ့ေရးတာပါ။
                   255.255.255.0 /24
11111111.11111111.11111111.00000000(/24)
အခု ClassC Address တစ္ခုကိုယူပီး Practice တြက္ျကည့္ျကတာေပါ့..။တြက္တဲ့ေနရာမွာFormula
ေလးနဲ့တြက္ရင္ပိုအဆင္ေျပတာေပါ့။ClassC က 192 ကေနစတယ္ေနာ္။223မွာဆံုး
တယ္။ဒါေလးကိုေသခ်ာသတိထားေစခ်င္ပါတယ္။ေနာက္ပိုင္းအသံုး၀င္လာမွာမို့ပါ။

192.0.0.0 11000000.00000000.00000000.00000000
223.255.255.255 11011111.11111111.11111111.11111111
110nnnnn.nnnnnnnn.nnnnnnnn.hhhhhhhh
n=Networks
h=Hosts
ဟာ....။ရွုပ္ကုန္ပါပီ။ဘယ္က n ေတြ h ေတြပါလာတာပါလိမ့္။ဒါကဒီလိုရွိပါတယ္။Class C က192 ကစတယ္ေလ။239 မွာဆံုးတယ္။
192 = 11000000 ျဖစ္ပီးေတာ့ 239 = 11011111 ျဖစ္တယ္ေလ။အဲ့ေတာ့ ClassC အေနနဲ့ သံုးခုေျမာက္ bit
အထိအေသပဲျဖစ္ပီးေတာ့ေလးခုေျမာက္ကေနစပီး Variable ျဖစ္ပါတယ္။ျကိုက္တဲ့ ClassC Addressတစ္
ခုကိုယူပါ။binary ေျပာင္းျကည့္လိုက္ပါ။အဲ့ေဘာင္ထဲမွာပဲရွိေနပါလိမ့္မယ္။ေနာက္ပီး ClassC ကေနာက္ဆံုး
8-bits ကုိပဲhosts အတြက္ေနရာေပးပါတယ္။အမ်ားဆံု 8-bits ပဲရမယ္ေပါ့။သို့ေသာ္ CIDR သံုးပီးNetwork အေရတြက္နဲ့ Hosts အေရတြက္ကိုလိုသလိုျပင္လို့ရပါတယ္။ဒါေျကာင့္ClassC ရဲ့Addressတစ္
ခုကိုယူပီးတြက္ျကည့္ပါမယ္။

Address          Network   Hosts        Netmask           CIDR Notation
192.168.0.0         1            254       255.255.255.0           /24
192.168.0.0         2            126      255.255.255.128        /25
192.168.0.0         4            62        255.255.255.192        /26
192.168.0.0         8            30       255.255.255.224         /27
192.168.0.0         16          14       255.255.255.240         /28
192.168.0.0         32          6        255.255.255.248          /29
192.168.0.0         64          2        255.255.255.252          /30

Subnet Mask                             Binary Form                                                   CIDR
255.255.255.0                         11111111.11111111.11111111.00000000           /24
255.255.255.128                     11111111.11111111.11111111.10000000           /25
255.255.255.192                     11111111.11111111.11111111.11000000           /26
255.255.255.224                     11111111.11111111.11111111.11100000           /27
255.255.255.240                     11111111.11111111.11111111.11110000           /28
255.255.255.248                     11111111.11111111.11111111.11111000           /29
255.255.255.252                     11111111.11111111.11111111.11111100           /30

အဲ့ဒီမွာကြ်န္ေတာ္တို့ 192.168.0.0 Network ကိုယူပီး 255.255.255.0 Subnet ထားမယ္ဆိုပါဆို့။
ClassC ရဲ့ host portion ကေနာက္ဆံုး 8-bits ေလ။အဲ့ေတာ့0 ရွစ္လံုး ကေန 1 ရွစ္လံုးထိေပါ့။အဲ့
ေတာ့Address အေရတြက္ဟာ 00000000=0 ကေန 1111111=255 အထိယူလို့ရတာေပါ့။အဲ့ေတာ့ 192.168.0.0 ကေန
192.168.0.255 အထိေပါ့။Address ေပါင္း256 ခုရမွာေပါ့။ဒါေပမယ့္
Network Address 192.168.0.0 နဲ့ broadcast Address 192.168.0.255 ဖက္လုိက္ရင္စုစုေပါင္း
သံုးလို့ရတဲ့ hosts အေရတြက္ဟာ 254လံုးပဲရွိပါတယ္။ေပာ္ကဇယားေလးမွာျပန္ျကည့္ျကည့္ပါ။

ေနာက္တစ္ခါ 192.168.0.0 Network ကိုပဲ ေနာက္ 1-bit တိုးျကည့္လုိက္ပါမယ္။တိုးတယ္ဆိုတာ ွNetmask ကိုတိုးတာေနာ္။
အဲ့အခါမွာ Subnet mask က 255.255.255.128 ျဖစ္သြားပီး1စုစုေပါင္း
25 လံုးျဖစ္သြားလို့ CIDR နဲ့ေရးရင္ /25လို့ေရးပါမယ္။အဲ့ဒီအခါမွာ Networkအေရတြက္ကနွစ္ခုျဖစ္
သြားပီး host အတြက္ bit စုစုေပါင္း 7-bits ပဲရွိပါေတာ့တယ္။ဒါေျကာင့္အမ်ားဆံုးAddress အေရ တြက္ဟာ (2^7)=128
ျဖစ္ပါတယ္။ဒါက Network နဲ့ brocast မဖယ္ရေသးဖူးေနာ္။ဖယ္လိုက္ရင္
သံုးလို့ရမယ့္ host အေရတြက္က 126 ပဲရွိမွာေပါ့။အေပာ္ကဇယားေလးအတိုင္းပဲေလ။ထြက္လာမယ့္
Networkေတြက 192.168.0.0 to 192.168.0.127 ကတစ္ခု 192.168.0.128 to 192.168.0.255
ကတစ္ခုစုစုေပါင္းနွစ္ခုေလ။အဲမွာမွ 192.168.0.0 နဲ့ 192.168.0.128 ေတြက Network Address
ေတြျဖစ္ပီးေတာ့ 192.168.0.127နဲ့192.168.0.255 တို့ကေတာ့ broadcast ေတြပဲျဖစ္ပါတယ္။အဲ့
ေတာ့ Formula ေလးေတြထုတ္ျကည့္ရေအာင္..။

No of Networks=(2^no of subnet bits)
Number of host=2^(number of hosts bits)-2
No of subnet bits= ေရြ့လုိက္တဲ့ bits အေရတြက္
No of hosts bits=က်န္တဲ့ bits အေရတြက္ျဖစ္ပါသည္။ 0 or 1 ကို bit ဟုသံုးနွုန္းပါသည္။

ေနာက္တစ္ခုတြက္ျကည့္ရေအာင္ဗ်ာ။192.168.0.0 Network ကိုပဲ Default /24 ကေန /26 လုပ္
ျကည့္မယ္။အဲ့အခါ subnet က 255.255.255.0 ကေန 255.255.255.192 ျဖစ္သြားပီး network
အေရတြက္ကလည္း ေလးခုျဖစ္သြားပါလမ့္မယ္။Formula ထဲထည့္တြက္လည္းရတယ္။

No of Networks=(2^2)=4 Networks
Number of hosts=(2^6)-2=64-2=62 hosts(Network & Broadcast မပါ)

           Block Sizes                                      Broadcast                 Network            Netmask
192.168.0.0 to 192.168.0.63                      192.168.0.63              192.168.0.0         255.255.255.192
192.168.0.64 to 192.168.0.127                  192.168.0.127            192.168.0.64       255.255.255.192
192.168.0.128 to 192.168.0.191                192.168.0.191            192.168.0.128     255.255.255.192
192.168.0.192 to 192.168.0.225                192.168.0.255            192.168.0.192     255.255.255.192
ေနာက္တစ္ခုက Block Size ပါ။ဘယ္လိုတြက္လဲဆိုေတာ့ host အေရတြက္ကိုတြက္ရင္ရလာမယ့္
Address Size ကိုအစဥ္လိုက္ 1x,2x,3x စသည္ျဖင့္တြက္သြားေပါ့။eg,0,64,128,192စသည္

ျဖင့္တြက္သြားလုိ့ရပါတယ္။ေနာက္ 19.168.0.0 Network ကိုပဲ /24 ကေန /27 လုပ္ျကည့္ရင္လည္း
အေပာ္ကအတိုင္းပါပဲ။Block Size ေတာ့မ်ားလာမွာေပါ့။

Block Sizes                                     Broadcast              Network              Netmask
192.168.0.0 to 192.168.0.31           192.168.0.31          192.168.0.0       255.255.255.224
192.168.0.32 to 192.168.0.63         192.168.0.63          192.168.0.32     255.255.255.224
192.168.0.64 to 192.168.0.95         192.168.0.95          192.168.0.64     255.255.255.224
192.168.0.96 to 192.168.0.127       192.168.0.127        192.168.0.96     255.255.255.224
192.168.0.128 to 192.168.0.159     192.168.0.159        192.168.0.128   255.255.255.224
192.168.0.160 to 192.168.0.191     192.168.0.191        192.168.0.160   255.255.255.224
192.168.0.192 to 192.168.0.223     192.168.0.223        192.168.0.192   255.255.255.224
192.168.0.224 to 192.168.0.225     192.168.0.225        192.168.0.224   255.255.255.224

0,32,64,96,128,160,192,224 …....။အဲဒီမွာ 192.168.0 ေနရာမွာ 192.168.1 ဆိုလည္းအတူ
တူပါပဲ။အဲလိုပဲ192.168.0 ကေန 192.168.n အထိျကိုက္အထိအဲ့အတိုင္းတြက္လို့ရပါတယ္။
အဲ့ေနရာမွာ n ဆိုတာ 1 ကေန 255ထိပဲအျကံုး၀င္ပါလိမ့္မယ္။ေနာက္ဟာေလးေတြကိုယ့္ဟာကိုယ္
ဆက္တြက္ျကည့္ပါ။ဟိုးအေပာ္ကဇယားမွာ /30 အထိအက်ဥ္းတြက္ထားပါတယ္။:D
Binary to Decimal ေျပာင္းပံုေလးပါ။
10000000=128
11000000=192
11100000=224
11110000=240
11111000=248
11111100=252
11111110=254
11111111=255

Given a subnet mask of 255.255.255.224, which of the following addresses can be assigned to network hosts? (Choose three)
A – 15.234.118.63
B – 92.11.178.93
C – 134.178.18.56
D – 192.168.16.87
E – 201.45.116.159
F – 217.63.12.192

Answer is B,C,D.

CIDR အရ 255.255.255.224 သည္ /27 ျဖစ္ပီးေတာ့AddressSize=2^5=32
ျဖစ္ပါတယ္။ဒါေျကာင့္ 0,32,64,96,128,160,192,224 ဆိုပီးရပါမယ္။
အဲမွာမွ 0,32,64,96,128,160,192,224 တို့သည္ Network Addresမ်ားျဖစ္ပါတယ္။
ဒါအျပင္ 31,63,95,127,159,191,223,255 တို့က broadcast ေတြပါ။
ဒါေျကာင့္A နဲ့ E တို့က broadcast ေတြထဲမွာပါေနပီးF ကေတာ့ Network Address
ေတြထဲမွာပါေနပါတယ္။ဒါေျကာင့္ျကားAddress ျဖစ္တဲ့ B,C,D ရယ္ကိုေရြးတာပါ။
အဲဒါေလးက Subnetting ရဲ့အသံုး၀င္ပံုေလးပါ။အေသးစိတ္ေလ့လာခ်င္ရင္ေတာ့
www.9tut.com မွာေလ့လာနုိင္ပါတယ္။သူကCCNAsite ပါ။
က်ြန္ေတာ့အေနနဲ့ Networking ကိုစိတ္၀င္စားပီးသင္သန္းေျကးျကီးလုိ့မတက္နိုင္တဲ့၀ါ
သနာရွင္ေတြ၊ကိုယ့္ဟာကိုယ္self-study လုပ္လိုသူေတြ၊Junior ညီငယ္ညီမငယ္ေလး
ေတြအတြက္ပါေလ့လာလို့ရေအာင္တတ္သေလာက္မွတ္သေလာက္ေရးသားေပးလုိက္ပါ
တယ္။ေနာက္အခ်ိန္ရမွာ Class A နဲ့ Class B အေျကာင္းေကာ အျခား Network
Simulator ေလးေတြ Configuration လုပ္ပံုေလးေတြကိုပါေရးပီး Knowledge
sharing လုပ္ေပးပါ့မယ္။စာလံုးေပါင္းမွားတာမ်ိုးရွိရင္သည္းခံေပးပါ။

 ေလးစားစြာျဖင့္
Win Tun Hlaing
Related Posts Plugin for WordPress, Blogger...