wd wp Пошук:

IPv4

IPv4 (англ.: Internet Protocol version 4) — чацвёртая версія IP-пратакола, першая шырока ўжывальная версія. Пратакол апісаны ў RFC 791 (верасень 1981 года), замяніўшы RFC 760 (студзень 1980 года).

Адрасацыя

IPv4 выкарыстоўвае 32-бітныя (чатырохбайтныя) адрасы, якія абмяжоўваюць адрасную прастору 4 294 967 296 (232) магчымымі ўнікальнымі адрасамі.

Зручнай формай запісу IP-адраса (IPv4) з’яўляецца запіс у выглядзе чатырох дзесятковых лікаў (ад 0 да 255), падзеленых кропкамі, напрыклад, 192.168.0.1. (ці 128.10.2.30 — традыцыйная дзесятковая форма ўяўлення адрасу)

Уяўленне адрасу

Форма запісуПрыкладПераўтварэнне з дзесятковай натацыі з кропкамі
Дзесятковая з кропкамі (англ.)192.0.2.235
Шаснаццатковая з кропкамі0xC0.0x00.0x02.0xEBКожны актэт пераўтвараецца ў шаснаццатковую форму
Васьмярковая з кропкамі0300.0000.0002.0353Кожны актэт пераўтвараецца ў васьмярковую форму
Шаснаццатковая0xC00002EBКанкатэнацыя актэтаў з шаснаццатковай натацыі з кропкамі
Дзесятковая322122621932-бітны лік у дзесятковай форме
Васьмярковая03000000135332-бітны лік у васьмярковай форме

Зарэзерваваня адрасы

Некаторыя адрасы IPv4 зарэзерваваны для спецыяльных мэтаў і не прызначаны дзеля глабальнай маршрутызацыі[1].

ПадсеткаПрызначэння
0.0.0.0/8[2]Адрасы крыніц пакетаў «гэтай» («сваёй») сеткі прызначаны для лакальнага ўжывання на хосце пры стварэнні сокетаў IP. Адрас 0.0.0.0/32 выкарыстоўваецца дзеля пазначэння адрасу крыніцы самаго хосту.[1]
10.0.0.0/8[3]Дзеля ўжывання ў прыватных сетках.
127.0.0.0/8[2]Падсетка дзеля камунікацый унутры хосту (гл.: localhost).
169.254.0.0/16[4]Канальныя адрасы; падсетка выкарыстоўваецца для аўтаматычнага канфігуравання адрасоў IP у выпадку адсутнасці сервера DHCP.
172.16.0.0/12[3]Для ўжывання ў прыватных сетках.
100.64.0.0/10[5]Для ўжывання ў сетках сервіс-правайдэра.
192.0.0.0/24[6]Рэгістрацыя адрасоў спецыяльнага прызначэння.
192.0.2.0/24[7]Для ўзораў у дакументацыі.
192.168.0.0/16[3]Для ўжывання ў прыватных сетках.
198.51.100.0/24[7]Для ўзораў у дакументацыі.
198.18.0.0/15[8]Для стэндаў тэставання прадукцыйнасці.
203.0.113.0/24[7]Для ўзораў у дакументацыі.
240.0.0.0/4[2]Зарэзервавана для ўжывання ў будучыні.
255.255.255.255[9]Абмежаваны шырокавяшчальны адрас.

Ёсць таксама рарэзерваваныя адрасы, якія маршрутызуюцца глабальна.

ПадсеткаПрызначэнне
192.88.99.0/24[1]Ужываюцца дзеля рассылкі бліжэйшаму вузлу. Адрас 192.88.99.1/32 ужываецца ў якасці рэтранслятара пры інкапсуляцыі IPv6 у IPv4 (6to4)[10].
224.0.0.0/4[11]Выкарыстоўваюцца для шматадраснай рассылкі.

Структура пакету

Пакет IP змяшчае 14 палёў, з якіх 13 з’яўляюцца абавязковымі. Чатырнаццатае поле прызначана для неабавязковых опцый. Палі ўжываюць парадак байтаў ад старэйшага да малодшага, старэйшыя біты ідуць першымі. Першы біт мае нумар 0. Такім чынам, напрыклад, поле з версіяй знаходзіцца ў чатырох старэйшых бітах першага байта.

