Автоматизація процесу призначення IP-адрес вузлам мережі - протокол DHCP

Як уже було сказано, IP-адреси можуть призначатися адміністратором мережі вручну. Це представляє для адміністратора стомлюючу процедуру. Ситуація ускладнюється ще тим, що багато користувачів не мають достатні знання для того, щоб конфігурувати свої комп'ютери для роботи в інтермережі й повинні тому покладатися на адміністраторів.

Протокол Dynamic Host Configuration Protocol (DHCP) був розроблений для того, щоб звільнити адміністратора від цих проблем. Основним призначенням DHCP є динамічне призначення IP-адрес. Однак, крім динамічного, DHCP може підтримувати й більше прості способи ручного й автоматичного статичного призначення адрес.

У ручній процедурі призначення адрес активна участь приймає адміністратор, що надає DHCP-серверу інформацію про відповідність IP-адрес фізичним адресам або іншим ідентифікаторам клієнтів. Ці адреси повідомляються клієнтам у відповідь на їхні запити до DHCP-сервера.

При автоматичному статичному способі DHCP-сервер привласнює IP-адреса (і, можливо, інші параметри конфігурації клієнта) з пула наявних IP-адрес без втручання оператора. Границі пула призначуваних адрес задає адміністратор при конфігуруванні DHCP-сервера. Між ідентифікатором клієнта і його IP-адресою як і раніше, як і при ручному призначенні, існує постійна відповідність. Воно встановлюється в момент первинного призначення сервером DHCP IP-адреси клієнтові. При всіх наступних запитах сервер повертає та ж сама IP-адреса.

При динамічному розподілі адрес DHCP-сервер видає адреса клієнтові на обмежений час, що дає можливість згодом повторно використати IP-адреси іншими комп'ютерами. Динамічний поділ адрес дозволяє будувати IP-мережу, кількість вузлів у якій набагато перевищує кількість наявних у розпорядженні адміністратора IP-адрес.

DHCP забезпечує надійний і простий спосіб конфігурації мережі TCP/IP, гарантуючи відсутність конфліктів адрес за рахунок централізованого керування їхнім розподілом. Адміністратор управляє процесом призначення адрес за допомогою параметра "тривалості оренди" (lease duration), що визначає, як довго комп'ютер може використати призначену IP-адресу, перед тим як знову запросити його від сервера DHCP в оренду.

Прикладом роботи протоколу DHCP може служити ситуація, коли комп'ютер, що є клієнтом DHCP, віддаляється з подсети. При цьому призначений йому IP-адреса автоматично звільняється. Коли комп'ютер підключається до інший подсети, те йому автоматично призначається нова адреса. Ні користувач, ні мережевий адміністратор не втручаються в цей процес. Це властивість дуже важливо для мобільних користувачів.

Протокол DHCP використає модель клієнт-сервер. Під час старту системи комп'ютер-клієнт DHCP, що перебуває в стані "ініціалізація", посилає повідомлення discover (досліджувати), що широкомовно поширюється по локальній мережі й передається всім DHCP-серверам приватної інтермережі. Кожен DHCP-сервер, що одержав це повідомлення, відповідає на нього повідомленням offer (пропозиція), що містить IP-адресу й конфігураційну інформацію.

Комп'ютер-клієнт DHCP переходить у стан "вибір" і збирає конфігураційні пропозиції від DHCP-серверів. Потім він вибирає одне із цих пропозицій, переходить у стан "запит" і відправляє повідомлення request (запит) тому DHCP-серверу, чия пропозиція була обрана.

Обраний DHCP-сервер посилає повідомлення DHCP-acknowledgment (підтвердження), що містить та ж IP-адреса, що уже була послана раніше на стадії дослідження, а також параметр оренди для цієї адреси. Крім того, DHCP-сервер посилає параметри мережевої конфігурації. Після того, як клієнт одержить це підтвердження, він переходить у стан "зв'язок", перебуваючи в якому він може брати участь у роботі мережі TCP/IP. Комп'ютери-клієнти, які мають локальні диски, зберігають отриману адресу для використання при наступних стартах системи. При наближенні моменту витікання строку оренди адреси комп'ютер намагається обновити параметри оренди в DHCP-сервера, а якщо ця IP-адреса не може бути виділений знову, те йому повертається інша IP-адреса.

У протоколі DHCP описується кілька типів повідомлень, які використаються для виявлення й вибору DHCP-серверів, для запитів інформації про конфігурації, для продовження й дострокового припинення ліцензії на IP-адресу. Всі ці операції спрямовані на те, щоб звільнити адміністратора мережі від стомлюючих рутинних операцій по конфігуруванню мережі.

