Добро пожаловать! Это — архивная версия форумов на «Хакер.Ru». Она работает в режиме read-only.
 

Уроки по локальным сетям #2

Пользователи, просматривающие топик: none

Зашли как: Guest
Все форумы >> [Для начинающих] >> Уроки по локальным сетям #2
Имя
Сообщение << Старые топики   Новые топики >>
Уроки по локальным сетям #2 - 2010-03-30 00:55:43.056666   
Refresh

Сообщений: 606
Оценки: 0
Присоединился: 2006-04-08 20:00:54
Критику, предложения кидать в ПМ.


На первом уроке мы познакомимся с основными понятиями.
Что вообще такое сеть?
Компьютерная cеть- это физическая связь двух и более компьютеров между собой, в сети ткаже может стоят переферейное оборудование к которому может обратиться любой член этой сети.

Сети различают по размеру, существую следующие понятия размеров сети:
1)Lan (Local Area Network, ЛВС (Локальная Вычислительная Сеть)) - компьютерная сеть, сравнительно небольшого размера (дом, офис, ВУЗ, и т.д.)
2)MAN (Metropolitan area network, ГВС (Глобальная Вычислительная сеть))- компьютерная сеть, посторенная в масштабах одного города. Например каждый провайдер пытается построить свою MAN сеть, для осуществления своих услуг.
3)WAN (Wide Area Network, ГВС (Глобальная Вычислительная Сеть)) — компьютерная сеть, которая имеет мировые масштабы, одним из примеров является Интернет.


Oборудование с помощью которых строятся сети любого вида.
Для создания сети вам нужны ПК с устаноленными сетевыми картами,сетевое оборудование,ОС которая позволяет работать в сети (практически все ОС имеют эту возможность)
ну с сетевыми картами все понятно, все их видели и все знают что они делают, по этому мы это опустим.
Основное сетевое оборудование:
1) Хаб (HUB) - коммутационное оборудование, задаче его в том что он соединяет все пк которые с ним соеденены. При оправке пакета с одного ПК хаб рассылает его на все свои порты, а компьютер которому он предназначен сам его примет, остольные принимать не будут.
2) Свитч (Swith) - коммутационное оборудование, задача у него такая же как и у хаба, только свитч посылает принятый им пакет именно на тот порт к которому подключен адресат, для этого он использует ARP(с ним мы познакомимся позже).
3) Маршрутизатор(Router) - коммутационное оборудование, выполняет разные задачи, например соединение нескольких подсетей и именно он будет отсветвенным за движение пакетов между ними, следую таблице маршрутизации.



Модель OSI
Модель OSI это стандарт разработаный Международной организацией по стандартам (International Standardization Organization - ISO). Она была создана для того, чтобы различные системы могли общаться и получать доступ к друг другу в одной сети. В теории любая ОС должна соответствовать этому стандарту.
Модель состоит из 7 уровней, на каждом из уровне с данными происходит отдельная обработка.



Разберем коротко каждый из уровней:

1) Физический уровень(Physical layer) это один из двух уровней на котором работает ваша сетевая карта. этот уровень отвечает за то чтобы получить кадр от канального уровня и передать его по какой либо физической среде. Например, витая пара, оптоволокно, радиоканал.Так же на этом уровне работают такие устройства как HUB (концентратор, не путать со Switch) и простейшие повторители.

2)Канальный уровень (Data Link layer) это второй уровень на котором работает ваша сетевая карта. Он отвечает за целостность кадров. т.е. при приеме сообщения, полученный с физического уровня данные он упаковывает в кадры, проверяет на целостность и , если все впорядке, передает дальше на сетевой уровень. Канальный уровень делится на два под-уровня MAC и LLC. На этом уровне работают такие устройства как Switch (коммутатор) и Bridge (мост)

3)Сетевой уровень (Network layer) третий уровень на котором происходит маршрутизация всего трафика. Очень важный уровень, впрочем, как и остальные =) На этом уровне определяются правильные и самые короткие маршруты от источника к приемнику. На этом же уровне происходит преобразование IP адресов в MAC. На этом уровне работаю такие устройства как маршрутизаторы.
(Подробнее о IP адресах и азах маршрутизации будет попозже)

4)Транспортный уровень (Transport layer) четвертый уровень на котором происходит передача данных, на этом уровне работают два основных протокола из стека протоколов TCP/IP - TCP и UDP.

5)Сеансовый уровень (Session layer) пятый уровень отвечает за установление, поддержание, разрыв сеансов связи которые используют высшие уровни.

6)Уровень представления (Presentation layer) шестой уровень который отвечает зато что бы удаленные компьютеры "поняли" друг-друга. На этом уровне происходит кодирование\декодирование данных.

7)Уровень приложений (Application layer) высший уровень который все время "перед глазами". На этом уровне работают все приложения, которые взаимодействую с сетью. Например браузер, почтовик, аська.

Топологии локальных сетей.
топология - вид локальной сети.
топология может зависить от используемого оборудования например для сети постоенноой с использование витой пары не очень удобно и целлесообразно будет использовать топологию шина, кольцо.
самы распространеные сейчас это:
а) звезда (http://ru.wikipedia.org/wiki/Звезда_(топология_компьютерной_сети))
б) дерево (http://ruseti.ru/book4/Glava%201/Index6.htm)
Post #: 1
RE: Уроки по локальным сетям #2 - 2010-03-30 01:40:43.173333   
iidsp

Сообщений: 379
Оценки: 0
Присоединился: 2009-10-14 23:13:19.856666
Какой бы я хотел видеть данную статью:
во-1х, в данная статье собрано множество базовых терминов, которые компактно собраны в одном месте! это хорошо, но это же не справочник, верно? Для усиления усвояемости, необходимо что бы каждый термин по возможности содержал картинку. Мало ли кто-то не знает что такое хаб, а тут раз, посмотрел и радуешься =) к черту гугл, там каждый найдет что надо. Но раз ваш текст претендует на статью, которая мб, по вашему мнению, должна отличаться от миллиона подобных, то делайте ее по максимуму простой и наглядной.
Просто получается, что то же самое можно прочитать и у Олифера, тогда зачем читать вашу статью?

