Jump to content

Recommended Posts

Posted

Приветствую всех,есть вот такая схема,в которой пытаюсь разобраться.Host1 отправляет данные Host 2в другой сети,что будет происходить с этими данными на каждом этапе?Как я понял Host 1 инкапсулирует данные в биты на физическом уровне и отправит SW1,на нем добавится заголовок 2 уровня,при это Ip источника и назначения не поменяются.А когда данные достигнут R1,то на нем добавится заголовок сетевого уровня и мак адрес источника и назначения поменяется,только я не могу понять на какой,мак адресом источника станет мак адресс R1?А мак адресом назначения R2?и самое главное какие конечные буду мак адреса источника и назначения уже на HOST2?Помогите пожалуйста разобраться!

nettopology.png

Posted

Да всё же просто.

 

Host1 пишет свои SRC IP+MAC в пакет, пишет туда же DST IP хоста 2 и MAC адрес своего роутера. (вообще что угодно можно написать, но чтобы работало вариант только один*)

MAC сетевого роутера берётся из ARP/ND кеша по соотвествию IP. А нужный IP роутера предварительно ищется в таблице маршрутизации.

 

Свитч смотрит только на MAC, если это L2 свитч, бывают L3 свитчи - они уже сами как роутеры.

Если DST MAC у него в таблице есть - он перешлёт пакет только на один порт, если нет - на все.

 

Роутер получает пакет и видит что DST IP != IP самого роутера, тогда он смотрит себе в таблицу машрутизации и понимает что наверное пакет надо переслать на другой роутер, чей IP наиболее подходит по таблице как DST/GW.

Дальше он смотрит себе в ARP/ND таблицу чтобы найти MAC этого роутера. Если его там нет - делает ARP запрос чтобы узнать какой MAC у нужного=следующего роутера.

Когда искомый MAC следующего роутера найден то он шлёт туда IP пакет который получил, но MAC SRC там уже роутера который отправляет а MAC DST роутера на который пойдёт пакет.

 

Второй роутер действует аналогично.

 

 

Чтобы не было вопросов общий принцип такой.

 

Когда надо послать IP пакет куда то там, то смотрится таблица маршрутизации.

В таблице ищется "наилучшее соотвествие" самый длинный префикс (/32) (маска подсети с наибольшим значением, например 255.255.255.255).

Сам матчинг там такой: (NET_IP & NET_MASK) == (DST_IP & NET_MASK) - если true то такая сеть - кандидат на отправку.

Шлюз по умолчанию это: NET_IP = 0 и NET_MASK = 0, поэтому для него вышеприведённое условие всегда true и он всегда имеет самый низкий приоритет.

Дальше я детали чуть подзабыл в части того как оно в коде FBSD, но общий смысл такой.

Если найденная подсеть принадлежит интефейсу то DST MAC для DST IP ищется в ARP/ND кеше, если нет - то делается запрос, и если в итоге адрес находится то этот MAC записывается в пакет как DST MAC и пакет отправляется в сеть и вроде как должен без изменений достигнуть целевой хост.

Если найденная подсеть принадлежит к роутеру (считай не является локальной) то берётся IP роутера, и в ARP/ND кеше ищется его MAC адрес. Он же записывается в пакет как DST MAC и пакет отправляется в сеть.

SRC MAC = MAC адаптера который отправлял пакет.

 

Свитч L2 ничего не трогает в пакете, обычно. Но бывает всякое, и может всякие QoS покрутить наверное 🙂

 

Роутер получает IP пакет и смотрит в DST IP. (на самом деле он в начале смотрит в фаервол.... если оно есть)

Если DST IP принадлежит роутеру - то пакет отправляется в разбор по сетевому стёку (всмысле там смотрится уже TCP/UDP и пр заголовки).

Если DST IP не роутера тогда см выше, процесс точно такой же как на хосте который изначально слал пакет.

SRC MAC = MAC адаптера который отправлял пакет.

 