Однак використання DHCP несе в собі й деякі проблеми. По-перше, це проблема узгодження інформаційної адресної бази в службах DHCP й DNS. Як відомо, DNS служить для перетворення символьних імен в IP-адреси. Якщо IP-адреси будуть динамічно зміняться сервером DHCP, то ці зміни необхідно також динамічно вносити в базу даних сервера DNS. Хоча протокол динамічної взаємодії між службами DNS й DHCP уже реалізований деякими фірмами (так називана служба Dynamic DNS), стандарт на нього поки не прийнятий.

По-друге, нестабільність IP-адрес ускладнює процес керування мережею. Системи керування, засновані на протоколі SNMP, розроблені з розрахунком на статичність IP-адрес. Аналогічні проблеми виникають і при конфігуруванні фільтрів маршрутизаторів, які оперують із IP-адресами.

Нарешті, централізація процедури призначення адрес знижує надійність системи: при відмові DHCP-сервера всі його клієнти виявляються не в змозі одержати IP-адресу й іншу інформацію про конфігурації. Наслідку такої відмови можуть бути зменшені шляхом використанні в мережі декількох серверів DHCP, кожний з яких має свій пул IP-адрес.

 

ПРОТОКОЛИ INTERNET

 

До 1979 року остаточно сформувався стек базових протоколів і почався екстенсивне зростання мережі Інтернет. По мірі виявлення недоліків протоколів і нових потреб після 1989 року почалася активна розробка нових напрямків і додатків в Інтернет. Це, насамперед, мультимедіа, базою для впровадження якої стали протоколи MIME і НТТ, системи мережевої й інформаційної безпеки, мобільні послуги, IPv6, MPLS/GMPLS і різні види сервісів.

 

“Дерево протоколів”

 

На даному малюнку відзначені, зрозуміло, не всі протоколи й алгоритми, але ця схема відбиває основні напрямки розробок. Аналізуючи перелік RFC за 2005 рік, можна зробити висновок, що проблема безпеки вийшла на перше місце, з'явилися перші документи по цифровому ТВ, мобільному зв'язку й QoS (якість обслуговування). “Дерево протоколів” до якогось ступеня відбиває послідовність їх розробки. Структура книги також наслідує цю схему. Документи, які знаходять статус стандарту, зберігаються в спеціальному каталозі й мають розширення імені файлу .std.

По суті, сучасні мережі, і Інтернет зокрема, базуються на досить обмеженому переліку ідей:

1. Пакетний принцип передачі даних і керування;

2. Адаптація довжини пакета до умов передачі (фрагментація/дефрагментація);

3. Інкапсуляція пакетів один в одний;

4. Динамічна маршрутизація.

Звичайно, цим все не обмежується. Сучасна мережева технологія досить складна. Люди люблять комфорт, і це породило величезну розмаїтість алгоритмів, що забезпечують мобільний зв'язок. Здійснюється інтеграція Інтернет з IP-телефонією, на підході цифрове телебачення. Швидкими темпами розвиваються пошукові системи тощо.

Розроблювачі базових принципів Інтернет і не припускали, що прийде час - і користувачі мережі самі почнуть розробляти засоби для руйнування мережі й нападу на інші (видно, така вже природа людини).

Власне кажучи Інтернет - це сукупність програм, які взаємодіють одна з одною за певними правилами. Правила взаємодії визначаються протоколами (IP, UDP, TCP, DNS,…)...

Привабливість мережі не тільки в тому, що це єдине середовище спілкування людей, що перебувають у різних країнах і на різних континентах. Телефонія в принципі надавала аналогічні послуги. Але для зв'язку по телефону вам необхідно знати номер телефону партнера. Системи зв'язку через Інтернет (передплатні аркуші, ICQ і т.д.) дозволяють зв'язатися з потрібною людиною, про існування якої ви й не підозрювали.

Інтернет надає все більшь широкий спектр послуг. Це й інформаційно-пошукові системи, телефонія, аудіо- і відеолисти, що доставляються за лічені секунди в будь-яку місце світу (де є Інтернет), і відеоконференції, електронні журнали, служби новин, дистанційне навчання, банківські операції й багато чого іншого.

Для Інтернету буде неминучою болісна процедура переходу на 128-бітові адреси (IPv6), але по її завершенні можна чекати подальшого розширення переліку послуг.

Віртуальна мережа віртуальних мереж – Інтернет, є найбільшою й найпопулярнішою мережею. Можна сміло стверджувати, що ця мережа збереже це лідерство в найближчі роки. Привабливість мережі не тільки в тому, що це єдине середовище спілкування людей, які перебувають у різних країнах і на різних континентах. Інтернет надає все більш широкий спектр послуг. Це й інформаційно-пошукові системи, телефонія, аудіо й відеолисти, що доставляються за лічені секунди в будь-яку точку світу (де є Інтернет), відеоконференції, електронні журнали, служби новин, дистанційне навчання, банківські операції й багато чого іншого. Вже сьогодні Інтернет став середовищем, що надає можливість цільової реклами й дистанційної торгівлі. Вже на початку наступного століття мережі стануть самим потужним засобом масової інформації. Але для вирішення всіх цих проблем у цій сфері ще треба дуже багато зробити. Сучасні пошукові системи, незважаючи на вражаючі успіхи, вимагають істотного поліпшення ефективності, багато треба зробити для того, щоб Інтернет прийшов у кожну домівку.