во-2, старайтесь писать о чем-то так, как если бы вы объясняли это своей бабушке… я не шучу!!! Очень мало статей, которые простым языком доносят суть… многие пишут статьи в меру своего понимания, не думая о мере понимания читающих! не надо переписывать технический текст - поясните своими словами - это бывает наиболее ценно.
Если то, что я написал вас заинтересовало, навело на мысль, то доработайте по возможности эту статью…
Post #: 2
RE: Уроки по локальным сетям #2 - 2010-03-30 17:08:47.490000   
Barkass$

Сообщений: 1854
Оценки: 40
Присоединился: 2008-11-11 12:19:45.216666
Повторение мать учения. Первый урок мне понравился. Все доступно и понятно. Продолжай в том же духе…
Post #: 3
RE: Уроки по локальным сетям #2 - 2010-03-30 17:47:56.403333   
maxim911

Сообщений: 30
Оценки: 0
Присоединился: 2010-03-24 16:16:54.450000
всё ясно спасибо большое:)
Post #: 4
RE: Уроки по локальным сетям #2 - 2010-03-30 17:49:03.010000   
maxim911

Сообщений: 30
Оценки: 0
Присоединился: 2010-03-24 16:16:54.450000
мне понравилось8|8|
Post #: 5
RE: Уроки по локальным сетям #2 - 2010-03-30 18:01:52.933333   
Barkass$

Сообщений: 1854
Оценки: 40
Присоединился: 2008-11-11 12:19:45.216666
Не флуди в теме. Отписывать можно только пожелания, и задавать вопросы связанные с конкретным уроком.
p.s. для многократного благодарства есть строка редактирования, либо слег "Оценить пост".
Post #: 6
RE: Уроки по локальным сетям #2 - 2010-03-30 18:11:24.703333   
iidsp

Сообщений: 379
Оценки: 0
Присоединился: 2009-10-14 23:13:19.856666
А я считаю, что это плохая статья - ее целевая аудитория не те, на кого автор рассчитывал. Если бы он с большей степенью детализировал описанные термины, то статья была бы хороша.
Раздел для Новичков ни как не говорит о том, что эти новички уже должны знать что такое "периферийное оборудование", "что делают сетевые карты", "кадр", "OSI" и т.д. Я еще раз говорю, автор, попробуй рассказать эту статью родителям…
Статья не для новичков, а те кто уже это знает - зачем им это читать?
Post #: 7
RE: Уроки по локальным сетям #2 - 2010-03-30 18:35:48.353333   
Barkass$

Сообщений: 1854
Оценки: 40
Присоединился: 2008-11-11 12:19:45.216666
Возможно ты прав за
quote:

ее целевая аудитория не те, на кого автор рассчитывал.
но никак не
quote:

это плохая статья


Ref сделай им картинки и цветные, выделенные БуКоВкИ :) Можно вместо картинок сделать линки на подробно описание, как iidsp указал тут:
quote:

необходимо что бы каждый термин по возможности содержал картинку. Мало ли кто-то не знает что такое хаб
(Сделай им ссылку на википедию :D)
Post #: 8
RE: Уроки по локальным сетям #2 - 2010-03-30 18:50:47.090000   
selevs

Сообщений: 32
Оценки: 0
Присоединился: 2010-01-23 20:39:45.446666
Если данную статью дать прочитать (заставить прочитать) на пример: учительницу литературы, или даже учительницу математики, а потом предложить ей соединить две - три машины через хаб, то они обе не смогут это сделать. Статья для начинающих, но для начинающих сисадминов.
Post #: 9
RE: Уроки по локальным сетям #2 - 2010-03-30 18:51:50.973333   
iidsp

Сообщений: 379
Оценки: 0
Присоединился: 2009-10-14 23:13:19.856666
quote:

(Сделай им ссылку на википедию :D)

А я не вижу в этом ни чего смешного.
Ты сам то вот на секунду подумай, зачем кому-то читать эту статью? Что бы узнать, что у ISO 7 уровней и дальше пойти искать ссылки на эти уровни, где было бы написано лучше, подробнее, понятнее? Тогда зачем эта статья, если где-то лучше есть?
Как меня учили в универе на начальных курсах, если что-то делаешь, то делаешь это с упором на то, что результатом твоих действий будет самая лучшая статья, изделие, код, что угодно… неважно, что часто это не так, но это правильный подход к делу!!!
Ты же сам знаешь, чем плохи многие учебники… Тем, что авторы пишут там очень недоступным языком. Меня всегда напрягали учебники по матану, когда автор писал - "после небольших математических преобразований имеем…", фигня, что эти преобразования занимают пол страницы - ему главное сэкономить. Зачем повторять подобные ошибки? тут не на чем экономить!
Post #: 10
RE: Уроки по локальным сетям #2 - 2010-03-30 19:01:35.610000   
Barkass$

Сообщений: 1854
Оценки: 40
Присоединился: 2008-11-11 12:19:45.216666
Ладно… эта дискусия может длиться большое кол-во времени. В принципе то что, статью нужно как то выделить, ты прав. Думаю Ref понял суть.
Post #: 11
RE: Уроки по локальным сетям #2 - 2010-03-30 19:02:52.123333   
Barkass$

Сообщений: 1854
Оценки: 40
Присоединился: 2008-11-11 12:19:45.216666
quote:

может таки "радиоканал"? )

Просто он задумался, и написал языком который понятен нам)
Post #: 12
RE: Уроки по локальным сетям #2 - 2010-03-30 19:07:37.256666   
iidsp

Сообщений: 379
Оценки: 0
Присоединился: 2009-10-14 23:13:19.856666
quote:

Ладно… эта дискусия может длиться большое кол-во времени. В принципе то что, статью нужно как то выделить, ты прав. Думаю Ref понял суть.

 Я же не от нечего делать пишу то, что думаю - мне просто хочется, что бы контент был качественным, а не походил на тот, что пачками в сети постят все кому не лень. Думаю, что ты меня понимаешь!
Post #: 13
RE: Уроки по локальным сетям #2 - 2010-03-30 19:30:37.356666   
Refresh

Сообщений: 606
Оценки: 0
Присоединился: 2006-04-08 20:00:54
Ого =) спасибо Barkass$ за поддержку, iidsp за реально конструктивную критику, и конечно пашу. действительно надо использовать слово радиоканал. Если никто не возражает то завтра дополню, есть идеи как. сегодня простите, но немогу, работы на всю ночь
Post #: 14
RE: Уроки по локальным сетям #2 - 2010-03-30 19:38:25.103333   
iidsp

Сообщений: 379
Оценки: 0
Присоединился: 2009-10-14 23:13:19.856666
quote:

Если никто не возражает то завтра дополню, есть идеи как. сегодня простите, но немогу, работы на всю ночь

ни кто и не торопит, не спеши, написав текст, дай почитать другим - тем, кто плохо это понимает, а потом выкладывай! мне и самому будет интересно читать хорошо написанную статью. Всегда ценны статьи, в которых затрагиваются примеры из жизни, то, как например ты сам начинал осваивать эту тему, то, какие трудности у тебя были, оживи ее, добавь юмора и т.д.

в связи с данной дискуссией, начал писать статью по поводу того, как по моему мнению надо писать статьи - вот такая вот рекурсия получилась -=) статья, думаю будет большой, так что ждите ее на этой неделе!
Post #: 15
RE: Уроки по локальным сетям #2 - 2010-03-30 21:18:39.493333   
webkraft

Сообщений: 2388
Оценки: 95
Присоединился: 2009-03-01 15:59:53.456666
quote:

А я считаю, что это плохая статья -


Что вы возникаете? Человек для вас старается! Статья даже во [sm=ay.gif] Спасибо, и мой скромный респект)
Post #: 16
RE: Уроки по локальным сетям #2 - 2010-03-30 21:24:57.820000   
iidsp

Сообщений: 379
Оценки: 0
Присоединился: 2009-10-14 23:13:19.856666
quote:

Что вы возникаете? Человек для вас старается

Вы немного опоздали с выводами, автор согласился переписать статью, так что возникает вопрос, а вы вообще читали комменты? Я не гнал, не нагонял тоски, а по мере возможности и своих знаний выражал конструктивную критику. Что-то еще скажите по делу?
Post #: 17
RE: Уроки по локальным сетям #2 - 2010-03-30 21:33:39.683333   
Refresh

Сообщений: 606
Оценки: 0
Присоединился: 2006-04-08 20:00:54
Хватит уже.
Post #: 18
RE: Уроки по локальным сетям #2 - 2010-03-31 15:46:11.856666   
Konkret

Сообщений: 50
Оценки: 0
Присоединился: 2010-01-05 15:07:19.663333
Refresh,я провёл домой инет по лан кабелю и ещё надо сделать отводку брату в другую комнату,что для этого надо хаб,свитч или маршрутизатор?И это будет локальная сеть и у моего брата будет другой IP или тот самый?
Post #: 19
RE: Уроки по локальным сетям #2 - 2010-03-31 16:24:59.320000   
Barkass$

Сообщений: 1854
Оценки: 40
Присоединился: 2008-11-11 12:19:45.216666
quote:

Refresh,я провёл домой инет по лан кабелю и ещё надо сделать отводку брату в другую комнату,что для этого надо хаб,свитч или маршрутизатор?И это будет локальная сеть и у моего брата будет другой IP или тот самый?


1. хаб, либо 2 сетевые карты.
2. IP само собой будут разными. Одинаковые IP дают сбой в сети.
Post #: 20
RE: Уроки по локальным сетям #2 - 2010-03-31 20:50:28.650000   
Konkret

Сообщений: 50
Оценки: 0
Присоединился: 2010-01-05 15:07:19.663333
зачем сетевые карты?они и так у нас есть в компах у каждого.Допустим мне провайдер выделил ИП 84.240.56.75 мы подключаюемся на один ИП вдвоём и откуда возмётся другой ИП?кто его назначит
Post #: 21
RE: Уроки по локальным сетям #2 - 2010-03-31 21:00:12.476666   
Barkass$

Сообщений: 1854
Оценки: 40
Присоединился: 2008-11-11 12:19:45.216666
quote:

зачем сетевые карты?

Для локальной сети между 2-я машинами, если нету хаба.
quote:

Допустим мне провайдер выделил ИП 84.240.56.75 мы подключаюемся на один

Подключаться к IP провайдера это одно (можно хоть в 100 человек), а иметь одинаковый IP машин в сети, а это другое.
Провайдер выделил тебе IP машины, или шлюза\сервера?

Если 1 инет делить на 2-е машины, настройки в карте задаются вручную, т.е. IP (диапазон) берешь с неба, а шлюз уже провайдера.



Post #: 22
RE: Уроки по локальным сетям #2 - 2010-03-31 21:39:00.930000   
Konkret

Сообщений: 50
Оценки: 0
Присоединился: 2010-01-05 15:07:19.663333
про шлюз здесь не упомянули,как для бабушки
Post #: 23
RE: Уроки по локальным сетям #2 - 2010-03-31 22:02:38.346666   
Refresh

Сообщений: 606
Оценки: 0
Присоединился: 2006-04-08 20:00:54
quote:

Refresh,я провёл домой инет по лан кабелю и ещё надо сделать отводку брату в другую комнату,что для этого надо хаб,свитч или маршрутизатор?И это будет локальная сеть и у моего брата будет другой IP или тот самый?