Хост от роутера отличается только тем, что когда хост получает пакет с DST IP который ему не принадлежит - он его не пересылает.

Posted
2 часа назад, Ivan_83 сказал:

Да всё же просто.

Просто, для тех, кто понял и знает модель OSI... а для среднестатистического российского ИТ студента 2-3 курса - это откровение.

Posted (edited)
13 hours ago, Ivan_83 said:

Он же записывается в пакет как DST MAC и пакет отправляется в сеть.

Чексуммы забыл пересчитать, незачет, пересдача в следующий понедельник с направлением из деканата.

11 hours ago, sdy_moscow said:

Просто, для тех, кто понял и знает модель OSI... а для среднестатистического российского ИТ студента 2-3 курса - это откровение.

Модель OSI-изучают с 3-4 курса, на первых двух всякие фундаментальные науки.

Для выпускника третьего курса является загадкой, как можно зашифровать и расшифровать сообщение без передачи общего пароля обоим сторонам. Естественно, если это обычное направление, а не какая-нибудь криптография, ИБ и тп.

Edited by naves
Posted
1 час назад, naves сказал:

Чексуммы забыл пересчитать, незачет, пересдача в следующий понедельник с направлением из деканата.

Модель OSI-изучают с 3-4 курса, на первых двух всякие фундаментальные науки.

Для выпускника третьего курса является загадкой, как можно зашифровать и расшифровать сообщение без передачи общего пароля обоим сторонам. Естественно, если это обычное направление, а не какая-нибудь криптография, ИБ и тп.

Проблема в том, что сейчас они много чего изучают, а понимания ,как показывает практика, около 0, причем, к сожалению, не только  у студентов, но и у преподавателей. Система образования - примерно "у плинтуса".

Posted
21 minutes ago, sdy_moscow said:

Система образования - примерно "у плинтуса".

Ну дык, а кто мешал за 20 лет сделать нормально, пока нефтяных денег было дофига? Рептилоиды что ли?

Одним из запомнившихся гвоздей в гроб образования было, когда преподавателям в ВУЗах запретили работать где-либо еще за пределами этих самих ВУЗов. А в эту группу входила половина преподавателей по специальностям на старших курсах. Для них преподавание было больше хобби, зато именно они давали реальные практические современные знания студентам, благодаря которым, после заведения они могли хоть как-то сразу начать работать.

Posted
13 hours ago, sdy_moscow said:

Просто, для тех, кто понял и знает модель OSI...

Это TCP/IP.

https://habr.com/ru/articles/376709/

 

 

1 hour ago, naves said:

Чексуммы забыл пересчитать, незачет, пересдача в следующий понедельник с направлением из деканата.

1. Про это вопроса не было.

2. Они тут не пересчитываются на IP пакетах, тк нет NAT. А для Ethernet сетевуха их сама считает, притом кажется отказаться от этого нынче не возможно 🙂

 

2 hours ago, naves said:

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

Для меня это было тёмным местом года до 2014, когда я занялся сам имплементацией ECDSA, и вот когда дошёл ECDH то всё понял 🙂

Всмысле ECDH простой, остальные схемы получения общего секрета кажется сложнее.

Posted
1 час назад, Ivan_83 сказал:

Зачем мне, это? Советую Вам с автором этой статьи подискутировать про актуальность Законов Ньютона и гравитацию... особенно квантовую гравитацию. Польза от таких статей примерно та-же. И если в вашей жизни L3 и L2 начинается и заканчивается IP протоколами и Ethеrnet - поздравляю, земля же тоже плоская?

 

Знаете в чем основаная задача физиков? Нет? Ну так скажу - объяснять откуда появилась разница между теорией и экспериментом.

В ИТ примерно также, всегда есть нюансы, но без понимания БАЗЫ: как выделять слои и модули, у вас будет получаться только создавать никому ненужное в современном мире "индогуано".

Posted
2 minutes ago, sdy_moscow said:

