![]() |
|
|
Перейти на главную Журналы Адреса 00000000 и ООО 11111 запрещены, так как соответствующий адрес компьютера будет состоять только из нулей или только из единиц. Если применить рассмотренную маску к адресу сети класса С 192.113.255.0, то адреса компьютеров в первой подсети окажутся в диапазоне от 192.113.255.1 до 192.113.255.30 Какими будут адреса компьютеров в каждой подсети? Адрес первой подсети -ООО. Так как IP-адрес записывается в виде десятичных чисел, разделенных точками, нужно подсчитать, сколько адресов можно записать при помощи 8-битного двоичного числа, начинающегося с ООО, а затем перевести это число в десятичный формат от 00000001 до 00011110 или 1-30 в десятичном формате. При использовании этой маски вторая подсеть будет иметь адрес 001. Диапазон возможных адресов компьютеров в этой сети: от 00100001 до 00111110 или 33-62 в десятичном формате. Адреса компьютеров во второй подсети будут расположены в интервале от 192.113.255.33 до 192.113.255.62. Адрес третьей подсети - 010, а адреса компьютеров в ней будут находиться в диапазоне: от 01000001 до 01011110 или от 65 до 94 в десятичном формате. Компьютеры в третьей подсети могут иметь адреса в диапазоне от 192.113.255.65 до 192.113.255.94. Продолжая вычисления для оставшихся подсетей (от 011 до 111), получим, что всего будет существовать 8 подсетей с 30-ю адресами компьютеров в каждой. Вы можете разбить адресное пространство на более мелкие блоки, использовав для маски 6 бит адреса. При этом в каждой подсети останется по два возможных адреса компьютера (поскольку нельзя назначать адреса, состоящие только из нулей или единиц). Но создавать такие подсети не слишком практично. Формат 1Р-датаграммы После получения кадра сетевым адаптером на физическом уровне заголовок кадра, который не имеет отношения к протоколу IP, удаляется, и IP-пакет передается вверх по стеку протоколов. На рис. 2.4 представлен формат IP-пакета. Так, для создания подсетей с 30 компьютерами в каждой нужно записать число 30 в двоичной форме - 11110. Его запись требует 5 бит, поэтому после вычитания этого числа из 8 для маски останется только 3 бита (8 - 5 = 3). Значение маски в двоичном представлении будет равно 11100000 (224 в десятичной форме). Сколько подсетей можно создать при помощи такой маски? Для обозначения подсети нужно лишь 3 бита, и максимальное число, которое можно записать с их помощью, - 7 (двоичное число 111 равно десятичному числу 7). Если включить О, то получится, что возможных адресов подсетей всего 8. Итак, маска 255.255.255.224 для сети класса С позволяет создать 8 подсетей, каждая из которых может содержать до 30 компьютеров.
Рис. 2.4. Заголовок 1Р-датаграммы содержит информацию, которую может использовать фильтр пакетов Когда уровень IP получает датаграмму, он не располагает информацией из заголовка кадра и берет сведения из IP-заголовка. Для понимания принципов работы фильтра пакетов важно знать формат IP-заголовка включающий из себя следующие поля: О версия создавшего датаграмму протокола IP. Длина этого поля равна 4 битам. В настоящее время чаще всего встречается четвертая версия IP. Протокол следующего поколения называется IPv6, что соответствует версии 6. Различные версии протокола IP работают с разными форматами заголовка. Поэтому, если на принимающем конце находится более старая версия протокола, чем записанная в заголовке, пакет будет отброшен. Поскольку сейчас большинство стеков поддерживают четвертую версию IP, это происходит довольно редко; О длина заголовка Internet (Internet Header Length, IHL). Содержит длину заголовка пакета и позволяет вычислять в программе положение данных в датаграмме. Длина задается числом 32-битных слов. Длина этого поля равна 4 битам; О тип сервиса. Это 8-битное поле было создано для того, чтобы можно было определить, как следует обрабатывать датаграмму, например, присвоить ей более высокий или низкий приоритет. Но биты этого поля не применяются ни в одной из основных реализаций четвертой версии IP, поэтому они обычно обнуляются; О длина датаграммы. С ее помощью определяется полная длина датаграммы в 8-битных октетах (или байтах). Так как длина этого поля равна 16 битам, максимальная длина пакета не может превышать 65535 байт. Вычитая из этого значения длину заголовка, можно найти длину блока данных в датаграмме; О идентификатор. Когда для пересылки по сети сообщение разбивается на несколько датаграмм (фрагментируется), для их сборки принимающая сторона должна иметь возможность распознать, какие датаграммы принадлежат к одному и тому же сообщению. Для этого и предназначено данное поле. В передающем узле для каждого посылаемого сообщения имеется уникальный идентификатор, и значение этого 16-битного поля будет одинаковым для всех датаграмм сообщения; О флаги. Поле состоит из нескольких битов флагов. Бит О зарезервирован и должен всегда иметь значение 0. Бит 1 соответствует флагу Dont Fragment (DF, запрет фрагментации). При нулевом значении данного бита разрешается фрагментация, а при единичном - запрещается. Если флаг установлен и датаграмма не может быть передана в следующий сегмент без фрагментации, она отбрасывается. Когда флаг равен О, датаграмма разбивается на несколько датаграмм меньшего размера, которые посылаются дальше. Бит 2 отвечает флагу More Fragments (MF, флаг фрагментации) и указывает статус фрагментации пакета. Если данный бит равен 1, должны быть приняты дополнительные фрагменты. В последнем фрагменте исходного сообщения флаг равен 0. Два этих поля управляют процессом фрагментации; О смещение фрагмента. Если флаг MF равен 1 (сообщение было фрагментиро-вано), поле обозначает положение фрагмента в исходном сообщении. Имеет длину 13 бит и выражает смещение в 8-байтных единицах; О время жизни (Time to Live, TTL). Определяет максимальное время (в секундах) существования датаграммы в сети. Значение поля устанавливается при создании датаграммы и уменьшается всеми узлами, через которые проходит дата-грамма. Когда значение становится равным О, датаграмма уничтожается. Это значение обязательно уменьшается каждым узлом, по крайней мере, на секунду, даже если датаграмма была обработана быстрее, чем за секунду, а на сильно загруженном компьютере оно может сократиться сразу на несколько секунд; О протокол. 8-битное поле, идентифицирующее тип протокола данных датаграммы. Стандарт Network Information Center (NIC Информационный центр сети) определяет числа, которые служат для обозначения различных протоколов. Протоколу TCP, например, соответствует значение 6; О контрольная сумма заголовка - 16-битное значение, которое используется для проверки целостности информации в заголовке. При изменении этой информации в заголовке оно вычисляется заново. Например, значение меняется, поскольку значение TTL уменьшается каждой системой, через которую проходит датаграмма; О адрес источника. IP-адрес отправителя датаграммы. Длина данного поля - 32 бита; О адрес назначения. IP-адрес получателя датаграммы, поле длиной 32 бита; О параметры - необязательное поле переменной длины со списком опций. Параметры могут быть управляющими, зарезервированными, отладочными 0 1 2 3 4 5 6 7 8 9 [10] 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 |
||||||||||||||||||||||||||||||||||||||||||||