ICMPv6

Internet Control Message Protocol version 6 (ICMPv6) е имплементацијата на Internet Control Message Protocol (ICMP) за Internet Protocol version 6 (IPv6) дефинирана во RFC 4443. ICMPv6 e интегрален дел од IPv6 и извршува пријавување на грешки, дијагностички фукции, и фрејмворк за екстензии за имплеметација на идни промени.
Објавени се неколку екстензии, кои дефинираат нови ICMPv6 типови на пораким како и нови опции за веќе постоечки типови. NDP е протокол за откривање на јазли во IPv6 кој ги заменува и збогатува функциите од ARP. SEND е екстензија на NDP со додатна сигурност. MDR дозволува откривање на мултикаст насочувачи.
1 Технички детали
ICMPv6 пораките можат да бидат класифицирани во две категории: пораки за грешки и пораки за информации.
ICMPv6 пораките се транспортираат со IPv6 пакети во кои IPv6 Next Header вредноста е 58.
2 Формати на пакети
ICMPv6 пакетот се содржи од заглавие и содржина на протоколот. Заглавието се содржи од три полиња: тип (8 бита), код (8 бита) и контролен збир (16 бита). „Тип“ го укажува типот на порака. Вредностите кои се движат од 0 до 127 се пораки за грешка, додека вредностите од 128 до 255 определуваат информациска порака. Вредноста во полето „код“ зависи од типот на пораката и овозможува додатно ниво на грануларност на порака. Полето „контролен збир“ овозможува минимално ниво на заверка на интегритетот на ICMP пораката.
+ICMPv6 пакет
Битово отстапување, 0–7, 8–15, 16–31
0, Тип, Код, Контролен збир
32, Тело на пораката
3 Типови ICMPv6 пораки
Тип, Код
Value, Meaning, Value, Значење
ICMPv6 пораки за грешка
1, Destination Unreachable, 0, нема пат до одредиштето
1, комуникација со одредиштето е забранета од администрација
2, надвор од распонот на изворната адреса
3, адресата е недостапна
4, портот е недостапен
5, изворната адреса падна на ingress/egress полиса
6, одбиена патеката до одредиштето
7, грешка во изворното насочувачко заглавје
2, Packet Too Big, 0
3, Time Exceeded, 0, лимитот на скокови е престигнат
1, времето за составување на фрагменти е преминато
4, Parameter Problem, 0, грешно поле за заглавје
1, непрепознаен Next Header тип
2, непрепознаена IPv6 опција
100, Private experimentation
101, Private experimentation
127, резервирано за проширување на ICMPv6 пораки
ICMPv6 информациски пораки
128, Echo Request, 0
129, Echo Reply, 0
130, Multicast Listener Query, 0
131, Multicast Listener Report, 0
132, Multicast Listener Done, 0
133, Router Solicitation (NDP), 0
134, Router Advertisement (NDP), 0
135, Neighbor Solicitation (NDP), 0
136, Neighbor Advertisement (NDP), 0
137, Redirect Message (NDP), 0
138, Router Renumbering, 0, Команда за пребројување на насочувачи
1, Резултат од пребројување на насочувачи
255, Рестартирање на број на секвенца
139, ICMP Node Information Query, 0, Полето за податоци содржи IPv6 адреса која е субјект во ова барање
1, Полето за податоци содржи име кое е субјект во ова барање, или полето е празно
2, Полето за податоци содржи IPv4 адреса која е субјект во ова барање
140, ICMP Node Information Response, 0, Успешен одговор.
1, Полето за одговор ќе биде празно.
2, Qtype на барањето е непознато од одговарачот
141, Inverse Neighbor Discovery Solicitation Message, 0
142, Inverse Neighbor Discovery Advertisement Message, 0
143, Multicast Listener Discovery (MLDv2) reports (RFC 3810)
144, Home Agent Address Discovery Request Message, 0
145, Home Agent Address Discovery Reply Message, 0
146, Mobile Prefix Solicitation, 0
147, Mobile Prefix Advertisement, 0
148, Certification Path Solicitation (SEND)
149, Certification Path Advertisement (SEND)
151, Multicast Router Advertisement (MRD)
152, Multicast Router Solicitation (MRD)
153, Multicast Router Termination (MRD)
155, RPL Control Message
200, Private experimentation
201, Private experimentation
255, Reserved for expansion of ICMPv6 informational messages
Моменталната целосна листа може да биде најдена на следниот линк: .
4 Операција
4.1 Контролен збир на пораки
ICMPv6 добавува само минимален степен на заштита и заверка на интегритетот на пораките, преку вклучувањето на 16-битни суми за проверки во заглавјето на пораките. Овој збир се пресметува почнувајќи со псевдо-заглавје за IPv6 полињата, според IPv6 стандардот, којшто се состои од изворот и одредиштате за пораките, како и од должината на пакетите и последното поле во заглавјето, кое е по дефиниција 58. Следејќи го ова псевдо-заглавје, збирот се продолжува со ICMPv6 пораката, во која збирот е почетно поставен на 0. Збирот се пресметува според IP стандардите користејќи 16-битен единечен комплемент, продолжено со комплементирањето на самиот збир и внесувајќи ја во соодветното поле. Забележете дека ова се разликува од начинот на којшто збирот се пресметува за IPv4 во ICMPv4, но е многу слично со пресметките во TCP.
+ICMPv6 псевдо-заглавје
Битово отстапување, 0 - 7, 8–15, 16–23, 24–31
0, Изворна адреса
32
64
96
128, Дестинациска адреса
160
192
224
256, ICMPv6 должина
288, Нули, Следно заглавје
4.2 Обработка на порака
Кога ICMPv6 јазол ќе прими пакет, мора да преземе акции што зависат од типот на пораката. ICMPv6 протоколот мора да го ограничи бројот на пораки за грешки пратени до исто одредиште, за да се избегне преоптоварување на мрежата. На пример, ако јазол продолжува да препраќа пораки за грешка, ICMP ќе ја сигнализира грешката на првиот пакет, и ќе продолжи да го прави тоа периодично, со фиксен минимум период, или со фиксен максимум товар на мрежата. ICMP порака за грешка никогаш не смее да се прати како одговор на друга ICMP порака за грешка.