Зрушэнне ў бітах 0-34-78-1314-1516-1819-31
0 Версія Памер загалоўка Differentiated Services Code Point Explicit Congestion Notification Памер пакета
32 ІдэнтыфікатарФлагиЗрушэнне фрагмента
64 Час жыццяПратаколКантрольная сума заголоўка
96 Адрас крыніцы
128 Адрас прызначэння
160 Опцыі (калі памер загалоўка > 5)
160 или 192+ Даныя

ВерсіяПершым полем пакета з’яўляецца версія пратакола памерам у чатыры біта. Для IPv4 гэта 4. Памер загалоўка (Internet Header Length)Наступныя чатыры біта змяшчаюць памер загалоўка пакета у 32-бітных словах. Паколькі колькасць опцый ня сталая, указанне памера важна для адлучэння заголоўка ад даных. Мінімальнае значэнне роўнае 5 (5×32=160 біт, 20 байт), максімальнае — 15 (60 байт). Differentiated Services Code Point (DSCP) Першапачаткова звалася «тып абслугоўвання» (Type of Service, ToS), у цяперашні час вызначаецца RFC 2474 як «Differentiated Services». Ужываецца для падзялення трафіка на класы абслугоўвання, напрыклад для ўсталёўкі адчувальнаму да затрымак трафіку, такому як VoIP большага прыярытэту. Указальнік перагрузкі (Explicit Congestion Notification, ECN)Папярэджанне аб перагрузцы сеткі без страты пакетаў. З’яўляецца неабавязковай функцыяй і ўжываецца толькі калі абодва хоста яе падтрымліваюць. Памер пакета16-бітны поўны памер пакета ў байтах, уключаючы загаловак і даныя. Мінімальны памер роўны 20 байтам (зашаловак без даных), максімальны — 65535 байт. Хосты павінны падтрымліваць перадачу пакетаў памерам да 576 байт, але сучасныя рэалізацыі звычайна падтрымліваюць значна большы памер. Пакеты большага памера, чым падтрымлівае канал сувязі, фрагментуюцца. ІдэнтыфікатарПераважна ўжываецца для ідэнтыфікацыі фрагментаў пакету, калі ён быў фрагментаваны. Існуюць эксперыменты па яго ўжыванню для іншых мэтаў, такіх як даданне інфармацыі аб трасіроўцы пакета для спрашчэння адсочвання шляха пакета з падробным адрасам крыніцы.[12] ФлагіПоле памерам тры біта змяшчае флагі кантролю над фрагментацыяй. Біты ад старэйшага да малодшага азначаюць:

Калі ўсталяваны флаг «не фрагментаваць», то ў выпадку неабходнасці фрагментацыі такі пакет будзе знішчаны. Можа ўжывацца для перадачы даных хостам, якія ня маюць досыць рэсурсаў для апрацоўкі фрагментаваных пакетаў. Флаг «ёсть фрагменты» павінен быць усталяваны ў 1 ва ўсіх фрагментаў пакета, акрамя апошняга. У нефрагментаваных усталёўваецца ў 0 — такі пакет лічыцца ўласным апошнім фрагментам. Зрушэнне фрагментаПоле памерам у 13 біт, указвае зрушэнне бягучага фрагмента ад пачатка перадачы фрагментаванага пакета ў блоках па 8 байт. Дазваляе (213−1)×8=65528 байт зрушэння, што перавышае максімальны памер пакета. Першы фрагмент у паслядоўнасці мае нулявое зрушэнне. «Час жыцця» (Time to Live, TTL) пакета.Дазваляе перадухіліць закальцоўванне пакетаў у сеціве шляхам знішчэння пакетаў, якія перавысілі час жыцця. Указваецца ў секундах, інтэрвалы менш секунды акругляюцца да адной секунды. На практыцы кожны маршрутызатар змяньшае час жыцця пакетаў на адзінку (што слушна для існуючых тыповых затрымак у сеціве). Пакеты, час жыцця якіх стаў роўны нулю, знішчаюцца, а адпраўніку дасылаецца паведамленне ICMP Time Exceeded. На адпраўцы пакетаў з розным часам жыцця заснавана трасіроўка іх шляха праходжання (traceroute). ПратаколУказвае, даныя якога пратакола змяшчае пакет (напрыклад, TCP ці ICMP). Прысвоеныя нумары пратаколаў можна знайсці на сайце IANA.[14] Кантрольная сума загалоўка16-бітная кантрольная сума, ужываецца для праверкі цэласнасці загалоўка. Кожны хост ці маршрутызатар параўноўвае кантрольную суму загалоўка са значэннем гэтага поля і адкідвае пакет, калі яны не супадаюць. Цэласнасць даных IP не правярае — яна правяраецца пратаколамі больш высокіх узроўняў (такіх як TCP ці UDP), якія таксама выкарыстоўваюць кантрольныя сумы. Паколькі TTL памяньшаецца на кожным кроку праходжання пакета, сума таксама павінна вылічацца на кожным кроку. Метад пераліку кантрольнай сумы вызначаны ў RFC 1071.[15] Адрас крыніцы32-бітны адрас адпраўніка пакета. Можа не супадаць з сапраўдным адрасам адпраўніка з-за трансляцыі адрасоў. Адрас прызначэння32-бітны адрас атрымальніка пакета. ОпцыіЗа адрасам прызначэння можа ісці поле дадатковых опцый, але яно ўжываецца рэдка. Памер загалоўка ў гэтым выпадку павінен быць дастатковым, каб змясціць усе опцыі (з улікам дадатку да цэлага ліку 32-бітных слоў). Калі спіс опцый не з’яўляецца канцом загалоўка, ён павінен сканчацца опцыяй 0x00. Опцыі маюць наступны фармат:

ПолеПамер у бітахАпісанне
Капіяваць1Усталёўваецца ў 1, калі патрэбна капіяваць опцыі ў загалоўкі ўсіх фрагментаў.
Клас опцыі20 для «кіравальных» опцый і 2 для опцый «зменаў і адладкі». 1 і 3 зарэзерваваны.
Нумар опцыі5Указвае опцыю.
Памер опцыі8Указвае памер опцыі (з улікам гэтага поля). Можа не ўказвацца для опцый без аргументаў.
Аргументы опцыіпераменныДадатковыя даныя, якія ўжываюцца опцыяй.

Вычарпанне адраснай прасторы

Асноўны артыкул: Вычарпанне IPv4-адрасоў Ужо ў 1980-я гады стала відавочна, што размеркаванне адраснай прасторы адбываецца значна болей хуткімі тэмпамі, чым было заложана ў архітэктуру IPv4. Гэта прывяло спачатку да з’яўлення класавай адрасацыі, пазней бяскласавай адрасацыі, і ў канчатковым выніку да распрацоўкі новага пратакола IPv6.

У лютым 2011 года IANA выдаткавала 5 апошніх блокаў адрасоў RIRам. Блокі вольных IP-адрасоў пачалі заканчвацца ў рэгіянальных рэгістратараў з 2011 года.[16]

Гл. таксама

Партал:
Камп’ютарныя сеткі

Зноскі

  1. 1 2 3 RFC3330: Special-use IPv4 addresses(англ.) ; заменены RFC5735: Special-use IPv4 addresses(англ.)
  2. 1 2 3 RFC1700: Assigned Numbers(англ.)
  3. 1 2 3 RFC1918: Address allocation for private internets(англ.)
  4. RFC3927: Dynamic configuration of IPv4 link-local addresses(англ.)
  5. RFC6598: IANA-reserved IPv4 prefix for shared address space(англ.)
  6. RFC5736: IANA IPv4 Special Purpose Address Registry(англ.)
  7. 1 2 3 RFC5737: IPv4 address blocks reserved for documentation(англ.)
  8. RFC2544: Benchmarking methodology for network interconnect devices(англ.)
  9. RFC919: Broadcasting internet datagrams(англ.)
  10. RFC3068: An anycast prefix for 6to4 relay routers(англ.)
  11. RFC3171: IANA guidelines for IPv4 multicast address assignments(англ.)
  12. Stefan Savage. Practical network support for IP traceback. Праверана 6 верасня 2010.
  13. У якасці першакрасавіцкага жарта прапанаваны азначаць зламыснасць пакета (evil bit)
  14. Assigned Internet Protocol Numbers(англ.)
  15. Computing the Internet Checksum(англ.)
  16. IPv4 Address Report
Тэмы гэтай старонкі (2):
Катэгорыя·TCP/IP
Катэгорыя·Пратаколы сеткавага ўзроўню