
- •Протоколы
- •Адресация в ip сетях
- •Соглашение о специальных ip-адресах
- •Использование масок в ip-адресации
- •Протокол arp
- •Протокол rarp
- •Протокол ip версии 4
- •Фрагментация ip-датаграмм
- •Формат ip-пакета
- •Маршрутизация пакетов с помощью ip-адресов
- •Перекрывающиеся маршруты
- •Протоколы ip версии 6.
- •Адресация ip-версии 6.
- •Протокол icmp.
- •Протоколы транспортного уровня
- •Алгоритм скользящего окна
- •Таймеры, протоколы тср
- •Методология атак с использованием протокола тср
- •Протокол bootp
- •Протокол dhcp
- •Протокол http
- •Механизм аутентификации
- •Протоколы передачи файлов
- •Протокол sftp
- •Протокол ftp
- •Передача данных между передачи между ftp серверами
- •Протокол Telnet
- •Расширенный протокол smtp (esmtp)
- •Протокол рор
- •Протокол imap (получение почтовых сообщений)
Формат ip-пакета
0 4 8 16 31
Версия |
Длина заголовка |
Тип сервиса |
Полная длина |
Идентификатор | флаги 3| Указатель фрагмента |
|||
Время жизни | Протокол | КС заголовка |
|||
IP-адрес |
|||
IP-адрес получателя |
|||
Опции (если есть) | Заполнитель |
|||
Данные |
Поле «Версия»: 4бита, это поле неизменно во всех версиях протокола, в IP4 здесь стоит 4.
«Длина заголовка»: измеряется в 32-х разрядных словах, значит, здесь не может стоять число <5. (Полная длина поля 16 бит ?)
«Тип сервиса» или TOS: Характеризует то, как должна обрабатываться датаграмма. TOS состоит из суб-полей:
Приоритет |
D |
T |
R |
C |
не исп |
Подполе «Приоритет» предоставляет возможность каждой датаграмме значение приоритета.
0 – обычные пакеты;
6 – пакеты для межсетевого управления;
7 – пакеты для сетевого управления;
(Необходимо обеспечить надежную доставку и работу сети)
DTRC определяют способ доставки датаграммы, в единицу должен быть всегда установлен только один из них.
D=1 – минимальная задержка
Т=1 –высокая пропускная способность
R=1 – высокая надежность
C=1 – низкая стоимость
Ряд протоколов маршрутизации (OSPF, IGRP) учитывают эти биты при проложении оптимального маршрута. Отправитель устанавливает эти биты в зависимости от протокола прикладного уровня (для Telnet важно время отклика => D=1; для SNMP важна надежность => R=1; для FTP важна максимальная пропускная способность => T=1).
«Идентификатор»: заполняется отправителем и на хосте получателя это поле-идентификатор, а также IP-адреса отправителя и получателя и поле «Протокол» служат для сборки фрагментированных датаграмм.
«Флаги»: 3бита.
0-бит зарезервирован.
1-бит (DF), если 0 – датаграмму можно фрагментировать, иначе нельзя
2-бит (MF), если 0, то это последний фрагмент датаграммы, иначе есть следующие фрагменты.
«Указатель фрагмента»: 13 бит. Это поле показывает, где в исходной датаграмме расположен фрагменты, которые заполняются по мере прихода инф-ции, если они заполнены, то происходит отправка, если время заполнения истекло, а фрагменты не заполнены, то передача отбрасывается, и отправителю посылается ICMP сообщение, что датаграмму не удалось собрать. Смещение задается в 64-битных блоках.
«Время жизни»: Определяет верхнее значение периода времени, в течение которого датаграмма может находиться в сети. Устанавливается отправителем. На каждом маршрутизаторе это поле уменьшается на 1, и за каждую секунду, которую пакет провел в очередях мрашрутизатора (ов?). Когда это поле станет 0, тогда датаграмма отбросится, а маршрутизатор отправляет отправителю об исчерпанном лимите времени.
«Протокол»: 8 бит. Содержит число, определяющее тип протокола верхнего уровня, например:
1 – ICMP
4 – IP
6 – TCP
17 – UDP
IP-датаграмма может инкапсулироваться в IP-датаграмму. (IPSEC туннельный режим)
«Контрольная сумма (КС) заголовка»: весь заголовок разбивается на 16-и разрядные слова, которые складываются, затем от полученной суммы берутся младшие 16 бит, находится дополнительный код, это и есть контрольная сумма.
«Опции»: поле дополнительных параметров, может быть переменной длины. Опциями протокола IP:
1) Данные аутентификации
2) Список маршрутизаторов до места назначения
3) Структуры, где будут записываться адреса проходимых маршрутизаторов с временными метками
«Заполнитель»: выравнивает опции на границу 32 байта, представляет собой двоичные нули.