Создай тему в ветке про локальные сети, зачем же здесь -то флудить.
Post #: 24
RE: Уроки по локальным сетям #2 - 2010-04-03 01:06:08.253333   
Refresh

Сообщений: 606
Оценки: 0
Присоединился: 2006-04-08 20:00:54
Понимаем работу систему OSI и протоколов.

В первой "статье" мы получили общее представление о сетях, но правда мало чего поняли.
Сейчас попробую объяснить так чтобы вопрос стало меньше, а понимания больше.

Для демонстрации работы модели OSI разберем следующую картинку:


Предположим, что Компьютер #1 посылает данные Компьютеру #2. Протокол, работающий на прикладном уровне, добавляет свой заголовок к данным и передает его представительскому уровню. Протокол представительского уровня добавляет свой заголовок и передает его сеансовому уровню. И так далее, на каждом уровне используемый протокол этого уровня добавляет служебную информацию к существующему пакету и передает его на следующий уровень. В терминологии сетей это называется инкапсуляция. На физическом уровне, перед преобразованием данных в импульсы мы получим примерно такой пакет:


После этого на физический уровень в зависимости от используемой среды передачи преобразует полученный фрейм в импульсный сигнал и передаст его в «физическую сеть»
Компьютер #2 сделает все преобразования в обратном порядке: физический уровень примет импульсы, передаст его на канальный уровень. Канальный уровень проанализирует заголовок канального уровня, сделает необходимые операции, и передаст его на сетевой уровень уже без своего заголовка. Такое преобразование будет делать каждый уровень пока данные не дойдут до приложения, которому оно предназначалось.
Так что пакет можно представить в виде матрешки. Данные это самая маленькая матрешка, по мере движения от 7 до 1 уровня она обрастает все больше и больше. На другое устройство придет самая большая матрешка, и по мере продвижения от 1 до 7 уровня, матрешка будет становиться все меньше.

Семь уровней это стандарт, но на практике некоторые уроне выполняются с помощью одного протокола. Например, возьмем самый распространенный стек протоколов TCP/IP. При использовании стека TCP/IP прикладной, представительский и сеансовые уровни заключены в один – прикладной. Т.е. в соответствии с моделью OSI стек протоколов TCP/IP выглядит вот так:


Сделаю так же маленькое уточнение: в стеке TCP/IP за установление и поддержание сеансов (5 уровень модели OSI) отвечает как уровень приложений, так и частично транспортный.


То есть, если наглядно представить инкапсуляцию данных в стеке протоколов TCP/IP мы получим примерно такую картину:


В обратном направление все работает точно так же, то есть происходит распаковка пакета на каждом из уровней.


Коммутационное оборудование и стек TCP/IP

Теперь разберем коротко, как работает коммутационное оборудование в соответствии со стеком протоколов.
Повторитель(reapiter) работает на физическом уровне, т.е. оперирует только с электрическими сигналами. На вход к нему подаются сигналы с искажением (в любой среде передачи происходит затухание сигнала пропорционально расстоянию), на выходе получаем усиленный сигнал (нормальной формы).
Свитч (Switch) и мост(Bridge) работает на канальном уровне, т.е. оперирует с Ethernet фреймами. на вход к нему подаются импульсы, которые на физическом уровне преобразуются в Ethernet фреймы и передаются на канальный уровень. На канальном уровне вскрывается только заголовок канального уровня, определяется MAC адрес получателя, сопоставляется с внутренней таблицей соответствия MAC адресов и портов свитча. Таблица имеет примерно такой вид:



После определения порта на которому подключен данный клиент, пакет снова упаковывается и передается дальше, на нужный порт.
Маршрутизатор (router) работает на сетевом уровне, т.е. оперирует с IP пакетами. на вход к нему подаются импульсы, которые на физическом уровне преобразуются в Ethernet фреймы и передаются на канальный уровень. На канальном уровне вскрывается только заголовок канального уровня и оставшиеся данные (IP пакет) передается на сетевой уровень. На сетевом уровне вскрывается IP пакет, анализируется заголовок IP пакета, определяется IP адрес получателя и отправителя. У маршрутизатора так же существует таблица соответствия, но только значительно сложнее чем у свитча. О нем мы поговорим позже (работа маршрутизатора сложна и в рамках этого материала рассматриваться не будет). После определения порта где находиться получатель, или определения кратчайшего маршрута до него пакет запаковывается обратно и передается в сеть.


Протоколы

Что такое протокол? Протокол это набор правил, инструкций и соглашений с помощью которых осуществляются действия с данными (обмен, упаковка, проверка на целостность, шифрование и т.д.)

Порт - это идентификатор приложения. Т.е. все знают что браузер работает на 80 (HTTP) порту. Это значит что все данные которые будут поступать на этот логический порт будут адресованы только программе-браузеру.


Протоколы стека TCP/IP.

На каждом из уровней стека TCP/IP работают свои протоколы. Коротко разберем некоторые из них.

Прикладной уровень:
На этом уровне работают протоколы, которые у нас всегда «перед глазами»
Позже поговорим о них.

На транспортном уровне работают два протокола TCP и UDP
Отличие их в том, что TCP это транспортный протокол с гарантированной передачей, а UDP c негарантированной. Можно разобрать их работу на примере SMS сообщения: вы отправляете смс сообщение абоненту, и как только он его получил то вам приходит сообщение о доставке. Тогда вы знаете, что первое сообщение до него дошло и можете отсылать второе, потом ждете отчета о доставке 2-ого сообщения и т.д. вот так, в упрощенной форме, и работает протокол TCP. Протокол UDP работает в слепую, т.е. он не ждет сообщение о доставке а посылает их «в слепую». Из-за этого UDP протокол работает быстрее TCP. Так же значение слова порт напрямую связано с протоколами этого уровня. Номер порта содержится в TCP(UDP) заголовке пакета.
Более подробно TCP мы разберем в следующих материалах.