Советую Вам с автором этой статьи подискутировать

Quote

От переводчика: Это перевод статьи OSI: The Internet that wasn't Эндрю Л. Рассела (Andrew L. Russell), изначально опубликованной в журнале IEEE Spectrum.

 

Это вы спорите с голосами в чьих то головах, отцы основатели делали TCP/IP отдельно от OSI и чхали на неё. Про это и написано в статье.

То что телефонисты со своей умирающией телефонией и реализованной OSI постоянно примазываются к меинстрим=интернету - это их половые проблемы.

 

Не делали TCP/IP послойно раздельной, его делали как монолит с возможностью расширения.

1. ARP между л2 и л3

2. чексуммы TCP/UDP включают в себя IP адреса, это л3-л4 протечка абстракции.

3. Всё остальное выше там такое же протекающее. DNS вообще хреновина примотанная сбоку на изоленте, и той же изолентой ещё много куда подмотанное.

Posted

@Ivan_83 Я думаю, у тебя неправильное понимание "параллелизма" и этапов развития технологий. Форд тоже когда-то создавал автомобили "условно с 0". Но это же не значит, что с тех пор ничего не изменилось!  В итоге, мы имеем сложную автоиндустрию, с достаточно серьезной унификацией как комплектующих так и архитектуры.

 

Некоторые люди, почему-то, считают, что OSI - это обязательное требование на разделение слоёв. Но, если перейти к первоисточникам, то вы узнаете, что это лишь "полезная модель" которой рекомендуется по возможности следовать при разработке ИТ решений (всех, а не только интернет сетей). В любом хорошем учебнике (а я их читал еще в те времена, когда книги были бумажными) Вы прочтете, что такое OSI, как и почему там 7 слоёв, и о том, для чего это, и насколько всё это строго. Там всего-то страниц 10-20 текста с картинками! Но учебники у нас читать не принято! Зато обсуждать в комментах вопросы "квантовой-термодинамики" и необходимость изучения "Библии" как основы познания квантового мира  - это да. 

 

Так вот!

На OSI очень удобно объяснять новичкам, что и как работает. Если бы IP протоколы "жили в вакууме", то, конечно, не было смысла её изучать и обсуждать.  Но на самом деле IP протоколы хорошо вписались в OSI. Впрочем, ничего удивительного, поскольку OSI разрабатывалась на базе уже имеющегося опыта, в том числе и IP протоколов, а не как "сферический конь в вакууме"!

 

З.Ы.

2 часа назад, Ivan_83 сказал:

Не делали TCP/IP послойно раздельной, его делали как монолит с возможностью расширения.

Т.е. ты считаешь, что IP и TCP - это один монолитный слой? Подумай, Вань: может тебе есть смысл тоже учебники полистать? Это я тебя еще про соккеты не спросил ;-).

Posted
2 hours ago, sdy_moscow said:

Некоторые люди, почему-то, считают, что OSI - это обязательное требование на разделение слоёв. Но, если перейти к первоисточникам, то вы узнаете, что это лишь "полезная модель" которой рекомендуется по возможности следовать при разработке ИТ решений (всех, а не только интернет сетей). В любом хорошем учебнике (а я их читал еще в те времена, когда книги были бумажными) Вы прочтете, что такое OSI, как и почему там 7 слоёв, и о том, для чего это, и насколько всё это строго.

Но проще не следовать и сразу получать результат, как сделали ребята пилившие TCP/IP.

Я же повторяю, перечитайте историю: пока теоретики делили прибыли с OSI, хакеры запрогали TCP/IP и запустили в прод.

И теперь, чтобы списать убытки и гребаный стыд ребята из телекома примазывают свою OSI к любому месту, в итоге решили сделать академической моделью. Это как теория струн: может объяснить всё что угодно но ничего практического не даёт.

 

И касательно проектирования согласно "канонам OSI" - да нахер! Это заранее закладывать избыточную сложность там где нужно простое решение.

 

