В това издание на Geek School ще разгледаме как функционира IP адреса. Ще разгледаме и някои разширени теми, като например начина, по който вашият компютър определя дали устройството, с което комуникирате, е в същата мрежа като вас. След това ще завършим с кратък преглед на два протокола за име на разделителна способност: LLMNR и DNS.
Не забравяйте да проверите предишните статии в серията Geek School в Windows 7:
И останете настроени за останалата част от серията през цялата седмица.
Когато изпращате писмо по пощата, трябва да посочите адреса на лицето, което искате да получите. По същия начин, когато един компютър изпраща съобщение на друг компютър, трябва да посочи адреса, на който трябва да бъде изпратено съобщението. Тези адреси се наричат IP адреси и обикновено изглеждат така:
192.168.0.1
Тези адреси са IPv4 (Интернет протокол версия 4) адреси и като повечето неща в наши дни те са просто абстракция за това, което в действителност компютърът вижда. IPv4 адресите са 32-битови, което означава, че съдържат комбинация от 32 и нули. Компютърът ще види адреса, посочен по-горе, като:
11000000 10101000 00000000 00000001
Забележка: Всеки десетичен октет има максимална стойност от (2 ^ 8) - 1, което е 255. Това е максималният брой комбинации, които могат да бъдат изразени чрез 8 бита.
Ако искате да конвертирате IP адрес в двоичен еквивалент, можете да създадете обикновена таблица, както е показано по-долу. След това направете една секция от IP адреса (технически наречена октет), например 192, и преместете от ляво на дясно, ако можете да извадите номера в заглавката на таблицата от десетичното число. Има две правила:
Ето как изглежда това, използвайки примерния ни адрес на адрес 192.168.0.1
128 | 64 | 32 | 16 | 8 | 4 | 2 | 1 |
1 | 1 | 0 | 0 | 0 | 0 | 0 | 0 |
1 | 0 | 1 | 0 | 1 | 0 | 0 | 0 |
0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 |
В горния пример взех нашия първи октет от 192 и отбелязахме колоната от 128-те с 1. След това останах с 64, което е същото като числото като втората колона, така че го маркирах и с 1. Сега бях останал с 0 от 64 - 64 = 0. Това означаваше, че останалата част от реда е нула.
Във втория ред взех втория октет, 168. 128 е по-малък от 168, така че го отбелязах с 1 и остана с 40. 64 тогава беше по-голям от 40, така че го отбелязах с 0. Когато се преместих в третата колона, 32 е по-малко от 40, така че я маркирах с 1 и останах с 8. 16 е по-голяма от 8, така че я маркирах с 0. Когато стигнах до 8-та колона, аз я маркирах с 1, което ме остави 0, така че останалите колони бяха маркирани с 0.
Третият октет е 0 и нищо не може да достигне 0, така че всички колони бяха отбелязани с нула.
Последният октет е 1 и нищо не може да отиде в 1, с изключение на 1, така че аз маркирам всички колони с 0, докато стигнем до колоната 1s, където я маркирах с 1.
Забележка: Маскирането на подмрежата може да стане много сложно, така че за обхвата на тази статия ще обсъждаме само класически подмрежови маски.
IP адресът се състои от два компонента, мрежов адрес и адрес на хост. Маската на подмрежата е тази, която се използва от компютъра ви, за да отделите вашия IP адрес в мрежовия адрес и адреса на хоста. Маската на подмрежа обикновено изглежда нещо подобно.
255.255.255.0
Което в двоичен вид изглежда така.
11111111.11111111.11111111.00000000
В маска на подмрежа мрежовите битове се обозначават с 1s, а битовете на хост се обозначават с 0s. От горното двоично представяне можете да видите, че първите три октета от IP адреса се използват за идентифициране на мрежата, към която принадлежи устройството, и последният октет се използва за адреса на хоста.
Като се има предвид IP адрес и маска на подмрежата, нашите компютри могат да разберат дали устройството е в същата мрежа, като изпълнява операция bit AND. Например, кажете:
computerOne първо ще изчисли битумното ИД на собствената си IP и маска на подмрежата.
Забележка: Когато използвате операция bitwise AND, ако съответните битове са и двете, резултатът е 1, в противен случай е 0.
11000000 10101000 00000000 00000001
11111111 11111111 11111111 0000000011000000 10101000 00000000 00000000
Тогава ще изчисли бита AND за computerTwo.
11000000 10101000 00000000 00000010
11111111 11111111 11111111 0000000011000000 10101000 00000000 00000000
Както можете да видите, резултатите от тези операции са еднакви, така че устройствата са в същата мрежа.
Както вероятно сте предположили досега, колкото повече мрежи (1) имате в маската на подмрежата, толкова по-малко хост (0s) можете да имате. Броят на хостовете и мрежите, които можете да имате, е разделен на 3 класа.
мрежи | Маска за подмрежа | мрежи | Силите | |
Клас А | 1-126.0.0.0 | 255.0.0.0 | 126 | 16 777 214 |
Клас Б | 128-191.0.0.0 | 255.255.0.0 | 16 384 | 65 534 |
Клас С | 192-223.0.0.0 | 255.255.255.0 | 2 097 152 | 254 |
Ще забележите, че диапазонът 127.x.x.x е бил изключен. Това се дължи на факта, че целият диапазон е запазен за нещо, наречено вашият обратна връзка. Адресът ви с обратна връзка винаги сочи към собствения ви компютър.
Диапазонът 169.254.0.x беше запазен и за нещо, наречено APIPA, което ще разгледаме по-късно в поредицата.
До преди няколко години всяко устройство в интернет имаше уникален IP адрес. Когато IP адресите започнаха да изтичат, въведена бе концепция, наречена NAT, която добави още един слой между нашите мрежи и интернет. IANA реши, че ще запазят редица адреси от всеки клас IP адреси:
След това, вместо да присвоите на всяко устройство в света IP адрес, вашият ISP ви осигурява устройство, наречено NAT маршрутизатор, на който е зададен един IP адрес. След това можете да зададете IP адресите на устройствата си от най-подходящия частен IP обхват. След това маршрутизаторът NAT поддържа NAT таблица и прокси връзката ви с интернет.
Забележка: IP адреса на Вашия маршрутизатор NAT обикновено се присвоява динамично чрез DHCP, така че обикновено се променя в зависимост от ограниченията, които вашият ISP има.
За нас е по-лесно да си спомним имената, които могат да се разчитат на хора, като FileServer1, отколкото да запомним IP адрес като 89.53.234.2. В малки мрежи, където не съществуват други решения за разрешаване на имена, като DNS, когато се опитвате да отворите връзка към FileServer1, компютърът ви може да изпрати съобщение за множествено предаване (което е фантастичен начин да кажете, че изпращате съобщение до всяко устройство в мрежата) пита кой е FileServer1. Този метод за разрешаване на име се нарича LLMNR (Link-lock Multicast Name Resolution) и въпреки че е перфектно решение за домашна или малка бизнес мрежа, той не се мащабира добре, първо защото излъчването на хиляди клиенти ще отнеме твърде дълго време тъй като предаванията обикновено не пресичат рутери.
Най-честият метод за решаване на проблема с мащабируемостта е използването на DNS. Системата за име на домейни е телефонният указател на дадена мрежа. Той картографира имената на машинни четливи на базовите IP адреси чрез гигантска база данни. Когато се опитате да отворите връзка към FileServer1, вашият компютър пита вашия DNS сървър, който сте посочили, кой FileServer1 е. След това DNS сървърът ще отговори с IP адрес, на който компютърът ви може да се свърже. Това е и методът за разрешаване на име, използван от най-голямата мрежа в света: интернет.
Кликнете с десния бутон на мишката върху иконата на мрежовите настройки и изберете Отворен център за мрежи и споделяне от контекстното меню.
Сега кликнете върху връзката Промяна на настройките на адаптера от лявата страна.
След това кликнете с десния бутон върху мрежовия адаптер и изберете Properties от контекстното меню.
Сега изберете Internet Protocol Version 4 и след това кликнете върху бутона Properties.
Тук можете да конфигурирате статичен IP адрес, като изберете радио бутона за "Използване на следния IP адрес". Въоръжени с информацията по-горе, можете да попълните IP адрес и маска на подмрежата. Порталът по подразбиране, за всички цели и цели, е IP адресът на вашия маршрутизатор.
В долната част на диалоговия прозорец можете да зададете адреса на вашия DNS сървър. В къщи вероятно нямате DNS сървър, но маршрутизаторът често има малък DNS кеш и изпраща запитвания до вашия интернет доставчик. Друга възможност е да използвате обществения DNS сървър на Google, 8.8.8.8.
Ако имате някакви въпроси, можете да ми tweet @ taibbibb или просто да оставите коментар.