Сетевой уровень.
Вот теперь пришло время поговорить об очень важном и сложном - протоколе IP (Internet Protocol) и об IP адресации.
Каждый узел в сети должен иметь уникальный номер, что бы мы могли обратиться именно к нему. У любого ПК в сети есть как минимум один идентификатор: физический адрес (MAC), который вшивается в сетевую плату еще на заводе. Но MAC адресация очень неудобная и приходилось бы знать все MAC адреса WEB-серверов, чтобы можно было к ним обратиться. Да и маршрутизация с Помощью MAC была бы очень сложна. Поэтому появился протокол IP. Теперь помимо физического адреса каждый компьютер имеет логический (IP адрес). Который должен быть уникальным в пределах данной подсети.

И так что же такое IP адрес?
Это уникальный логический адрес любого устройства в сети, которое однозначно определяет, к какой сети принадлежит данный хост. Сейчас существует 2 версии протокола IP: IPv4 и IPv6. Мы будем разбирать IPv4.
IP адрес это 32 (IPv4) или 128(IPv6) битное число, это значит что если мы запишем IP адрес в двоичной (бинарной) системе то получим 32 разряда. В десятичном виде он записывается 12-ти разрядным числом разделенным знаком (.) на 4 трехзначных числа - октета:
aaa.bbb.ccc.ddd
каждый из октетов кроме первого может принимать значение от 0 до 255 в десятичной(Dec) системе , соответственно от 0 до FF 16-ричной (Hex) и от 00000000 до 11111111 в двоичной (Bin)
Первый октет принимает значение от 0 до 127 включительно, почему так вы поймете позже.
IP адрес логически состоит из 2 частей – номер сети и номер компьютера.

Существуют 2 модели IP адреса: классовая и бесклассовая(CIDR), в классовой модели существуют стандартные классы IP адресов где четко определенное количество сетей и хостов в каждом классе.
Разберем эти классы адресов:


А теперь поясню всю эту таблицу.
Что означает столбец «Двоичный префикс»? Как компьютер определит к какому классу относиться данный IP адрес? Любое цифровое устройство оперирует бинарными выражениями (0 – нет сигнала, 1 - есть сигнал), в том числе компьютеры и любое коммутационное оборудование. Так что для определения класса IP адреса первым битам первого октета (нумерация идет справа налево). Для наглядности запишем IP адреса 92.241.175.142, 191.223.52.1, 207.46.197.32 в двоичном виде:
01011100.11110001.10101111.10001110 - 92.241.175.142
10111111.11011111.00110100.00000001 - 191.223.52.1
11001111.00101110.11000101.00100000 - 207.46.197.32
В первом случаем первый бит равен 0 это значит что IP адрес принадлежит классу A. Во втором случае два первых бита соответствуют классу B. В третьем случае 3 первых бита соответствуют классу С.

Теперь разберем коротко каждый класс.

Класс А: В IP адресах класса А номером сети являются первые 8 бит (1-ый октет)
xxx.yyy.yyy.yyy , где xxx – октет с номером сети, а yyy.yyy.yyy – октеты с номером хоста.
Сети 0.0.0.0 и 127.0.0.0 зарезервированы для служебных целей.
Количество хостов определяется простыми действиями: т.к. номер сети определяется первым октетом, а все остальное адрес хоста то следовательно 8 битов для сетей и 24 для хостов, но первый бит первого октета не учитывается при назначении адреса, значит у нас 7 свободных битов и значит 2^7 = 128 это общее число сетей , теперь отнимаем два так как сети 0.0.0.0 и 127.0.0.0 и получаем «полезное» число сетей равное 127 . А для определения количества хостов В КАЖДОЙ СЕТИ сделаем так - 2^24 = 16777216. Но это еще не все, т.к. адреса в которые используют вместо номера хостов все нули (например 10.0.0.0) указывают на «имя» сети , все единицы (10.255.255.255) указывает на адрес широковещательной рассылки(все активные устройства сети получат сообщение , у которого в получателе стоит этот адрес.) Эти 2 адреса усть в каждом классе и использовать мы их не можем, поэтому от полученного значения числа хостов отнимаем 2 и получаем максимальное количество хостов в сети класса А, а именно - 16 777 214.
Класс B: В IP адресах класса B номером сети являются первые 16 бит (1-ый и 2-ой октет)
xxx.xxx.yyy.yyy , где xxx.xxx – октеты с номером сети с номером сети, а yyy.yyy – октеты с номером хоста.
Количество хостов определяются так же как и в первом случае.

Класс С: В IP адресах класса С номером сети являются первые 24 бита (1-ый, 2-ой, 3-ий октет)
xxx.xxx.xxx.yyy , где xxx.xxx.xxx – октеты с номером сети с номером сети, а yyy – октеты с номером хоста.
Количество хостов определяются так же как и в первом и втором случае.


Диапазоны для локальных сетей.
Существуют специальные диапазоны выделенные для локальных сетей. Адреса из этих диапазонов не используются в Интернет т.е. такие адреса не используются серверами которые напрямую взаимодействуют («смотрят») в глобальную сеть.
Диапазон из класса A: 10.0.0.0 -10.255.255.255( одна сеть, 16777214 хостов)
Диапазон из класса В: 172.16.0.0 -172.31.255.255 (16 сетей, 65534 хостов в каждой)
Диапазон из класса С: 192.168.0.0-192.168.255.255 (255 сетей, 254 хоста в каждой)