2 hours ago, sdy_moscow said:

Т.е. ты считаешь, что IP и TCP - это один монолитный слой?

А ты давно видел tcp_csum?

Posted

@Ivan_83 Ну то есть, ты, когда тебе надо будет сделать простенькую веб страницу, начинаешь писать софт с драйвера сетевой платы и выбора уровня напряжения сигналов в проводах? Нет? Тогда странно, как же оно работает одинаково у ВСЕХ, без "слоёв"?

 

В 24.10.2025 в 04:00, Ivan_83 сказал:

согласно "канонам OSI"

Я не знаю где вы это нашли.... нет никаких КАНОНОВ. Еще раз OSI - это полезная МОДЕЛЬ, полное название именно МОДЕЛЬ OSI !

Я не пойму зачем вы всё это притягиваете к МОДЕЛИ TCP/IP ?

 

Просто вот Вам 2 цитаты из Википедии, прочтите хотя-бы 1 раз (важное жирным)!!!!

OSI :

Цитата

 

Сетевая модель OSI (The Open Systems Interconnection model) — сетевая модель стека сетевых протоколов OSI/ISO. Посредством данной модели различные сетевые устройства могут взаимодействовать друг с другом. Модель определяет различные уровни взаимодействия систем. Каждый уровень выполняет определённые функции при таком взаимодействии.

Модель OSI была разработана в конце 1970-х годов[1] для поддержания разнообразных методов компьютерных сетей, которые в это время конкурировали за применение в крупных национальных сетевых взаимодействиях во Франции, Великобритании и США. В 1980-х годах она стала рабочим продуктом группы взаимодействия открытых систем Международной организации по стандартизации (ISO). Модель не смогла дать полное описание сети и не получила поддержку архитекторов на заре Интернета, который впоследствии нашёл отражение в менее предписывающем TCP/IP, в основном под руководством Инженерного совета Интернета (IETF).

....

Модель OSI была впервые определена в исходном виде в Вашингтоне в феврале 1978 года французом Хьюбертом Циммерманом[англ.], немного доработанный проект стандарта был опубликован ISO в 1980 году[4].

....

В конце 1980-х и начале 1990-х годов в плане построения максимально надёжных компьютерных сетей с моделью OSI стал активно конкурировать Набор интернет-протоколов (TCP/IP), который стал широко использоваться в сетях с оборудованием разных производителей для работы в интернете[10][11]. Тем не менее, модель OSI до сих пор используется в качестве эталона для обучения и документации[12].

 

TCP/IP :

Цитата

TCP/IP — сетевая модель передачи данных, представленных в цифровом виде. Модель описывает способ передачи данных от источника информации к получателю. В модели предполагается прохождение информации через ЧЕТЫРЕ уровня, каждый из которых описывается правилом (протоколом передачи). Наборы правил, решающих задачу по передаче данных, составляют стек протоколов передачи данных, на которых базируется Интернет[1][2]. Название TCP/IP происходит из двух важнейших протоколов семейства — Transmission Control Protocol (TCP) и Internet Protocol (IP), которые были первыми разработаны и описаны в данном стандарте. Также изредка упоминается как модель DOD (Department of Defense)[3] в связи с историческим происхождением от сети ARPANET из 1970-х годов (под управлением DARPA, Министерства обороны США[4]).

 

ARPANET (от англ. Advanced Research Projects Agency Network) — компьютерная сеть, созданная в 1969 году в Управлении перспективных исследовательских проектов Министерства обороны США (DARPA) и явившаяся прототипом сети Интернет. 1 января 1983 года она стала первой в мире сетью, перешедшей на маршрутизацию пакетов данных. В качестве маршрутизируемого протокола использовался IP, который и по сей день является основным протоколом передачи данных в сети Интернет.

 

