gorbva Опубликовано 4 января, 2005 · Жалоба ... Если, например, у двух пользователей будут одинаковые ip-адреса, то пакет от сервера до пользователей будет идти 50/50 - правильно? .. Стэк протокола TCP/IP почитай!!! Допустим твой сервак захочет подцепится к хосту с адресом 192.168.1.3, 1. Сервак шлет хосту пакет (SYN, random_число_сервака) 2. В ответ хост шлет пакет (SYN,ACK random_числом_хоста, random_число_сервака+1). 3. Сервак опять шлет хосту пакет (ACK, random_числом_хоста+1) Все, хэндшейк прошел, можно слать данные. 4. когда все данные прошли , сервак шлет хосту пакет с флагом FIN и разрывает соединение. Но что будет если по случайности (или злому умыслу) в сети две (три, четыре ...) машины с адресом 192.168.1.3 ? Оба хоста получат SYN пакет, но каждый ответит на него своим random_числом_хоста. Сервер выберет из них первый пришедший SYN/ACK пакет, и пошлет на ОБА хоста ACK-пакет. Только для одного из хостов значение random_числа_хоста+1 будет неправильным и именно этот хост в ответ на этот пакет "плюнет в лицо" сервака пакет с флагом RST, что означает немедленное закрытие сеанса со стороны сервака. Как результат, НИ С ОДНОЙ ИЗ МАШИН С ОДИНАКОВЫМ IP-АДРЕСОМ КОННЕКТА НЕБУДЕТ !!! Все вышесказанное справедливо для сети из старых хабов, где все хосты "слушают" траффик всех. В нынечних свичах эту проблему разрулит сам свич.. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
NorN Опубликовано 4 января, 2005 · Жалоба Самое смешное, что... Канальный, т.е. 2 по ОСИ. http://nag.ru/goodies/book/ch9-6.html Собственно, это логично - это же все ТУННЕЛИ, которые дают КАНАЛ (пусть виртуальный, поверх чего-то). С точки зрения многих программ РРРоЕ - то же самое что простая физика точка-точка. Софту-то невдомек, что там чего-то поверх чего-то накручено. ;-) Т.Е. своя субмодель OSI? Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Денис Креминский Опубликовано 4 января, 2005 · Жалоба ... Если' date=' например, у двух ...Все вышесказанное справедливо для сети из старых хабов, где все хосты "слушают" траффик всех. В нынечних свичах эту проблему разрулит сам свич..[/quote'] эм... киньте в меня камнем, но почему-то речь о хабах, а про ARP ни слова. ни хабы, ни свичи не оперируют ни ip, ни тем более tcp. они -- MACами. а MACи -- из ARPа :) Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Shiva Опубликовано 4 января, 2005 · Жалоба Денис Креминский, почитай дальше, там про сервер говорится. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Vicus Опубликовано 4 января, 2005 · Жалоба 1. Сервак шлет хосту пакет (SYN, random_число_сервака) 2. В ответ хост шлет пакет (SYN,ACK random_числом_хоста, random_число_сервака+1). 3. Сервак опять шлет хосту пакет (ACK, random_числом_хоста+1) А может с посылки ARP-запроса начать все-же? Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Гость Опубликовано 5 января, 2005 · Жалоба эм... киньте в меня камнем, но почему-то речь о хабах, а про ARP ни слова. ни хабы, ни свичи не оперируют ни ip, ни тем более tcp. они -- MACами. а MACи -- из ARPа :) Кидаю камень... Товарисч конкретно спросил: "Что будет если у двух машин одинаковый IP-шник...", вот я вам про ИП-шники и стал говорить... Но ты АБСОЛЮТНО ПРАВ, свичи (не L3) и уж тем более хабы не оперируют IP-шниками, только МАС-адресами. Давай посмотрим как это работает. Пусть свич только что включили и его АРП-таблица пуста. Тут Вася Пупкин включает свой комп(192.168.1.2) и его сетевая карта, с определенным интервалом начинает слать АРП-запросы (широковещательные). Свич тоже начинает слать АРП-запросы. Так комп Васи (Пети, Коли) и Свич заполняют свои АРП-таблицы. АРП-пакеты не маршрутизируются и "живут" только в своем Ethernet сегменте сети. То есть тебе не удастся узнать какой МАС-адрес у сервера www.microsoft.com, зато какой у Пети с Колей - пожалуйста. Вот и все, таблица более-менее заполнилась, можно работать. Допустим тебе нужно послать пакет на комп Саши с ИП-192.168.1.17 , но его МАС-адреса нет в твоей АРП-таблице, тогда твой комп кидает в сеть бродкастовый запрос -"Эй братва у кого ИП-шник 192.168.1.17, выдь из сумрака, скажи свой МАС-адрес...". Если ответ получен, то МАС-адрес записываем в таблицу и отдаем ему пакет, если нет -то извини - Destination host unreachable ... И вот настал тот день, когда Вася Пупкин (192.168.1.2) поссорился на почве личной неприязни с Петей Тумбочкиным (192.168.1.13) и затаил Петро на Васю обиду лютую-бесчеловечную, взял он и прописал на своем компе Васькин ИП-шник, дескать уворую у него все пароли к WebMoney, так как вроде на двоих трафик польется один, да и за его, вражины, счет в инете посижу. Что же получилось ? На свиче образовалось две записи с одним ИП-шником, но разными МАС-адресами. И полез Петька на лихом компе в И-нет с васькиным ИП-шником. Отправляет он на и-нет gateway свой SYN-пакет, а в ответ ему пошел SYN/ACK пакет от шлюза интернетовского. НО! У свича две "сладкие палочки" - две записи в АРП-таблице, и решил тада свич, ничтоже сумняшися, послать ентот SYN/ACK -пакет обоим "друзьям". Получил Петро свой пакет и тудже на него отвечает своим ACK- пакетом, мол все О`кей, порнуху давай !! Но и васинкин комп в сети присутствовал, он несказанно АФИГЕЛ от полученного SYN/ACK- пакета и в ответ на него послал злобный RST-пакет. И обломился тогда и-нет, а сним и доступ вообще к сети обоим, как Васе так и Пете (читай мой пост выше). И даже если бы Петро от натуги умственной додумался заменить свой МАС на Васькин (ARP-spoofing) , таже петрушка бы и случилась. Но, у Пети от злобы черной есть еще один способ, это нагадить всем кто в сети их домашней - менять как можно чаще свой МАС-адрес и тогда вся АРП таблица свича будет забита его "левыми" МАС-адресами и производительность свича жутко упадет. Вот тут уже нужно задуматься, как должен повести себя свич в случае обнаружения двух одинаковых записей в своей АРП-таблице. Мне лично кажется, что нужно делать и привязку по МАС-адресу делать и аутентификацию по паролю и VLAN-ы пилить, чтобы Пете осталось только подать на свой порт 220В и спалит нахер всю активку. Вобщем нацепить на себя все бронежилеты-каски и сесть в танк. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Денис Креминский Опубликовано 5 января, 2005 · Жалоба Кидаю камень... Товарисч конкретно спросил: "Что будет если у двух машин одинаковый IP-шник...", вот я вам про ИП-шники и стал говорить... ну, давайте разберемся с камнями :) Но ты АБСОЛЮТНО ПРАВ, свичи (не L3) и уж тем более хабы не оперируют IP-шниками, только МАС-адресами.Давай посмотрим как это работает. давайте :) Пусть свич только что включили и его АРП-таблица пуста.Тут Вася Пупкин включает свой комп(192.168.1.2) и его сетевая карта, с определенным интервалом начинает слать АРП-запросы (широковещательные). ARP-запросы вида who-has отправляются не периодически, а при формировании ip-пакета (tcp-сегмента, udp-датаграммы и т.д.) до хоста, с которым отправитель хочет пообщаться, ну а если адреса интерфейса и получателя по сетевой маске не совпадают -- до маршрутизатора по умолчанию. Определенных интервалов у таких запросов нет. Свич тоже начинает слать АРП-запросы. Это с каких, пардон, радостей? :) Если мы рассматриваем его как IP-устройство, которое вы, допустим, пытаетесь администрировать. Но мы же говорим о свиче как "бридже с дополнительными функциями", да? АРП-пакеты не маршрутизируются и "живут" только в своем Ethernet сегменте сети. То есть тебе не удастся узнать какой МАС-адрес у сервера www.microsoft.com, зато какой у Пети с Колей - пожалуйста. ну, очевидное не оспариваем :) ...Что же получилось ? На свиче образовалось две записи с одним ИП-шником, но разными МАС-адресами. хы хы :) кто-то в студии говорил, что свичи не оперируют IP-адресами? Так откуда там теперь соответствия-то :) Свич держит соответствие между *ВНИМАНИЕ* MAC-адресами и физическими портами. Улавливаете? :) В общем, дальнейшие рассуждения основаны на неверной предпосылке :) Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Nag Опубликовано 5 января, 2005 · Жалоба Ха. Ну ладно - пусть это не относится к теме вопроса... Но... Откуда вы взяли, что у дешевого свитча вообще может быть 2 порта на МАК в САМ-таблице? ;-) И не начнет ли Свитч при 2 одинаковых МАКах на разных портах просто "двигать" метку по САМ-таблице... Справедливо (с точки зрения свитча) предполагая что это глупый юзверь тыкается витой парой в разные порты... Только очень быстро. ;-) Собственно, я не уверен в таком варианте - но он представляется вполне реальным. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
gorbva Опубликовано 5 января, 2005 · Жалоба Про камень №1 ... ARP-запросы вида who-has отправляются не периодически, а при формировании ip-пакета (tcp-сегмента, udp-датаграммы и т.д.) до хоста, с которым отправитель хочет пообщаться, ну а если адреса интерфейса и получателя по сетевой маске не совпадают -- до маршрутизатора по умолчанию. Определенных интервалов у таких запросов нет Частично согласен. Не вспомню щас ссылку где видел, но ... Попробуй на виндовозной машине послушать траффик, с отключееными службами (Типа IE, Outlook Express и пр.) ... он тебя неприятно удивит. Камень № 2 Это с каких, пардон, радостей? :) Если мы рассматриваем его как IP-устройство, которое вы, допустим, пытаетесь администрировать. Но мы же говорим о свиче как "бридже с дополнительными функциями", да? Тоже частично согласен, но где вы в наше время видели неуправляемые свичи ? Камень №3 кто-то в студии говорил, что свичи не оперируют IP-адресами? Так откуда там теперь соответствия-то :) Свич держит соответствие между *ВНИМАНИЕ* MAC-адресами и физическими портами. Улавливаете? :) Согласен полностью с вами коллега. Тут я лажу прогнал. Но коннекта все равно не будет если в сети два компа с одним ИП-шником присутствуют. Попробуйте если не верите ... И не начнет ли Свитч при 2 одинаковых МАКах на разных портах просто "двигать" метку по САМ-таблице... Да почему о должен двигать ? Откуда он узнает чей адрес правильный? по-моему произойдет что-то типа миррора портов. Оба должны получить пакет... ИМХО. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Денис Креминский Опубликовано 5 января, 2005 · Жалоба Частично согласен. Не вспомню щас ссылку где видел, но ...Попробуй на виндовозной машине послушать траффик, с отключееными службами (Типа IE, Outlook Express и пр.) ... он тебя неприятно удивит. да ради бога :) сути не меняет. Тоже частично согласен, но где вы в наше время видели неуправляемые свичи ? ARP-таблица управляемого свича не имеет никакого отношения к решению "а куда же мне отправить вот этот вот фрейм..." ибо во фрейме не анализируется информация об IP-адресе. Строго говоря, оной там может и не быть (ipx видали у новелла? свичи его, между прочим, тоже неплохо передают :)) Решение принимается на основании таблицы соответствия MAC и физических портов. И это не ARP-таблица. Но коннекта все равно не будет если в сети два компа с одним ИП-шником присутствуют. Попробуйте если не верите ... Натурально! Ибо если они существуют в одном сегменте, то одна из систем (Петина или Васина) объявит громогласно о конфликте адресов. Через ARP этот конфликт, кстати, определив. А если системы будут в разых сегментах, то IP-пакеты между ними не смогут маршрутизироваться, ибо маршрут -- это принятие конкретного решения, на какой интерфейс маршрутизатора отправить пакет :) на основании другой таблицы -- маршрутизации. Короче, ни маршрутизаторы, ни свичи не отправляют пакеты неконкретно куда-то или 50 на 50, как кто-то имел смелость заявить выше :) Строго говоря, ситуации с разными направлениями отправки пакета одному получателю возможны при наличии динамической маршрутизации, когда стечение обстоятельств изменяет маршрут для того или иного адресата. Но это не имеет к топику никакого отношения :) Да почему о должен двигать ? Откуда он узнает чей адрес правильный? по-моему произойдет что-то типа миррора портов. Оба должны получить пакет... ИМХО. Потому что соответствие порта и MAC будет меняться :) Ох, кто-то не понимает сути происходящих процессов :) Nag, подозреваю, что может начать двигать, но к пересылке фрейма это все равно привести не должно. Там скорее всего будет какое-то время "на устаканивание юзера", который быстро-быстро линк из порта в порт перетыкает :)) Но это тоже домыслы :) Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Nag Опубликовано 5 января, 2005 · Жалоба УФ. Давно вяяснено эксперементальным путем, что два юзера с одинаковыми МАС и IP в сети на неуправляемых коммутаторах работать МОГУТ. Плохо, сессии будут рваться, но могут. Был на эту тему обзор даже года полтора назад. ;-) Скажем если один читает книгу или спит с включенным компом - второй более-менее нормально ворует. ;-) Но - это все на простой сети, без всяких ВПН и тегированных виланов. ;-) Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Денис Креминский Опубликовано 5 января, 2005 · Жалоба УФ. Давно вяяснено эксперементальным путем, что два юзера с одинаковыми МАС и IP в сети на неуправляемых коммутаторах работать МОГУТ. Плохо, сессии будут рваться, но могут. Был на эту тему обзор даже года полтора назад. ;-) Скажем если один читает книгу или спит с включенным компом - второй более-менее нормально ворует. ;-) Но - это все на простой сети, без всяких ВПН и тегированных виланов. ;-) Спасибо, отче :) Рассудил :) Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Nag Опубликовано 5 января, 2005 · Жалоба Да почему о должен двигать ? Откуда он узнает чей адрес правильный? по-моему произойдет что-то типа миррора портов. Оба должны получить пакет... ИМХО. Свитч тупой. Он знает только сам-таблицу (одна на весь свитч). В таблице - есть поле адреса, есть поле порта. И должен по идее быть механизм, который не позволяет образовываться двойникам (простой - если такой МАС уже есть - меняем порт, а не вносим МАК еще раз). По крайней мере это более логично с точки зрения логики, устройство работает однозначно при том же переключении пользователя. В противном случае - я протыкал порты кабелем с одного конца - получил 8 записей в таблице... Куда пакет слать будем? ;-) Разработчику проще и правильнее такого маразма просто не допускать. Хотя это просто логика - я не знаю как на самом деле это реализовано в коммутаторах. Может быть и по разному у разных производителей. ;-) Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Shiva Опубликовано 5 января, 2005 · Жалоба Что вы до свичей докапались? если каждый в свём влане идёт до сервера, только сервер увидит одинаковые IP, клиенты и не будут знать что у них одинаковые IP. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Roman Ivanov Опубликовано 6 января, 2005 · Жалоба Что вы до свичей докапались? если каждый в свём влане идёт до сервера, только сервер увидит одинаковые IP, клиенты и не будут знать что у них одинаковые IP. Тем более. ARP запись на сервере одна, а не двв. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...