Бесклассовая модель (CIDR)
Иногда бывает что надо использовать больше адресов чем предусмотрено классом С но значительно меньше чем у класса B. Например, нам надо использовать 3000 адресов. В локальной сети можно особо не заморачиваться, выбрать класс B и все. А как быть если вы предоставляете услуги интернет-провайдинга, то покупать вместо 3тысяч все 65 тысяч было бы не рационально. Вот тут то нам и поможет бесклассовая модель. Делать мы это будем с помощью маски подсети.
Маска подсети (subnet mask) показывает какие биты в IP адресе используются для обозначения сети, а какие для обозначения хоста. Для классовой модели есть фиксированные маски подсети.
Для класса A это 255.0.0.0 или по другому можно сказать «8-ми битная маска подсети», записывается это в таком виде: например мы имеем сеть 10.0.0.0 с маской подсети 255.0.0.0, по другому можно записать 10.0.0.0/8.
Для класса B это 255.255.0.0. Например для сети 172.22.0.0 можно записать 172.22.0.0/16
Для класса С это 255.255.255.0. Например для сети 192.23.4.0 можно записать 192.23.4.0/24
Почему 8,16,24? Сейчас объясню. Запишем данную маску подсети в двоичном виде:
255.0.0.0 – 11111111.00000000.00000000.00000000
255.255.0.0 – 11111111.11111111.00000000.00000000
255.255.255.0 – 11111111.11111111.11111111.00000000
Посчитаем биты равные 1 в первом случае, их 8. Во втором случае их 16, а в третьем их 24. Тут просматривается закономерность =). Значит после знака (/) пишется количество единиц в маске подсети.
Для наших условий нам надо решить проблему такого характера: включить в одну сеть 3000 компьютеров, не деля их при этом на подсети и как можно более рационально использовать адресное пространство.
Для этого нам надо под хосты выделить число которое максимально близко к 3000. Самое близкое число будет 4096(«полезных адресов» будет 4094) или 2 ^12. Значит маска подсети будет иметь такой вид:
11111111.11111111.11110000.00000000 в двоичном виде, или 255.255.240.0
Значит там где стоят единицы – это место для указания сети, а там где нули это указание хоста.
Итого получаем IP адрес, например, 153.22.33.44/20
Определим адрес сети:


Побитно выполним операцию умножения (конъюнкция)
И получим 10011001.00100110.00100000.00000000 или в десятичном виде – 153.22.32.0 это наша сеть. Теперь определим номер компьютера в сети, для наглядности отделим адрес сети от адреса хоста


Теперь полученный адрес хоста в десятичный формат и получим 300.
Значит IP адрес 153.22.33.44/20 принадлежит 300-му хосту в сети 153.22.32.0/20.


На этом пока что все. Потом мы разберем основы маршрутизации, транспортные протоколы и некоторые высокоуровневые протоколы.

И под конец хотел бы дать несколько жизненных советов:
1.Старайтесь всегда писать техническую документацию по выполненным действиям. Во первых вы облегчите жизнь своим сотрудникам, во вторых укрепляет сделанный материал.
2.Старайтесь почаще работать в консоли, некоторые вещи гораздо быстрее и удобнее делать в консоли. Да и скорость набора повысите.
3.Пользуйтесь терминологией, не зубрите, а именно понимайте профессиональный язык.
4.Без английского никуда, особенно без технического. Старайтесь читать некоторую техническую документацию
5.Старайтесь думать сами. Не стоит писать или звонить всем кого знаете когда что-то не получилось с первого раза.
Post #: 25
RE: Уроки по локальным сетям #2 - 2010-04-03 09:17:29.036666   
Krava21

Сообщений: 23
Оценки: 0
Присоединился: 2009-12-21 14:52:51.913333
ооо! вот это уже интересно почитать!
Post #: 26
RE: Уроки по локальным сетям #2 - 2010-04-03 20:43:25.040000   
Refresh

Сообщений: 606
Оценки: 0
Присоединился: 2006-04-08 20:00:54
Протокол IP


Протокол IP отвечает за маршрутизацию TCP (UDP) пакетов от отправителя к получателю, так же в его функции входит фрагментация и сборка IP пакетов в один IP сегмент.
Когда мы разбирали схему работы модели OSI мы говорили об инкапсуляции. Вот структура IP заголовка который будет добавляться к TCP(UDP) пакету и передаваться на канальный уровень.

На рисунке схематично показано разделение всего заголовка на отдельные служебные поля.
Сразу дам пояснения по поводу рисунка. На рисунке заголовок состоит из 6 строчек(октетов), каждая из которых длиной в 32 бита (4 Байта). Наверное появились вопросы, а как эти строчки передаются. На самом деле это просто схематичное представление, для компьютера заголовок выглядит примерно вот так :



Размер заголовка IP пакета имеет переменную длину, но всегда кратен 32 байтам. IP заголовок состоит минимум из 5 обязательных октетов (на рисунке это строчки). В этих пяти октетах содержится основная часть заголовка. Которая имеет фиксированный размер. Шестой октет, показанный на рисунке – дополнительный и используется только если нужно указать специальные опции. Поле «Дополнительные биты» служит для того что бы «добрать» недостающие биты. Например, если поле опций содержит в себе 27 бит, то поле дополнительных бит будет содержать 32-27 = 5 бит. Это сделано для того, что бы при любой длине поля опций не терялась целостность пакета (должен быть кратен 32). Дополнителых октетов может быть больше чем один.

Так же для общего понимания следует знать вот что: каждое служебное поле имеет свой фиксированный размер и не может содержать в себе больше разрешенного по стандартам данных (кроме поля опций и дополнительных бит). То есть например для поля «Версия» (содержит в себе версию используемого IP протокола) отведено 4 бита. Для того что бы нам записать десятичное число 4 (что означает IPv4) нам потребуется только 3 бита – 100, оставшийся младший бит будет равен 0 (вы должны четко знать хотя бы основы двоичного исчисления: самый старший бит находится справа, самый младший слева), от этого значение двоичного числа у нас никак не измениться 0100=100. Так же происходит с каждым полем, неиспользуемые биты будут выставлены в ноль, от чего служебные поля всегда будет иметь одинаковую длину.