Надеюсь Вам понятно, что всё это делалось практически одновременно! И разница, по мне, лишь в том, что в модели OSI предполагается большая изоляция "слоёв" и большое количество уровней (в TCP/IP вообще нет 6-7 уровня как такового, а 5-ый реализован частично, как часть 4-го).  

 

Вот вам маленькое ДЗ:

Для понимания разницы, попробуйте объяснить на базе TCP/IP, как работает окно браузера!!! И почему во всех браузерах на разных типах ПК и ОС вы видите одно и то-же содержимое сайта, хотя сам сайт вы не меняете, хотя там куча JS и всякого г...  в виде кучи API?

 

З.Ы.

Я не понял какое отношение подсчет контрольных сумм tcp_csum имеет отношение к вопросу? В принципе, вы можете иметь столько чек сум на любом уровне, сколько Вам захочется. Но ответ дам: первый и последний раз, я с их расчетами столкнулся напрямую в ANAT год назад, никаких проблем и особого восхищения расчет суммы наложением ХЭШей на меня впечатления не произвел, разве что удобно быстро менять содержимое пакета.

 

Posted

Набор протоколов не заканчивается на TCP/IP, как думают линуксятники. Это Ivan_83 на заметку. И полный перевод видео, ТВ, телефонии и прочего в IP не состоится никогда. Это тоже Ivan_83 на заметку.

Posted
11 минут назад, straus сказал:

И полный перевод видео, ТВ, телефонии и прочего в IP не состоится никогда.

Твердо и четко?

 

6 часов назад, Saab95 сказал:

Вот работая с микротиком не надо знать уровни OSI, всякие там IP и TCP - все удобно настраивается через винбокс.

Может наконец уже забанить этого тролля? Сразу IQ форума повысим.

Posted
1 минуту назад, VolanD666 сказал:

Может наконец уже забанить этого тролля? Сразу IQ форума повысим.

Ни в коем случае! Всегда должен быть ЭТАЛОН! Иначе сравнивать будет не с чем.

Posted
13 часов назад, Saab95 сказал:

Вот работая с микротиком не надо знать уровни OSI, всякие там IP и TCP - все удобно настраивается через винбокс.

 

 

Всё правильно, так и должны студенты говорить при сдаче экзамена) 

Posted
8 часов назад, VolanD666 сказал:

Может наконец уже забанить этого тролля?

Нельзя! Откуда мы будем узнавать, какие технологии устарели?

Posted
8 hours ago, straus said:

И полный перевод видео, ТВ, телефонии и прочего в IP не состоится никогда.

ТВ отмирает, телефония тоже давно бы сдохла если бы не усилия АНБ-гугла, которые спохватились лет 18 назад и не стали якобы бороться со спамом и использовать номер для регистрации и второго фактора. Так то мир был в шаге от избавления от номеров, телефонный номер уже воспринимался как какая то дедовская херня которая устарела и нужна только старикам чтобы звонить друг другу. У нормальных людей была электронная почта, скайп, меилру агент и прочие аськи. Это щас вы из дома выйти не можете чтобы 10 раз не сообщить свой номер телефона всяким конченным как комерсам так и госам, и тема стала больше политической про контроль за населением.

 

 

9 hours ago, sdy_moscow said:

OSI - это полезная МОДЕЛЬ

Бесполезная 🙂

 

9 hours ago, sdy_moscow said:

какое отношение подсчет контрольных сумм tcp_csum имеет отношение к вопросу?

Как ещё один пример что OSI к интернету отношения не имеет, ибо pseudo hdr плюёт на изоляцию между протоколами.

Posted
2 часа назад, straus сказал:

Нельзя! Откуда мы будем узнавать, какие технологии устарели?

Дык все просто, смотрим что микротик не поддерживает/глючит - вот это устаревшее

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...
На сайте используются файлы cookie и сервисы аналитики для корректной работы форума и улучшения качества обслуживания. Продолжая использовать сайт, вы соглашаетесь с использованием файлов cookie и с Политикой конфиденциальности.