1.2.1. შესავალი
თუ დღევანდელი კომპიუტერული ქსელების სურათს ძალიან გავამარტივებთ და გავაფორმალურებთ, მათ შემადგენელი კომპონენტები შეგვიძლია სამ ნაწილად დავყოთ:
ჰოსტები, კვანძები და შემაერთებელი გარემო (media).
ჰოსთი - ესაა ქსელის კომპონენტი, რომელიც "ამჩნევს" და ამუშავებს მხოლოდ მისთვის განკუთვნილ ინფორმაციას (კომპიუტერი, ლეპტოპი,პრინტერი და ა.შ.)
კვანძი არის ქსელის კომპონენტი, რომლის ამოცანაა ჰოსთებისთვის ან სხვა კვანძებისთვის განკუთვნილი ინფორმაციის დამუშავება, ორგანიძება, გადამისამართება და ა.შ. (ჰაბი, სვიჩი, როუტერი და ა.შ.)
მედია - ესაა გარემო რომელშიც სიგნალი ვრცელდება (მავთული, ელექტრომაგნიტური ტალღები და ა.შ.). ეს არის ის რითაც ჰოსთები და კვანძები უკავშირდებიან ერთმანეთს.
ყველა შემთხვევაში, ინფორმაციის გადაცემის პროცესის საწყისი და საბოლოო წერტილი არის ჰოსთი.
ჰოსთების ცალსახა ინდენტიფიკაციისთვის საჭიროა მათი ადრესაცია. სხვადასხვა პროტოკოლები, მათი მიზნების შესაბამისად შეიძლება ადრესაციის სხვადასხვა მექანიზმს იყენებდნენ. ჩვენ განვიხილავთ IP პროტოკოლს და კერძოდ მე-4-ე ვერსიას, შესაბამისად ამ ვერსიაში არსებულ ადრესაციის მექანიზმს.
IPv4 პროტოკოლის მიხედვით, IP მისამართი არის 32 ბიტიანი რიცხვი. შესაბამისად უმცირესი IP-მისამართია:
000000000000000000000000000000002=010
ხოლო უდიდესი IP-მისამართია:
111111111111111111111111111111112=429496729510
შესაბამისად დედამიწაზე იყო დრო როდესაც ეგონათ, რომ 4 მილიარდ "ს ჩემტა" აიპი
მისამართი სრულიად საკმარისი იყო კაცობრიობის მოთხოვნებისთვის. ამ დრომ დიდი ხანია ჩაიარა და არსებობს IPv6 სტანდარტი, სადაც ეს და სხვა პრობლემაა მოხსნილი, მაგრამ ეს სხვა საუბრუს თემაა.
1.2.2. წერტილოვანი ათობითი წარმოდგენა.
ამგვარად IP მისამართი წარმოადგენს რიცხვის 0-დან 4294967295-მდე. ასეთი სახით მისამართებთან მუშაობა მოუხერხებელია, ამიტომ გამოიყენება ე.წ. წერტილოვანი ათობითი წარმოდგენა (Dotted Decimal notation). მისი შინაარსი რომ გავიგოთ ისევ IP მისამართის ორობით ჩანაწერს უნდა მივმართოთ, როგორც ვთქვით IP მისამართი არის :
მისამართი სრულიად საკმარისი იყო კაცობრიობის მოთხოვნებისთვის. ამ დრომ დიდი ხანია ჩაიარა და არსებობს IPv6 სტანდარტი, სადაც ეს და სხვა პრობლემაა მოხსნილი, მაგრამ ეს სხვა საუბრუს თემაა.
1.2.2. წერტილოვანი ათობითი წარმოდგენა.
ამგვარად IP მისამართი წარმოადგენს რიცხვის 0-დან 4294967295-მდე. ასეთი სახით მისამართებთან მუშაობა მოუხერხებელია, ამიტომ გამოიყენება ე.წ. წერტილოვანი ათობითი წარმოდგენა (Dotted Decimal notation). მისი შინაარსი რომ გავიგოთ ისევ IP მისამართის ორობით ჩანაწერს უნდა მივმართოთ, როგორც ვთქვით IP მისამართი არის :
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
სახის რიცხვი (ორობითში). აქ 32 ცალი x წერია და თითოეული შეიძლება იღებდეს მნიშვნელობას ან 0 ან 1. დავყოთ ეს 32 ბიტი ბაიტებად (ან ოქტეტებად):
xxxxxxxx . xxxxxxxx . xxxxxxxx . xxxxxxxx
ოქტეტებს შევხედოთ როგორც ცალკე რიცხვს ისე: თითოეულმა ოქტეტმა შეიძლება მიიღოს მინიმალური მნიშვნელობა როცა ყველა x=0 ანუ 00000000002=010, და მაქსიმალური მნიშვნელობა როცა ყველა x=1 ანუ 111111112=25510.
ამის მერე წინა ნაწილში ჩამოყალიბებული განმარტება IP მისამართისა, შეიძლება შემდეგნაერად ჩამოყალიბდეს :
IP მისამართი ქვია A,B,C,D ტიპის ჩანაწერებს, სადაც A, B, C და D რიცხვები შეიძლება ღებულობდნენ მნიშვნელობებს 0-დან 255-მდე.
ამგვარად ჩანაწერები 1.2.3.4 ან 100.100.100.100 ან 123.231.56.71 ან 255.255.255.255 წარმოადგენენ IP მისამართებს, ხოლო შემდეგი ჩანაწერები 255.255.255.256 უკვე აღარაა IP მისამართი.
1.2.3 კლასები.
იმის მიხედვით თუ რა მნიშვნელობა გააჩნია ორივე ოქეტს, IP მისამართები იყოფა კლასებად. დაყოფას მკაცრი მეთამატიკური საფუძველი აქვს მაგრამ ეს ორობითი გამოთვლების ჩატარებას მოითხოვს, ამიტომ უბრალოდ ჩამოვთვალოთ IP მისამართების კლასები :
ამის მერე წინა ნაწილში ჩამოყალიბებული განმარტება IP მისამართისა, შეიძლება შემდეგნაერად ჩამოყალიბდეს :
IP მისამართი ქვია A,B,C,D ტიპის ჩანაწერებს, სადაც A, B, C და D რიცხვები შეიძლება ღებულობდნენ მნიშვნელობებს 0-დან 255-მდე.
ამგვარად ჩანაწერები 1.2.3.4 ან 100.100.100.100 ან 123.231.56.71 ან 255.255.255.255 წარმოადგენენ IP მისამართებს, ხოლო შემდეგი ჩანაწერები 255.255.255.256 უკვე აღარაა IP მისამართი.
1.2.3 კლასები.
იმის მიხედვით თუ რა მნიშვნელობა გააჩნია ორივე ოქეტს, IP მისამართები იყოფა კლასებად. დაყოფას მკაცრი მეთამატიკური საფუძველი აქვს მაგრამ ეს ორობითი გამოთვლების ჩატარებას მოითხოვს, ამიტომ უბრალოდ ჩამოვთვალოთ IP მისამართების კლასები :
მოვიყვანოთ რამოდენიმე მაგალითი :
A კლასი: 10.10.10.1 , 50.255.255.255 , 125.250.125.250.
B კლასი: 128.0.01 , 172.20.10.1 , 192.255.255.255.
C კლასი: 192.168.1.1 , 200.200.200.200 , 223.0.0.1.
1.2.3. მასკა.
წარმოვიდგინოთ 10000 ჯარისკაცისგან შემდგარი ბრიგადა. ყველა ჯარისკაცს აქვს პირადი ნომერი 0000-დან 9999-მდე. ბრიგადის წინაშე დასმული ამოცანის მიხედვით პერიოდულად საჭიროა მისი შემადგენლობის, სხვადასხვა მასშტაბის მხირე ჯგუფებად დანაწილება. აქ ძალიან მოსახერხებელია სულ მცირე მათემატიკის მოშველიება.
მაგალითად თუ გვინდა ბრიგადის ათასეულებად დაყოფა - მაშინ შეგვიძლია ერთიდაიგივე ათასეულში გავამწესოთ მხოლოდ ის ჯარისკაცები რომლებსაც პირადი ნომრის პირველი ციფრი აქვთ საერთო. ანუ ამ შემთხვევაში ერთ ჯგუფში (ათასეულში) აღმოჩნდება ყვე ჯარისკაცი 0000 დან 0999 ნომრის ჩათვლით, მეორეში ყველა 1000-დან 1999-ის ჩათვლით და ა.შ. მეათე და ბოლოში ყველა 9000-დან 9999-ის ჩათვლით. სიმოკლისთვის შეიძლება ვილაპარაკოთ რომ ვიყენებთ /1 დაყოფას (ნიშნავს ნომრის პირველი ციფრი უცვლელია იგი განსაზღვრავს ჯგუფის ნომერს, ანუ ჯარისკაცი 1234 არის პირველი ათასეულის 234-ე ჯარისკაცი)
თუ გვინდა ბრიგადის ასეულებად დაყოფა მაშინ უცვლელს ვტოვებთ პირველ ორ ციფრს ანუ სულ პირველი ასეული იქნება: 0000-0099, მეორე 0100-0199, მესამე 0200-0299 და ა.შ. მეასე და ბოლო: 9900-9999, ამჯერად ვიტყვით რომ ვიყენებთ /2 მასკით დაყოფას (ნომრის პირველი ორი ციფრი უცვლელია და იგი განსაზღვრავს ჯგუფის ნომერს, ანუ ჯარისკაცი 1234 არის მე-12-ე ასეულის 34-ე ჯარისკაცი)
თუ გვინდა ბრიგადის ათეულებად დაყოფა მაშინ ვტოვებთ პირველ სამ ციფრს ანუ სულ პირველი ათეული იქნება: 0000-0009, მეორე 0010-0019, მესამე 0020-0029 და ა.შ. მეათასე და ბოლო: 9990-9999. ვამბობთ რომ ვიყენებთ /3 მასკით დაყოფას (ნომრის პირველი სამი ციფრი უცვლელია იდი განსაზღვრავს ჯგუფის ნომერს, ანუ ჯარისკაცი 1234 არის 123-ე ათეულის მე-4-ე ჯარისკაცი)
ახლა მთელი ეს მსჯელობა ადვილი გადასატანია IP მისამართებზე, რომელიც ასევე 4 ნიშნა (4 ოქტეტიანია). ოღონდ აქ თუ პირველი ოქტეტი მიუთითებს ჯგუფის ნომერს (რომელსაც აქ საბნეტი ქვია) ვწერთ არა /1 არამედ /8 (პირველი 8 ბიტი), თუ პირველი 2 ოქტეტი მაშინ /16, თუ პირველი 3 ოქტეტი მაშინ /24.
თავდაპირველი გადაწყვეტილების მიხედვით A კლასში გამოიყენებოდა /8 მასკა, B კლასში /16 ხოლო C კლასში /24. შემდეგ ეს წესი შეიცვალა, ამიტომ ახლა ვამბობთ ტომ ეს მოცემული კლასის შესაბამისი დეფაულთ მასკებია.
მაგალითები:
10.0.0.0 /8 მისამართში ქსელური ნაწილია 10 დანარჩენი ნომრავს ჰოსთს, ამ ქსელს ეკუთვნის ყველა მისამართი 10.0.01-დან 10.255.255.255-მდე.
172.16.0.0 /16 მისამართში ქსელური ნაწილია 172.16 დანარჩენი ნომრავს ჰოსთს, ამ ქსელს ეკუთვნის ყველა მისამართი 172.16.0.1-დან 172.16.255.255-მდე.
192.168.0.0 /24 მისამართში ქსელური ნაწილია 192.168.0 დანარჩენი ნომრავს ჰოსთს, ამ ქსელს ეკუთვნის ყველა მისამართი 192.168.0.1-დან 192.168.0.255-მდე.
1.2.4 VLSM.
დიდი ხანია ასეთი მარტივი დაყოფა აღარ გამოიყენება გარკვეული მიზეზების გამო. მასკას უკვე ნებისმიერი მნიშვნელობა შეიძლება ქონდეს /8-/30 ინტერვალში, შინაარსი იგივეა /n მასკა ნიშნავს, რომ პირველი n ბიტი აღნიშნავს ქსელს, დანარჩენი 32-n კი ჰოსთს. ამ შემთხვევაში გამოთვლები ცოტათი რთულდება, ვინაიდან ორობითის მოშველიება ხდება საჭირო.
მოკლედ ნებისმიერი მასკა საბნეტს განსაზღვრავს ცალსახად, განსაზღვრავს თუ საიდან იწყება იგი და სად მთავრდება. IP პროტოკოლის მიხედვით დასაწყისი და ბოლო მისამართები დარეზერვებულია სპეციალური მიზნებისთვის და მათი გაწერა ჰოსთების ინტერფეისებზე შეუძლებელია: ყველაზე დაბალს Net IP (ქსელის აიპი) ქვია, ყველაზე მარალს ბროუდქასთი.
ახლა ვნახოთ თუ როგორ ითვლება: ქსელის ნომერი, ბროუდქასთი და რეინჯი.
ქსელის ნომერი მიიღება აიპი მისამართიდან თუ მისი ჰოსთის შესაბამის ბიტებს გავანოლებთ, ხოლო ბროუდქასთი მიიღება თუ მისი ჰოსთის შესაბამის ბიტებს ერთიანებით შევცვლით:
მაგალითად ვიპოვოთ 210.17.23.200 /27 მისამართის ქსელური ნომერი და ბროუდქასთი:
გადავიყვანოთ 210.17.23.200 მისამართი ორობითში
11010010.00010001.00010111.11001000
ვინაიდან მასკაა /27 ეს ნიშნავს რომ აქ 27 ბიტი ქსელის ნომერია დავტოვოთ ისინი და დანარჩენი გავანოლოთ :
11010010.00010001.00010111.11000000
ესაა ქსელის ნოემრი მოცემული აიპისთვის, გადავიყვანოთ ეხლა ეს ისევ ათობითში, მივიღებთ:
210.17.23.192
ამგვარად 210.17.23.200 /27 მისამართი არის 210.17.23.192 /27 საბნეტში.
ახლა გავიგოთ ბროუდქასთი: ამისთვის აიპში ჰოსთის შესაბამის ბიტებს ვცვლით 1-იანებით:
11010010.00010001.00010111.11011111
გადავიყვანოთ ახლა ეს ათობითში:
210.17.23.223
ამგვარად: 210.17.23.200 /27 აიპი მისამართი ეკუთვნის 210.17.23.192 /27 საბნეტს რომლის ბროუდქასთია 210.17.23.223. მათ შორის მოქცეული აიპები კი იქნება დასაშვები მისამართების რეინჯი მოცემული საბნეტისა:
210.17.23.192 - 210.17.23.223
სტატიის ავტორი : RoBBeR
საიტის მისამართი : https://www.ftw0x.blogspot.com
No comments:
Post a Comment