Теперь опушу каждое служебное поля в заголовке.
1)Версия (ver) – содержит в себе номер версии протокола IP. Размер 4 бита.
2)Длина заголовка (IHL, Internet Header Length) – содержит длину заголовка в октетах. Минимальное значение 5 ( 101b, когда отсутствует поле опций), максимальный размер 15 (1111b, поле опций будет занимать 40 байт, найти это можно так: 15*32=480 бит /8 =60 байт – 20 байт=40 байт ).
3)Тип обслуживания (ToS,Type Of Service) – определяет приоритет IP пакета и тип маршрутизации. Размер 8 бит. Содержимое этого поля:



Биты приоритета IP пакета могут быть:



Поле «Тип маршрутизации» состоит из 4 флагов (флаг=бит)



Одновременно может быть установлен только один бит.

4)Общая длина (Total Length) – содержит в себе длину всего IP пакета в октетах, минимальное значение 21 байт (заголовок без опций + один октет данных), максимальное 65535. Размер 16 бит.
5)Идентификатор (ID), Флаги (Flags), Смещение фрагмента(Fragment Offset) используется для алгоритма фрагментации. Пока что опустим их. На них мы остановимся попозже.
6)Время жизни (TTL, Time To Live) – Время жизни пакета установленное отправителем. Каждый хост который будет работать с данным IP пакетом будет отнимать время (в секундах, округляя к большему) от этого значения, которое он потратил на обработку этого пакета. Как только время дойдет до 0 пакет удаляется. Это сделано для того что бы «потерявшиеся» пакеты не ходили циклом и не загружали сеть. Размер 8 бит.
7)Протокол (Protocol) – содержит код протокола уровня которому следует передать поле данных после обработки. Размер 8 бит. Коды некоторых протоколов.



8)Контрольная сумма заголовка (Header Checksum) – содержит контрольную сумму заголовка. Рассчитывается она путем сложения всех 16-ти разрядных слов заголовка по модулю 2. Контрольная сумма так же как и время жизни пересчитывается на каждом маршрутизаторе. Если найдено несоответствие то пакет удаляется. Размер 16 бит.
9)Адрес отправителя (Source Address) - соедржит IP адрес отправителя. Размер 32 бита.
10)Адрес получателя (Destination Address) – содержит IP адрес получателя. Размер 32 бита.

Фрагментация IP пакетов.

Существующие сети очень многообразны, каждая сеть имеет свою индивидуальную настройку, которая по мнению администратора поможет уменьшить коллизии, увеличить быстродействие и удобство работы соответственно. Есть такое понятие как MTU.

MTU – максимальный размер Ethernet кадра, другими словами - максимально возможный размер «блока» который может передать протокол канального уровня. Логично заметить, что напрямую от этого параметра зависит скорость передачи данных в сети, ведь чем больше размер пакетов тем быстрее вся информация передастся на удаленный компьютер. У различных сетей это значение может быть разное. И как же тогда быть когда нам надо доставить данные в сеть с меньшим значением MTU? Как раз для этого и был разработан механизм фрагментации.

Фрагментация это процесс разбития IP пакета в соответствии со значением MTU и последующей передачи его на канальный уровень. Как раз для этого механизма в заголовке IP пакета присутствуют спец. поля Идентификатор, Флаги , Смещение фрагмента. Для начала рассмотрим назначение этих полей:
Идентификатор(ID) – «имя» фрагмента, по этому полю удаленный хост определяет все фрагменты одного целостного IP пакета. Размер 16 бит.
Флаги(Flags) – это поле содержит 3 бита, 2 из них определяют фрагментирован ли пакет и последний ли это фрагмент. Младший бит всегда равен 0.



Бит DF: 0 – фрагментация разрешена, 1 – фрагментация запрещена
Бит MF: 0 – последний фрагмент, 1 – не последний фрагмент
Смещение фрагмента(Fragment Offset) – определяет смещение данных этого фрагмента относительно их позиции в целостном IP пакете. Смещение считается по 64 бита (8 октетов). Размер 13 бит.

Рассмотрим процесс фрагментации на примере пакета который отправили из сети с сети FDDI (MTU=4500) в сеть Ethernet (MTU=1500).
Хост-отправитель выставил такие служебные поля:



На маршрутизаторе который соединяет нашу сеть с сетью отправителя произойдет фрагментация пакета:



Ну а теперь как всегда пояснения. Пакет который нам отправили пришел на «пограничный» маршрутизатор. После определения несоответствия значения MTU маршрутизатор запустил механизм фрагментации IP пакета. На наш компьютер придут 3 пакета, которые удовлетворяют значениям MTU. Как видим у исходного пакета бит DF = 0, значит мы можем фрагментировать этот пакет, бит MF сброшен, в данном случае это означает что это единственный фрагмент.
И теперь посмотрим на те пакеты которые получил наш ПК. Значение поля ID у всех фрагментов одинаково, что свидетельствуют о том что это фрагменты одного цельного IP пакета. Поле Total Length не относиться к фрагментации, но я решил для наглядности его показать, как мы видим все пакеты удовлетворили стандартному значению MTU для Ethernet. бит DF у всех остался 0 (пакет можно фрагментировать). Теперь разберем у всех 3 фрагментов бит MF и смещение фрагмента:
Первый фрагмент – бит MF = 0, значит этот фрагмент не последний. Поле смещения = 0 т.к. это первый фрагмент, поэтому данные содержащиеся в нем будут начальными данными всего IP пакета.
Второй фрагмент – бит MF = 0, значит этот фрагмент не последний. Поле смещения = 185. Теперь смотрим как это получилось: смещение записывается порциями по 64 бита или 8 октетов (64\8=8).общая длина фрагмента у нас 1500 октетов, отнимаем 20 октетов, которые содержаться в IP заголовке, получаем 1480 октетов. Теперь делим на 8, что бы получить смещение, 1480\8=135.
Третий фрагмент – бит MF = 0, значит этот фрагмент последний. Поле смещения = 370 т.к. у нас одинаковая длина октетов. Получается такое же смещение относительно второго фрагмента, значит 185+185 = 370.
По сети фрагменты путешествуют как обычные IP пакеты. Собираются воедино только на узле-получателе.