Інтернет істотно змінив унікальну константу, що визначає темп науково-технічного прогресу - час, протягом якого нові наукові дані або ідеї стають доступними зацікавленим фахівцям.

Протягом декількох століть цей час дорівнював приблизно одному року - часу публікації даних в одному з журналів і доставки цих журналів адресатам. Тепер ця затримка для рецензуємих електронних журналів не перевищує 1-2 місяців й одного тижня - для нереферуємих, а для тематичних серверів затримка не перевищує декількох годин.

Сьогодні Інтернет використовує багато десятків протоколів. Якщо сюди додати протоколи фізичного рівня, то їх кількість перевищить сотню. На рівні локальних мереж найпоширеніші різні різновиди Ethernet, а також Token Ring і деякі інші. Особливо велика розмаїтість протоколів між мережевого обміну. Тут крім PPP використається FDDI, X.25, ISDN, ATM, SDH, Fibre Channel тощо. На транспортному рівні в Інтернет працюють протоколи UDP (без встановлення з'єднання) і TCP (із встановленням з'єднання). Це два принципово різних підходи до передачі даних. В обох випадках і передавач і приймач мають індивідуальні IP-адреси й порти. Але у випадку TCP вони асоціюються в з'єднувачі (socket) - дві пари IP-адреса-порт і прийом/передача в рамках однієї сесії відбувається за схемою точка-точка. Для UDP ж допускається можливість передачі одночасно декільком приймачам (мультикастинг) і прийом даних від декількох передавачів у рамках однієї й тієї ж сесії. Протокол TCP використовується для потокової передачі даних, при якій доставка гарантується на протокольному рівні. Це забезпечується обов'язковим підтвердженням одержання кожного пакету TCP. Навпроти, протокол UDP не вимагає підтвердження одержання. У цьому випадку, як правило, виключається також і фрагментація пакетів, тому що пакети при схемі без встановлення з'єднання ніяк не зв'язані між собою. Із цих причин UDP в основному використовується для передачі мультимедійних даних, де важливіше своєчасність, а не надійність доставки. Протокол TCP використовується там, де важлива надійна, безпомилкова доставка інформації (файловий обмін, передача поштових повідомлень й WEB-технологія).

Схема без встановлення з'єднання приваблива також тим, що дозволяє при передачі даних від вихідного джерела до великої кількості приймачів мінімізувати загальний трафік. Якби для цієї мети використався протокол TCP, то при N приймачах треба було б сформувати N віртуальних каналів і транспортувати N ідентичних пакетів (рисунок 1). У випадку UDP від передавача до точки розгалуження передається тільки один пакет, що зменшує завантаження даної ділянки в N раз (рисунок 2). Причому аналогічна економія може бути реалізована й по шляху до чергової точки розгалуження (дивися опис протоколу мультикастинг-маршрутизації PIM).

 

Рисунок 1

Рисунок 2

У прикладі на рисунку 2 на ділянці 1 зниження трафіку в порівнянні із традиційним методом передачі даних відбувається в 8 разів, на ділянці 2 - в 4 рази, а на сегментах 3 - у два рази.

Всю безліч протоколів Інтернет можна поділити на дві групи. До першої відносяться ті, що мають власний стандарт на формат пакетів (IP, UDP, TCP, ARP, RARP, RTP, RIP, OSPF, BGP, IGRP, ICMP, SNMP, DNS, PIM, IGMP, BOOTP, IPX/SPX, AAL й ін.). Другу групу утворюють протоколи, які формалізують обмін на рівні повідомлень. Вони не мають своїх форматів на пакети, а стандартизують лише форму повідомлень й алгоритм обміну. Друга група використовує для передачі своїх повідомлень протоколам першої групи. До цієї групи відносяться SMTP, NTP, POP, IMAP, FTP, HTTP, RSVP, Telnet, Finger, NNTP, Whois, SET, SSL тощо. Власне кажучи, друга група розташовується на прикладному рівні. Перша група більш консервативна й досить добре структурована, друга - динамічна й постійно розширюється. До другої групи примикають деякі стандартизовані утиліти типу ping, traceroute, а також пошукові системи. У перспективі -протоколи для інтерфейсів баз даних і мультимедіа. Особняком розташовуються алгоритми забезпечення безпеки.

Але чим більше протоколів використовується, чим складніше стає технологія, тим вона стає менш надійною.