Фрагментация имеет и свои минусы:
1)Трата ресурсов отправителя и звеньевых маршрутизаторов. Для того что бы выполнить фрагментацию надо высчитать контрольную сумму для всех фрагментов, скопировать каждому заголовок оригинального IP пакет (разумеется внести туда изменения).
2)Если любой из фрагментов не дошел то все дошедшие фрагменты удаляются и приходиться заново посылать весь IP пакет и выполнить все что написано выше.

На этом пока что все.
Кто хочет может сам поупражняться например с CIDR, фрагментацией, пишите свои решения либо сюда либо в ПМ.

Post #: 27
RE: Уроки по локальным сетям #2 - 2010-04-18 10:58:29.950000   
Refresh

Сообщений: 606
Оценки: 0
Присоединился: 2006-04-08 20:00:54
Маршрутизация IP пакетов


В этом материале рассмотрим азы маршрутизации в сетях использующих протокол TCP/IP.
Маршрутизация это процесс пересылки IP пакета следующему узлу. Ни один из узлов через который проходит данный IP пакет не знает всей цепочки от отправителя до получателя, а действует только на таблицах маршрутизации которые у него есть.

Что такое таблица маршрутизации? Просто говоря эта таблица в которой сказано примерно это: если пакет пришел с узла xxx.xxx.xxx.xxx и ему нужен узел yyy.yyy.yyy, то надо отправить его через nnn.nnn.nnn.nnn маршрутизатор. Тут я все обобщил и упростил, на самом деле все сложнее.
Рассмотрим след сеть:



У нас есть 4 сети класса С, которые связанны между собой маршрутизаторами, выход в Интернет осуществляется через шлюз GW.
Маршрутизатор R1 имеет 3 активных интерфейса:
1 – 192.168.1.5, подключен к сети 192.168.1.0
2 – 192.168.5.1, подключен к маршрутизатору R2
3 – 192.168.2.5, подключен к сети 192.168.2.0
Маршрутизатор R2 имеет 4 активных интерфейса:
1 – 192.168.3.5, подключен к сети 192.168.3.0
2 – 192.168.5.2, подключен к маршрутизатору R1
3 – 192.168.4.5, подключен к сети 192.168.4.0
4 – 192.168.5.3, подключен к шлюзу GW
Шлюз GW имеет 2 интерфейса:
1 – 192.168.5.4, подключен к маршрутизатору R2
2 – 86.110.119.34, подключен к сети Интернет.
Рассмотрим компьютер A1 из сети 192.168.1.0/24, его таблица маршрутизации схематично выглядит так:

Сеть 192.168.1.0/24 – A1
Остальные сети - R1
Это значит что вопросы пересылки в своей сети A1 будет решать сам. А если надо будет обратиться к другим сетям то пакет будет пересылаться маршрутизатору R1.

Таблица у С1 будет выглядеть так:
Сеть 192.168.3.0/24 – C1
Остальные сети – R2
Для остальных ПК можно без труда составить такую таблицу.

Теперь посмотрим как поведет себя пакет направленный от A1 к D1:
IP адрес отправителя (A1) – 192.168.1.1
IP адрес получателя (D1) – 192.168.4.1

Значит при создании IP пакета на компьютере A1 служебные поля заголовка IP пакета адрес будут следующие:


Таблица маршрутов A1 выглядит примерно следующим образом:


127.0.0.1 это зарезервированный адрес (loopback)
192.168.1.0/24 это адрес сети компьютера A1, значит если IP адрес получателя будет иметь вид 192.168.1.x то этот пакет пойдет в сеть 192.168.1.0/24.
В последней строчке назначение 0.0.0.0 используется для того что бы сказать «все остальные пакеты посылать на такой-то адрес», в терминологии маршрутизации это строка указывает на «шлюз по умолчанию» (Default Gateway).
Значит проанализировав заголовок нашего IP пакета A1 перешлет его на адрес 192.168.1.5 (интерфейс 1 маршрутизатора R1).

У маршрутизатора R1 таблица маршрутов выглядит так:


Следуя этой таблице маршрутизатор будет оперировать с пакетами так:
Если у пришедшего пакета в IP заголовке стоит адрес получателя из сети 192.168.1.0 то этот пакет пойдет через сетевой порт которому присвоен IP адрес 192.168.1.5
Если у пришедшего пакета в IP заголовке стоит адрес получателя из сети 192.168.2.0 то этот пакет пойдет через сетевой порт которому присвоен IP адрес 192.168.2.5
Если у пришедшего пакета в IP заголовке стоит другой адрес получателя, то этот пакет пойдет через сетевой порт которому присвоен IP адрес 192.168.5.1, то есть на маршрутизатор R2.

В соответствии с этой таблицей наш пакет пойдет на маршрутизатор R2 (192.168.5.2), который подключен к интерфейсу 192.168.5.1



У маршрутизатора R2 таблица маршрутов выглядит так:



Наш пакет пойдет на интерфейс которому присвоен адрес 192.168.4.5 дойдет до D1.

А теперь предположим что вам надо послать пакет в интернет с компьютера A1:
Удаленный адрес – 77.23.54.22
1)A1 определяет что маршрут в сеть получателя не указан в его маршрутной таблице, значит он передает пакет шлюзу по умолчанию (R1)
2)R1 так же не находит в своей таблице информацию о этом маршруте, передает его на R2
3)R2 передает его шлюзу (GW)
4)Шлюз в свою очередь передает его вышестоящему маршрутизатору, и так пока сеть получателя не будет найдена.

P.S. Сейчас времени мало, работы много, поэтому и материалы могут быть по реже.
Post #: 28
Страниц:  [1]
Все форумы >> [Для начинающих] >> Уроки по локальным сетям #2







Связаться:
Вопросы по сайту / xakep@glc.ru

Предупреждение: использование полученных знаний в противозаконных целях преследуется по закону.