Горячее
Лучшее
Свежее
Подписки
Сообщества
Блоги
Эксперты
Войти
Забыли пароль?
или продолжите с
Создать аккаунт
Я хочу получать рассылки с лучшими постами за неделю
или
Восстановление пароля
Восстановление пароля
Получить код в Telegram
Войти с Яндекс ID Войти через VK ID
Создавая аккаунт, я соглашаюсь с правилами Пикабу и даю согласие на обработку персональных данных.
ПромокодыРаботаКурсыРекламаИгрыПополнение Steam
Пикабу Игры +1000 бесплатных онлайн игр
Пройдите все испытания в игре кальмара второго сезона

Игра в кальмара 2: новые испытания

Аркады, Казуальные, Для мальчиков

Играть

Топ прошлой недели

  • AlexKud AlexKud 38 постов
  • SergeyKorsun SergeyKorsun 12 постов
  • SupportHuaport SupportHuaport 5 постов
Посмотреть весь топ

Лучшие посты недели

Рассылка Пикабу: отправляем самые рейтинговые материалы за 7 дней 🔥

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

Спасибо, что подписались!
Пожалуйста, проверьте почту 😊

Помощь Кодекс Пикабу Команда Пикабу Моб. приложение
Правила соцсети О рекомендациях О компании
Промокоды Биг Гик Промокоды Lamoda Промокоды МВидео Промокоды Яндекс Директ Промокоды Отелло Промокоды Aroma Butik Промокоды Яндекс Путешествия Постила Футбол сегодня

IT + Сеть

С этим тегом используют

Программирование IT юмор Программист Юмор Работа Картинка с текстом Разработка Интернет Не мое Wi-Fi Компьютер Помощь Все
113 постов сначала свежее
3
user7492036
4 месяца назад

Какие твои данные может схватить сайт?⁠⁠

Прочитал практически все, железо, характеристики, экран, разрешение, местоположение, даже серийники харда. Но видит ли он название аккаунта гугл/почту?

Регается твинк и не хотелось бы на таком оступиться.

Или допустим создам просто второй рабочий аккаунт гугл, может ли сайт из истории выдернуть название первого?

Сети Сайт IT Cookie Текст
3
2248
Timeweb.Cloud
Timeweb.Cloud
4 месяца назад
Лига Сисадминов

Сложно о простом. Как работает интернет. Часть 2. Что такое сеть, маска подсети, сегментация сети с помощью VLAN и маски⁠⁠

Автор текста: ProstoKirReal

Сложно о простом. Как работает интернет. Часть 2. Что такое сеть, маска подсети, сегментация сети с помощью VLAN и маски IT, Интернет, Сети, Электроника, Timeweb, Длиннопост, Программа

Приветствую, коллеги! Меня зовут @ProstoKirReal Мне бы хотелось с вами обсудить как работает интернет от кабелей на витой паре, соединяющие простые локальные сети до подводных коммуникационных кабелей соединяющие между собой континенты и основные операторские сети.

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

Рекомендую, перед прочтением, ознакомится с предыдущей статьей: Сложно о простом. Как работает интернет. Часть 1. Что такое коммутатор, маршрутизатор и примеры работы простых сетей

В этом цикле статей я не стану учить вас настраивать оборудование и проектировать сети. Я расскажу об основных (и не только) принципах построения сети, а также о функционировании сети и сетевых протоколов в стеке TCP/IP.

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

❯ Зачем нужна эта статья?

Данная статья нужна нам для того, чтобы разобраться в базовых знаниях и разобрать:

  • что такое сеть, подсеть, маска подсети;

  • что такое сегментация сети с помощью маски, VLAN;

  • примеры работы сети с разделением на сегменты.

❯ Что такое сеть, подсеть и маска подсети?

Сеть — это группа устройств, соединенных между собой для обмена данными. Примером может служить домашняя Wi-Fi-сеть, где ваш смартфон, ноутбук и умная колонка подключены к одному маршрутизатору.

Подсеть (subnet) — это часть более крупной сети. Она позволяет логически разделять сеть на меньшие сегменты, чтобы уменьшить трафик и повысить безопасность. Например, в офисе можно создать подсети для отделов: бухгалтерия, ИТ, ИБ, HR.

Маска подсети — это параметр, определяющий, какая часть IP-адреса относится к сети, а какая — к хосту.

Пример:

  • IP-адрес: 192.168.1.10;

  • маска подсети: 255.255.255.0.

Маска подсети указывает, что первые три октета (192.168.1) — это адрес сети, а последний (10) — идентификатор устройства.

IP-адрес можно представить как почтовый адрес: первая часть (адрес сети) — это как название улицы, общая для всех домов на этой улице, а вторая часть (адрес узла) — как номер дома или квартиры, уникальный для каждого дома на одной улице.

Если смотреть на IP-адрес слева направо, то сначала идет адрес сети до определенного символа, а затем адрес хоста. Граница перехода является плавающей и настраивается с помощью маски.

Одинаковые с виду IP-адреса могут оказаться адресами разных компьютеров в разных сетях.

Для того чтобы не было путаницы, придумали маску подсети. Маска подсети представляет собой набор единиц и нулей, в котором слева направо единицы идут подряд до какого-то символа, а потом до конца идут только нули.

При наложении IP-адреса на маску единицы указывают на то, что в адресе данные биты не будут меняться, а нули показывают, что данные биты будут уникальными и будут изменяться в зависимости от количества хостов.

Сложно о простом. Как работает интернет. Часть 2. Что такое сеть, маска подсети, сегментация сети с помощью VLAN и маски IT, Интернет, Сети, Электроника, Timeweb, Длиннопост, Программа

IP-адрес и маска подсети

Если перевести маску 11111111.11111111.11111111.00000000 в десятичную систему, то получится число 255.255.255.0, которое мы указываем в настройках сетевой карточки. Иногда мы говорим, что это 24-я маска, или в некоторых настройках IP-адреса вводим префикс /24. Это, простыми словами, означает количество единиц в маске: сначала идут 24 единицы, а затем 8 нулей.

❯ Почему IP-адреса так выглядят?

IP-адреса, которые мы видим, например, 192.168.1.1, — это их десятичное представление, удобное для человека. Но компьютеры работают с адресами в двоичном формате, где каждое число заменяется последовательностью из нулей и единиц.

Пример перевода в двоичный формат:

  • число 0 → 00000000;

  • число 1 → 00000001;

  • число 2 → 00000010;

  • число 3 → 00000011;

    ...

  • число 255 → 11111111.

Каждый IP-адрес состоит из четырех частей, называемых октетами. Октет — это 8 бит, или 8 нулей и единиц.

Логика изменения чисел:

  • при увеличении значения на 1, изменяется младший бит;

  • если младший бит уже равен 1, изменяется следующий более старший бит.

Например:

  • число 3: 00000011;

  • число 4: 00000100.

Всего в одном октете может быть 256 значений: от 0 до 255.

❯ Как связаны IP-адрес и маска подсети?

Чтобы понять, какая часть IP-адреса относится к сети, а какая — к хосту, IP-адрес и маска подсети переводятся в двоичный вид.

Пример для 192.168.1.0/24:

  • IP-адрес: 11000000.10101000.00000001.00000000

  • маска:11111111.11111111.11111111.00000000

Первые три октета (24 бита, что соответствует маске /24) обозначают сеть. Последний октет используется для идентификации устройства.

❯ Сегментация сети: зачем она нужна и как работает

Сегментация сети — это процесс разделения сети на логические или физические части. Основные причины сегментации:

1.  Уменьшение трафика. В сегментированной сети пакеты данных отправляются только в нужный сегмент, а не ко всем устройствам;

2.  Сокращение широковещательного трафика. Повышаем производительность всей сети, путем сокращения широковещательных пакетов (ARP, DHCP) в сегментах сети;

3.  Повышение безопасности. Чувствительные данные можно изолировать в отдельном сегменте (Wi-Fiгостевой сети отделить от всей остальной сети);

4.  Упрощение управления. Легче управлять небольшими подсетями, чем одной большой сетью;

5.  Построение независимой логической сети. Логическая структура сети не зависит от физической структуры;

6.  Повышение эффективности общей сети. В совокупности всех факторов, повышается эффективность всей сети.

Пример

В компании используются две подсети:

  • 192.168.1.0/24 — для отдела разработки;

  • 192.168.2.0/24 — для отдела продаж.

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

❯ Как разделить сеть на подсети?

Предположим, что нам выделили одну сеть — 192.168.1.0/24, но её необходимо разделить на несколько независимых подсетей.

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

Например, в сети 192.168.1.0/24 есть 256 адресов (от 0 до 255).

Если требуется разделить эту сеть на 4 независимые подсети, каждая из которых содержит по 60 адресов, нужно разделить 256 адресов на 4 равные части.

Результат:

  • первая подсеть: от 0 до 63;

  • вторая подсеть: от 64 до 127;

  • третья подсеть: от 128 до 191;

  • четвертая подсеть: от 192 до 255.

Каждая подсеть состоит из 64 адресов. Теперь нужно определить префикс маски для этих диапазонов.

Сложно о простом. Как работает интернет. Часть 2. Что такое сеть, маска подсети, сегментация сети с помощью VLAN и маски IT, Интернет, Сети, Электроника, Timeweb, Длиннопост, Программа

Диапазон адресов при маске подсети /26

❯ Определение маски подсети

Адреса подсетей в двоичном виде:

От 0 до 63 это:

  • число 0 →  00|000000;

  • число 1 →  00|000001;

    ...

  • число 63 → 00|111111.

От 64 до 127 это:

  • число 64 →  01|000000;

  • число 65 →  01|000001;

    ...

  • число 127 → 01|111111.

От 128 до 191 это:

  • число 128 → 10|000000;

  • число 129 → 10|000001;

    ...

  • число 191 → 10|111111.

От 192 до 255 это:

  • число 192 → 11|000000;

  • число 193 → 11|000001;

    ...

  • число 255 → 11|111111.

Из двоичного представления видно, что первые 2 старших бита определяют номер подсети, а оставшиеся 6 бит — уникальные адреса в ней.

Маска подсети:

  • два старших бита фиксируются для определения подсети, а 6 младших бит используются для адресов внутри подсети;

  • это соответствует маске /26, где 26 бит — часть сети, а оставшиеся 6 бит — для хостов.

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

Правила деления сети

В сети 192.168.1.0/24 можно разделить адреса следующим образом:

  • на 2 части (/25) — по 128 адресов в каждой подсети;

  • на 4 части (/26) — по 64 адреса;

  • на 8 частей (/27) — по 32 адреса;

  • на 16 частей (/28) — по 16 адресов;

  • на 32 части (/29) — по 8 адресов;

  • на 64 части (/30) — по 4 адреса.

Дальнейшее деление невозможно, так как маска /31 оставляет только 2 адреса: один для сети и один для широковещательной рассылки. Уникальных адресов для устройств не остается.

❯ Формула расчета адресов

Количество доступных адресов в подсети можно рассчитать по формуле:
2^n - 2, где n — количество бит, оставшихся для хостов.

Пример:

  • для маски 255.255.255.192 (или /26) остается 6 бит на адреса;

  • всего: 26=6426=64 адреса;

  • из них:

    • один адрес используется для обозначения подсети (192.168.1.0);

    • один адрес зарезервирован для широковещательной рассылки (192.168.1.63).

Таким образом, доступно 62 адреса для хостов.

❯ Разберем пример работы на коммутаторах

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

В нашей сети есть несколько компьютеров:

  • 192.168.0.1/26 — из сети 192.168.0.0;

  • 192.168.0.2/26 — из сети 192.168.0.0;

  • 192.168.0.65/26 — из сети 192.168.0.64;

  • 192.168.0.66/26 — из сети 192.168.0.64.

Поведение коммутатора:

  • коммутатор на уровне 2 (канальный уровень) не анализирует IP-адреса или маски. Он работает с MAC-адресами и будет передавать трафик между портами, основываясь на своей таблице MAC-адресов;

  • при широковещательном ARP-запросе, он будет передаваться каждому компьютеру в общей сети.

Если компьютер 192.168.0.1/26 захочет обменяться пакетами с хостом (конечным устройством) 192.168.0.2/26, то между ними произойдет ARP и ICMP обмен без проблем, так как эти устройства находятся в одной подсети.

Сложно о простом. Как работает интернет. Часть 2. Что такое сеть, маска подсети, сегментация сети с помощью VLAN и маски IT, Интернет, Сети, Электроника, Timeweb, Длиннопост, Программа

Передача запрос/ответа в одной подсети

Но если компьютер 192.168.0.1/26 захочет обменяться пакетами с хостом 192.168.0.66/26, то ARP-запрос поступит на этот узел, но ARP-ответа не будет, так как 192.168.0.66/26 находится в другой подсети.

Сложно о простом. Как работает интернет. Часть 2. Что такое сеть, маска подсети, сегментация сети с помощью VLAN и маски IT, Интернет, Сети, Электроника, Timeweb, Длиннопост, Программа

Передача ARP-запроса из разных подсетей невозможна

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

❯ А что, если в нашей сети будут IP-адреса из разных подсетей?

В нашей сети есть несколько компьютеров:

  • 192.168.0.1/24 — из сети 192.168.0.0;

  • 192.168.0.2/24 — из сети 192.168.0.0;

  • 192.168.0.65/26 — из сети 192.168.0.64;

  • 192.168.0.66/26 — из сети 192.168.0.64.

Обзор ситуации:

  • компьютеры с маской /24 (255.255.255.0) считают, что вся сеть 192.168.1.0 - 192.168.1.255 является одной подсетью;

  • компьютеры с маской /26 (255.255.255.192) интерпретируют ту же сеть как четыре отдельных подсети:

    • 192.168.1.0 - 192.168.1.63;

    • 192.168.1.64 - 192.168.1.127;

    • 192.168.1.128 - 192.168.1.191;

    • 192.168.1.192 - 192.168.1.255.

Из-за этого компьютеры с разными масками «видят» разные границы сети и могут по-разному интерпретировать, куда направлять трафик.

Поведение сети

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

  • компьютеры с маской /24 смогут общаться между собой без проблем, так как они считают, что находятся в одной и той же подсети;

  • то же самое относится к компьютерам с маской /26, если они находятся в одном и том же диапазоне подсети (например, оба находятся в диапазоне 192.168.1.0 - 192.168.1.63).

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

  • если компьютер 192.168.0.1/24 пытается отправить данные устройству 192.168.0.65/26, он будет считать это устройство частью своей подсети и отправит пакет напрямую (через ARP-запрос);

  • однако компьютер с маской 192.168.0.65/26, интерпретируя свою подсеть, может считать, что отправитель находится в другой подсети. В этом случае он будет ожидать маршрут через шлюз. Если шлюз не настроен или отсутствует, связь не состоится.

Поведение коммутатора:

  • коммутатор на уровне 2 (канальный уровень) не анализирует IP-адреса или маски. Он работает с MAC-адресами и будет передавать трафик между портами, основываясь на своей таблице MAC-адресов;

  • коммутатор не сможет предотвратить конфликтов из-за разной интерпретации подсетей на устройствах.

❯ Возможные проблемы

  1. Проблемы с доступностью узлов. Устройства с разными масками могут не видеть друг друга или неправильно направлять пакеты.

  2. ARP-конфликты:

    • устройства с маской /24 могут отправлять ARP-запросы на весь диапазон адресов 192.168.1.0 - 192.168.1.255, что приведет к ненужному трафику;

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

  3. Отсутствие маршрутизации. Если не настроен шлюз, устройства с разными масками не смогут обмениваться данными, даже если физически находятся в одной сети.

  4. Сложности диагностики. Администратору будет сложно понять, почему некоторые устройства не видят друг друга.

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

❯ Что такое VLAN

VLAN (Virtual Local Area Network) — это технология, которая позволяет разделять устройства на разные логические сегменты внутри одной физической сети. Основное назначение VLAN — повышение безопасности, улучшение управляемости и оптимизация трафика в локальных сетях.

Пример использования VLAN

На коммутаторе можно создать VLAN для бухгалтерии, присвоив ему ID 10, и VLAN для IT с ID 20. Устройства в разных VLAN не видят друг друга, даже если они физически подключены к одному коммутатору. Это позволяет изолировать данные и уменьшить количество широковещательного трафика.

Основные преимущества VLAN

1.  Изоляция трафика. Устройства в разных VLAN не могут обмениваться данными без маршрутизации через Layer 3 устройства (маршрутизаторы или L3-коммутаторы).

2.  Безопасность. VLAN предотвращают случайный или намеренный доступ устройств из других сегментов сети.

3.  Оптимизация. Разделение на VLAN уменьшает нагрузку на сеть, так как широковещательные запросы остаются внутри VLAN.

4.  Гибкость. Устройства можно объединять в одну VLAN, даже если они подключены к разным физическим коммутаторам (при наличии транковых  соединений).

Технология 802.1Q

IEEE 802.1Q — это стандарт для тегирования кадров Ethernet, используемый для идентификации VLAN. Когда кадр проходит через коммутатор с поддержкой VLAN, в его заголовок добавляется специальный тег 802.1Q. Подробнее о структуре такого пакета я говорил в этой статье.

Взаимодействие VLAN через магистральные (транковые) порты

Для передачи трафика нескольких VLAN между коммутаторами используются магистральные порты. Магистральный порт помечает каждый кадр тегом 802.1Q, чтобы принимающая сторона знала, к какой VLAN он принадлежит. Это позволяет устройствам из одной VLAN, находящимся на разных коммутаторах, общаться друг с другом.

Пример: если два коммутатора соединены магистральным портом, и у обоих настроены VLAN с ID 10 и 20, то устройства VLAN 10 на первом коммутаторе смогут взаимодействовать с устройствами VLAN 10 на втором.

Внедрение и настройка VLAN

Процесс настройки VLAN обычно включает следующие шаги:

  • создание VLAN на коммутаторе и присвоение ей уникального идентификатора (ID);

  • назначение портов VLAN, в том числе выбор типа порта — access или trunk;

  • настройка транковых портов для взаимодействия VLAN между коммутаторами;

  • конфигурирование маршрутизации между VLAN (если требуется обмен данными между сегментами).

Примеры использования VLAN

1.  Сегментация сети по отделам. Бухгалтерия, ИТ, HR — каждое подразделение получает свой VLAN.

2.  Гостевой доступ. Создание изолированного VLAN для подключения гостей без доступа к основной корпоративной сети.

3.  Поддержка IP-телефонии. Выделение отдельного VLAN для VoIP-трафика для обеспечения качества связи.

4.  Сетевая безопасность. Разделение трафика для минимизации риска несанкционированного доступа.

❯ Примеры работы VLAN на коммутаторах

Для наглядности разберем работу VLAN в сети с несколькими устройствами и двумя коммутаторами.

Устройства в сети:

  • компьютер №1: 192.168.0.1, VLAN ID № 2;

  • компьютер №2: 192.168.0.2, VLAN ID № 2;

  • компьютер №3: 192.168.1.1, VLAN ID № 3;

  • коммутатор №1 и №2: MAC-таблица изначально пуста.

Шаг 1: ARP-запрос

Когда компьютер №1 отправляет «ping» на компьютер №2, он сначала формирует ARP-запрос для определения MAC-адреса получателя.

На стороне компьютера: ARP-запрос изначально не содержит VLAN ID и не имеет тега в заголовке.

Сложно о простом. Как работает интернет. Часть 2. Что такое сеть, маска подсети, сегментация сети с помощью VLAN и маски IT, Интернет, Сети, Электроника, Timeweb, Длиннопост, Программа

ARP-запрос от компьютера №1

На коммутаторе №1: Запрос поступает на access-порт, где ему присваивается VLAN ID 2 (так как этот VLAN настроен на порту).

Сложно о простом. Как работает интернет. Часть 2. Что такое сеть, маска подсети, сегментация сети с помощью VLAN и маски IT, Интернет, Сети, Электроника, Timeweb, Длиннопост, Программа

ARP-запросу присваивается VLAN тег

Действия коммутатора №1:

  • в MAC-таблицу добавляется информация о MAC-адресе Компьютера №1;

  • поскольку MAC-адрес Компьютера №2 еще неизвестен, запрос отправляется на trunk-порт с добавленным VLAN ID 2.

Сложно о простом. Как работает интернет. Часть 2. Что такое сеть, маска подсети, сегментация сети с помощью VLAN и маски IT, Интернет, Сети, Электроника, Timeweb, Длиннопост, Программа

Передача ARP-запроса по trunk-порту

Действия коммутатора №2:

  • после получения пакета на trunk-порту, коммутатор добавляет MAC-адрес Компьютера №1 в свою MAC-таблицу;

  • затем VLAN тег снимается, и запрос рассылается во все активные access-порты с VLAN ID 2.

Сложно о простом. Как работает интернет. Часть 2. Что такое сеть, маска подсети, сегментация сети с помощью VLAN и маски IT, Интернет, Сети, Электроника, Timeweb, Длиннопост, Программа

Снятие VLAN тэга с ARP-запроса

Ответ от Компьютера №2:

  • компьютер №2 отвечает на ARP-запрос, формируя ответный пакет. Этот пакет изначально не содержит VLAN тега.

Сложно о простом. Как работает интернет. Часть 2. Что такое сеть, маска подсети, сегментация сети с помощью VLAN и маски IT, Интернет, Сети, Электроника, Timeweb, Длиннопост, Программа

ARP-ответ от компьютера №2

Действия коммутаторов:

  • на access-порту коммутатора №2 пакету снова присваивается VLAN ID 2;

  • пакет передается через trunk-порт коммутатору №1, который снимает VLAN тег и направляет его на порт, соответствующий MAC-адресу Компьютера №1.

Сложно о простом. Как работает интернет. Часть 2. Что такое сеть, маска подсети, сегментация сети с помощью VLAN и маски IT, Интернет, Сети, Электроника, Timeweb, Длиннопост, Программа

Передача ARP-ответа по сети

После завершения ARP-обмена начинается ICMP-обмен между Компьютером №1 и Компьютером №2

ICMP-запрос от Компьютера №1:

  • формируется без VLAN тега;

  • коммутатор №1 присваивает пакету VLAN ID 2 и отправляет его через trunk-порт;

  • коммутатор №2 снимает VLAN тег и передает пакет Компьютеру №2.

ICMP-ответ от Компьютера №2:

  • проходит тот же путь, но в обратном направлении.

Сложно о простом. Как работает интернет. Часть 2. Что такое сеть, маска подсети, сегментация сети с помощью VLAN и маски IT, Интернет, Сети, Электроника, Timeweb, Длиннопост, Программа

Прохождение ICMP-запрос/ответа по сети

Добавление нового устройства

Теперь добавим в сеть Компьютер №4 с IP-адресом 192.168.1.2 и VLAN ID 3. Он подключен к access-портукоммутатора №2.

Если Компьютер №3 отправляет «ping» на Компьютер №4, происходит следующий процесс:

  1. ARP-запрос от Компьютера №3:

    • запрос не имеет VLAN тега;

    • коммутатор №1 присваивает пакету VLAN ID 3 и передает его через trunk-порт коммутатору №2;

    • Коммутатор №2 снимает VLAN тег и направляет запрос Компьютеру №4.

  2. ARP-ответ от Компьютера №4. Ответ возвращается аналогичным образом, с добавлением и снятием VLAN тега на каждом коммутаторе;

  3. ICMP-обмен.После ARP-обмена происходит ICMP-обмен между Компьютером №3 и Компьютером №4, используя тот же путь.

Сложно о простом. Как работает интернет. Часть 2. Что такое сеть, маска подсети, сегментация сети с помощью VLAN и маски IT, Интернет, Сети, Электроника, Timeweb, Длиннопост, Программа

Передача пакетов в VLAN №3

❯ Анализ MAC-таблиц

После завершения обмена ARP и ICMP, в MAC-таблицах коммутаторов можно заметить, что:

  • У trunk-порта на каждом коммутаторе будут указаны несколько MAC-адресов, каждый из которых привязан к своему VLAN ID.

Важно: Trunk-порт должен быть правильно настроен для передачи трафика с несколькими VLAN ID. Ошибки в настройке могут привести к потере пакетов и некорректной работе сети.

❯ Заключение

В этой статье мы разобрали ключевые понятия: сеть, подсеть, маска подсети, сегментация сети с помощью маски и VLAN.

В следующей статье разберем как работает маршрутизация в сети.

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

Немного важной информации

Коллеги, добрый день! Я создал Telegram-канал от сетевика для сетевиков.
Если ты сетевой инженер, системный администратор, разработчик, студент или просто увлекаешься сетями — тебе сюда.

Что тебя ждет?

  • Разборы глобальных сбоев и неожиданных сетевых проблем.

  • Мини-статьи с полезными фишками и объяснением сложных тем простым языком.

  • Истории из жизни сетевиков — в том числе от подписчиков.

Ссылка на канал: https://t.me/ProstoKirReal


Написано специально для Timeweb Cloud и читателей Пикабу. Больше интересных статей и новостей в нашем блоге на Хабре и телеграм-канале.

Хочешь стать автором (или уже состоявшийся автор) и есть, чем интересным поделиться в рамках наших блогов — пиши сюда.

Облачные сервисы Timeweb Cloud — это реферальная ссылка, которая может помочь поддержать авторские проекты.

Показать полностью 12
[моё] IT Интернет Сети Электроника Timeweb Длиннопост Программа
139
291
Timeweb.Cloud
Timeweb.Cloud
5 месяцев назад
Лига Сисадминов

Сложно о простом. Как работает интернет. Часть 1. Что такое коммутатор, маршрутизатор и примеры работы простых сетей⁠⁠

Приветствую, коллеги! Меня зовут @ProstoKirReal. Мне бы хотелось с вами обсудить как работает интернет от кабелей на витой паре, соединяющие простые локальные сети до подводных коммуникационных кабелей соединяющие между собой континенты и основные операторские сети.

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

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

В этом цикле статей я не стану учить вас настраивать оборудование и проектировать сети. Я расскажу об основных (и не только) принципах построения сети, а также о функционировании сети и сетевых протоколов в стеке TCP/IP.

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

❯ Зачем нужна эта статья?

Данная статья нужна нам для того, чтобы разобраться в базовых знаниях и разобрать:

- что такое коммутатор, маршрутизатор, их основные различия и зачем они нужны;
- примеры работы простых сетей, с помощью сетевых концентраторов (хабов) и коммутаторов.

❯ Что такое коммутатор, маршрутизатор?

Когда мы задаем вопрос в поисковике: «Чем отличается коммутатор от маршрутизатора?», то один из самых распространенных ответов, который можно найти в интернете (например, на Mail.ru), звучит так:

в функционале. маршрутизатор - маршрутизирует, коммутатор - коммутирует. все просто:)))

Это, пожалуй, самый краткий и ёмкий ответ на данный вопрос.

Однако если подойти к вопросу серьезно, необходимо разобраться в понятиях коммутации и маршрутизации.

Коммутация — это процесс перенаправления данных (кадров) в пределах одной сети, основанный на анализе адреса назначения. Она работает на канальном уровне модели OSI (L2), используя MAC-адреса устройств.

Маршрутизация — это процесс определения пути для передачи данных между разными сетями. Работает на сетевом уровне модели OSI (L3), используя IP-адреса.

Коммутаторы (switch) и маршрутизаторы (router) — это два ключевых устройства в сетевых инфраструктурах, которые выполняют разные, хотя и пересекающиеся, задачи. Разберемся в их функциях, особенностях и причинах появления, а также рассмотрим современные реалии, в которых их функциональность все больше пересекается.

Зачем появились маршрутизаторы

Исторически маршрутизаторы появились для соединения сетей с разными технологиями передачи данных. В начале эры сетей существовало множество локальных сетей (LAN) с различными стандартами: Ethernet, Token Ring, модемные пулы и другие. Эти сети были физически и логически разобщены, поскольку каждая из них использовала свои протоколы адресации и методы передачи данных.

Для решения этой проблемы была введена абстракция в виде IP-адреса — универсального протокола, не привязанного к физическому носителю. Маршрутизаторы стали устройствами, способными связывать сети с разными технологиями передачи данных, обеспечивая маршрутизацию на основе IP-адресов.

Основные функции

  1. Коммутаторы:

    • работают преимущественно на уровне 2 модели OSI (канальный уровень);

    • создают таблицы MAC-адресов, которые определяют, через какой физический порт отправлять трафик;

    • обеспечивают коммуникацию внутри одной локальной сети (LAN).

  2. Маршрутизаторы:

    • работают на уровне 3 модели OSI (сетевой уровень);

    • используют таблицы маршрутизации для определения оптимального пути передачи данных;

    • обеспечивают связь между разными сетями, в том числе с разными технологиями (Ethernet, Frame Relay, ATM, DSL);

    • используют протоколы маршрутизации, такие как OSPF, BGP, IS-IS.

Совместная работа коммутаторов и маршрутизаторов

  • Коммутаторы обеспечивают быстрый обмен данными внутри сети.

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

❯ Современные тенденции


Раньше этих различий хватало для определения работы коммутатора и маршрутизатора, но в современных устройствах все эти функции часто объединяются в L3-коммутаторах, которые совмещают преимущества обоих типов устройств.
На данный момент различия между ними размыто, так как коммутаторы L3 и L3+ (Multiplayer switch) могут выполнять часть функционала маршрутизатора и маршрутизатор может иметь дополнительные физические порты для подключения локальных сетей.

❯ Рассмотрим различия между устройствами

L2-коммутаторы (канальный уровень)

❯ Особенности

  • Рабочий уровень: работают на 2 уровне модели OSI (канальный уровень).

  • Функциональность: обеспечивают передачу данных внутри одной локальной сети (LAN), используя таблицу MAC-адресов для маршрутизации кадров Ethernet.

  • Ограничения: не способны маршрутизировать трафик между разными VLAN или подсетями.

❯ Плюсы

  • Простая настройка.

  • Высокая производительность для однорангового (peer-to-peer) соединения.

❯ Минусы

  • Отсутствие поддержки IP-адресации.

  • Не подходит для сложных сетевых структур с множеством VLAN.

L3-коммутаторы (сетевой уровень)

❯ Особенности

  • Рабочий уровень: работают на 3 уровне модели OSI (сетевой уровень).

  • Функциональность:

    • выполняют функции коммутатора (L2) и маршрутизатора (L3);

    • поддерживают маршрутизацию между VLAN через интерфейсы SVI (Switch Virtual Interface);

    • поддерживают IP-адресацию и статическую маршрутизацию.

❯ Плюсы

  • Универсальность.

  • Встроенная поддержка маршрутизации.

❯ Минусы

  • Ограниченные возможности динамической маршрутизации (по сравнению с маршрутизаторами). Обычно используется «межвлановая» маршрутизация, когда ip-адрес назначается на VLAN, а не на саб-интерфейс.

  • Более сложная настройка по сравнению с L2-коммутаторами.

L3+ коммутаторы (расширенные возможности сетевого уровня)

❯ Особенности

  • Рабочий уровень: также работают на 3 уровне, но с функциями, приближенными к маршрутизаторам.

  • Функциональность:

    • полноценная поддержка динамических протоколов маршрутизации (OSPF, BGP, EIGRP);

    • расширенные функции управления трафиком: ACL, QoS, NAT;

    • некоторые модели поддерживают MPLS для оптимизации передачи данных.

❯ Плюсы

  • Возможности динамической маршрутизации.

  • Более высокий уровень управления сетью.

❯ Минусы

  • Стоимость.

  • Сложность настройки.

Маршрутизаторы (Router)

❯ Особенности

  • Рабочий уровень: работают на 3 уровне модели OSI и выше.

  • Функциональность:

    • передача данных между разными сетями;

    • маршрутизация IPv4 и IPv6;

    • полноценная поддержка динамической маршрутизации (OSPF, BGP, RIP и др.);

    • поддержка VPN, NAT и часть функций межсетевого экранирования.

❯ Плюсы

  • Поддержка работы в глобальных сетях (WAN).

  • Высокий уровень безопасности.

❯ Минусы

  • Не предназначены для высокоскоростного L2-коммутирования.

  • Могут вызывать дополнительные задержки в локальных сетях.

❯ Сравнительная таблица

Сложно о простом. Как работает интернет. Часть 1. Что такое коммутатор, маршрутизатор и примеры работы простых сетей Интернет, IT, Сети, Timeweb, Электроника, Программа, Длиннопост
  • L2-коммутаторы идеально подходят для небольших сетей, где маршрутизация не требуется.

  • L3-коммутаторы — оптимальное решение для сетей с VLAN и умеренной сложностью.

  • L3+ коммутаторы находят применение в крупных и сложных инфраструктурах с необходимостью динамической маршрутизации.

  • Маршрутизаторы — необходимы для соединения локальных сетей с внешними сетями, но не заменяют коммутаторы внутри LAN.

Каждое устройство имеет свои уникальные сильные стороны и применяется в зависимости от масштабов и требований сети.

Хотя изначально коммутаторы и маршрутизаторы выполняли строго разные задачи, современное развитие сетевых технологий привело к значительному пересечению их функций.

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

❯ Что такое сеть?

Что же такое сеть? Если соединить два компьютера между собой, назначить им IP-адреса, будет ли это сетью? Ответ прост: да, это уже локальная сеть.

Сеть — это соединение двух и более компьютеров, устройств или других компонентов для обмена информацией.

Как только мы подключаем устройства к домашнему маршрутизатору, они становятся частью локальной сети. Маршрутизатор служит шлюзом по умолчанию для всех подключенных устройств и направляет пакеты данных для выхода в интернет.

Но пока не будем забегать вперед, начнем с самого простого — с двух соединенных между собой компьютеров.

❯ Рассмотрим самую простую сеть

Предположим, у нас есть два компьютера. Компьютер №1 имеет mac-адрес 00:00:00:00:00:0a, а компьютер №2 — 00:00:00:00:00:0b.

Мы назначаем компьютеру №1 IP-адрес 192.168.0.1, а компьютеру №2 — IP-адрес 192.168.0.2. Затем мы соединяем их сетевые карты «напрямую» с помощью витой пары.

Сложно о простом. Как работает интернет. Часть 1. Что такое коммутатор, маршрутизатор и примеры работы простых сетей Интернет, IT, Сети, Timeweb, Электроника, Программа, Длиннопост

Адресация компьютера №1 и №2

Чтобы проверить доступность соседнего компьютера, можно использовать утилиту «ping» и отправить запрос на него.

Однако есть проблема: компьютер №1 не сможет сразу отправить ICMP-запрос компьютеру №2, так как он не знает его mac-адрес. Это можно проверить, введя команду «arp -a» в командной строке (для Windows) и убедившись, что таблица ARP пуста.

Сложно о простом. Как работает интернет. Часть 1. Что такое коммутатор, маршрутизатор и примеры работы простых сетей Интернет, IT, Сети, Timeweb, Электроника, Программа, Длиннопост

Формирование ICMP-запроса невозможна

Как было сказано в предыдущей статье, ARP (Address Resolution Protocol) — это важнейший протокол в компьютерных сетях, который используется для определения MAC-адреса другого компьютера по известному IP-адресу.

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

Пакет будет выглядеть следующим образом:

  • src mac-адрес 00:00:00:00:00:0a;

  • dst mac-адрес ff:ff:ff:ff:ff:ff (широковещательный mac-адрес);

  • IP-адресов не будет, так как ARP работает на уровне L2;

  • в теле пакета будет информация: кто такой 192.168.0.2, спрашивает 192.168.0.1.

Сложно о простом. Как работает интернет. Часть 1. Что такое коммутатор, маршрутизатор и примеры работы простых сетей Интернет, IT, Сети, Timeweb, Электроника, Программа, Длиннопост

ARP-запрос

Подробнее о заголовках L3 уровня (ARP, ICMP и др.) я рассказывал в этой статье.

После того как ARP-ответ будет получен компьютером №2, он сохранит в своей ARP-таблице информацию о IP и mac-адресе компьютера №1.

Теперь компьютеру необходимо отправить ARP-ответ.

Пакет будет выглядеть следующим образом:

  • src mac-адрес 00:00:00:00:00:0b;

  • dst mac-адрес 00:00:00:00:00:0a;

  • IP-адресов не будет, так как ARP работает на уровне L2;

  • в теле пакета будет информация: у IP-адреса 192.168.0.2 mac-адрес - 00:00:00:00:00:0b.

Сложно о простом. Как работает интернет. Часть 1. Что такое коммутатор, маршрутизатор и примеры работы простых сетей Интернет, IT, Сети, Timeweb, Электроника, Программа, Длиннопост

ARP-ответ

После того как ARP-ответ поступит к компьютеру №1, он сохранит в своей ARP-таблице информацию о IP и mac-адресе компьютера №2.
Теперь для формирования ICMP-запроса известна вся информация, и от компьютера №1 будет сформирован следующий пакет:

  • src mac-адрес 00:00:00:00:00:0a;

  • dst mac-адрес 00:00:00:00:00:0b;

  • src IP-адрес 192.168.0.1;

  • dst IP-адрес 192.168.0.2

  • в теле пакета будет служебная информация для ICMP-протокола (подробнее в этой статье).

Сложно о простом. Как работает интернет. Часть 1. Что такое коммутатор, маршрутизатор и примеры работы простых сетей Интернет, IT, Сети, Timeweb, Электроника, Программа, Длиннопост

ICMP-запрос

После того как ICMP-запрос поступит на компьютер №2, тот отправит ICMP-ответ, так как уже знает mac-адрес соседнего устройства из своей ARP-таблицы.

Ответ будет выглядеть следующим образом:

  • src mac-адрес 00:00:00:00:00:0b;

  • dst mac-адрес 00:00:00:00:00:0a;

  • src-IP-адрес 192.168.0.2;

  • dst-IP-адрес 192.168.0.1;

  • в теле пакета будет служебная информация для ICMP-протокола.

После того как все эти пакеты прошли свой не долгий путь, в утилите «ping» появится первое сообщение о доступности соседнего устройства.

Сложно о простом. Как работает интернет. Часть 1. Что такое коммутатор, маршрутизатор и примеры работы простых сетей Интернет, IT, Сети, Timeweb, Электроника, Программа, Длиннопост

ICMP-ответ

❯ Три компьютера и сетевой концентратор (Hub)

❯ Что если нам нужно подключить больше компьютеров к одной сети?

Для этого в простых сетях используют сетевой концентратор, он же hub/хаб.

❯ Как работает хаб?

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

❯ Плюсы и минусы использования хаба

Хаб — это недорогое сетевое устройство, которое подходит для соединения небольших локальных сетей. Однако, если в сети используется большое количество устройств, возникают проблемы.

  1. Эффективность: хаб работает на уровне L1 модели OSI, что означает, что он не различает адреса. Все пакеты передаются всем устройствам, кроме отправителя, независимо от их назначения.

  2. Конфликт пакетов: поскольку данные передаются одновременно всем устройствам, в сети могут возникать коллизии. Чем больше устройств подключено, тем выше вероятность коллизий.

  3. Пропускная способность: каждый порт хаба делит общую пропускную способность сети, что приводит к её снижению по мере увеличения числа подключений.

Современные сети используют коммутаторы (switch), которые работают на уровне L2, что позволяет им направлять пакеты только устройствам-адресатам.

❯ Пример работы хаба

Предположим, у нас есть хаб и три компьютера с IP-адресами:

  • компьютер №1: 192.168.0.1;

  • компьютер №2: 192.168.0.2;

  • компьютер №3: 192.168.0.3.

Все три компьютера подключены к хабу. Теперь, если мы с компьютера №1 отправим запрос «ping» на компьютер №2, то процесс будет происходить следующим образом.

Шаг 1. ARP-запрос

Компьютер №1 сначала отправит ARP-запрос в сеть, чтобы узнать MAC-адрес компьютера №2. Этот запрос будет выглядеть так:

  • src MAC-адрес: 00:00:00:00:00:0a;

  • dst MAC-адрес: ff:ff:ff:ff:ff:ff (широковещательный адрес);

  • IP-адреса в пакете отсутствуют, так как ARP работает на уровне L2.

Сложно о простом. Как работает интернет. Часть 1. Что такое коммутатор, маршрутизатор и примеры работы простых сетей Интернет, IT, Сети, Timeweb, Электроника, Программа, Длиннопост

ARP-запрос к компьютеру №2

Действия хаба

Хаб получит этот пакет через порт, к которому подключен компьютер №1, и передаст его на все остальные порты, кроме порта-отправителя. Таким образом, ARP-запрос поступит как на компьютер №2, так и на компьютер №3. Компьютеры №2 и №3 сохранят в ARP-таблице запись о компьютере №1, так как запрос был широковещательным. Однако ответит на него только компьютер №2, так как IP-адрес в запросе соответствует его собственному.

Сложно о простом. Как работает интернет. Часть 1. Что такое коммутатор, маршрутизатор и примеры работы простых сетей Интернет, IT, Сети, Timeweb, Электроника, Программа, Длиннопост

Сохранение mac-адреса в arp таблицу

Ответ от компьютера №2

Компьютер №2 отправит ARP-ответ, который пройдет через хаб и будет доставлен компьютеру №1. Компьютер №3 проигнорирует этот ответ, так как он не предназначен ему.

ARP-ответ будет выглядеть следующим образом:

  • src MAC-адрес: 00:00:00:00:00:0b;

  • dst MAC-адрес: 00:00:00:00:00:0a;

  • IP-адреса в пакете отсутствуют, так как ARP работает на уровне L2.

Сложно о простом. Как работает интернет. Часть 1. Что такое коммутатор, маршрутизатор и примеры работы простых сетей Интернет, IT, Сети, Timeweb, Электроника, Программа, Длиннопост

ARP-ответ компьютеру №1

Шаг 2. ICMP-запрос и ответ

После завершения ARP-обмена компьютер №1 сформирует ICMP-запрос и отправит его на компьютер №2. Запрос и последующий ответ будут переданы аналогичным образом через хаб, но пакеты также дойдут до всех устройств в сети, создавая дополнительную нагрузку.

Сложно о простом. Как работает интернет. Часть 1. Что такое коммутатор, маршрутизатор и примеры работы простых сетей Интернет, IT, Сети, Timeweb, Электроника, Программа, Длиннопост

ICMP-запрос/ответ

❯ Особенности работы ARP в сети с хабом

В такой схеме:

  1. Компьютеры №1 и №2 знают о существовании друг друга;

  2. Компьютер №3 знает о компьютере №1, так как получил его ARP-запрос, но не знает о компьютере №2.

Небольшое пояснение почему:

Компьютер №3 знает о Компьютере №1 из своей ARP-таблицы, но не знает о Компьютере №2 по следующим причинам:

  1. Обработка ARP-запросов.

    ARP-запросы обрабатываются операционной системой компьютера, а не сетевой платой. Однако, поскольку ARP-запрос имеет широковещательный MAC-адрес назначения (ff:ff:ff:ff:ff:ff), он достигает всех устройств в локальной сети и принимается сетевой платой;

  2. Сохранение записи в ARP-таблице.

    Хотя Компьютер №3 получает ARP-запрос, адресованный другому IP-адресу (например, Компьютеру №1), он не отвечает на него. Однако информация из тела пакета (IP-адрес и MAC-адрес Компьютера №1) может быть сохранена в ARP-таблице Компьютера №3 как часть пассивного процесса обучения;

  3. Отбрасывание ARP-ответа.

    ARP-ответ, отправленный Компьютером №1, также достигает Компьютера №3. Однако, поскольку MAC-адрес назначения в этом пакете не совпадает с MAC-адресом сетевой карты Компьютера №3, пакет отбрасывается сетевой платой на аппаратном уровне. В результате информация о Компьютере №2 не попадает в ARP-таблицу Компьютера №3.

Если мы попытаемся «пингануть» с компьютера №2 компьютер №3, произойдет ARP-обмен, как в примере выше. Однако если мы попытаемся с компьютера №3 «пингануть» компьютер №1, процесс будет следующим:

  1. Компьютер №3, зная MAC-адрес компьютера №1 из своей ARP-таблицы, сразу отправит ICMP-запрос;

  2. Компьютер №1, не имея записи о компьютере №3, отбросит запрос и отправит широковещательный ARP-запрос;

  3. После получения ARP-ответа от компьютера №3 компьютер №1 сможет ответить на ICMP-запрос;

  4. Компьютер №3 отправит новый ICMP-запрос, на который компьютер №1 успешно ответит.

Когда мы запускаем утилиту «ping», некоторые пакеты теряются. Это происходит из-за того, что требуется ARP-обмен данными между всеми промежуточными устройствами. Именно поэтому возникает необходимость в обмене данными с использованием протокола ARP между всеми устройствами, находящимися между источником и получателем данных.

Сложно о простом. Как работает интернет. Часть 1. Что такое коммутатор, маршрутизатор и примеры работы простых сетей Интернет, IT, Сети, Timeweb, Электроника, Программа, Длиннопост

Обмен между компьютером №3 и №1

❯ Три компьютера и L2 коммутатор

❯ Как обеспечить стабильность работы сети и исключить коллизии?

Ответ прост: использовать L2-коммутатор.

❯ Принцип работы L2-коммутатора

Коммутатор работает на канальном уровне модели OSI и использует MAC-адреса для пересылки данных. Рассмотрим на примере, как это происходит.

Устройства в сети:

  • компьютер №1: 192.168.0.1;

  • компьютер №2: 192.168.0.2;

  • компьютер №3: 192.168.0.3;

  • коммутатор №1: MAC-таблица изначально пуста.

Шаг 1. ARP-запрос

Когда компьютер №1 отправляет запрос «ping» на компьютер №2, он сначала формирует ARP-запрос для определения MAC-адреса получателя. Этот запрос поступает на коммутатор, который, не имея записей в MAC-таблице, рассылает его на все активные порты, кроме порта-отправителя.

Сложно о простом. Как работает интернет. Часть 1. Что такое коммутатор, маршрутизатор и примеры работы простых сетей Интернет, IT, Сети, Timeweb, Электроника, Программа, Длиннопост

Пустая MAC-таблица на коммутаторе

Действия коммутатора:

  • Коммутатор добавляет в свою MAC-таблицу запись о компьютере №1, связав его MAC-адрес с портом, через который пришел запрос;

  • ARP-запрос доставляется компьютерам №2 и №3.

Сложно о простом. Как работает интернет. Часть 1. Что такое коммутатор, маршрутизатор и примеры работы простых сетей Интернет, IT, Сети, Timeweb, Электроника, Программа, Длиннопост

Первая запись в MAC-таблицу

Ответы компьютеров:

  • Компьютер №2, распознав свой IP-адрес, отправляет ARP-ответ;

  • Компьютер №3 игнорирует запрос, но сохраняет запись о MAC-адресе компьютера №1 в своей ARP-таблице.

Коммутатор, получив ARP-ответ от компьютера №2, обновляет свою MAC-таблицу, добавляя запись о MAC-адресе компьютера №2.

Сложно о простом. Как работает интернет. Часть 1. Что такое коммутатор, маршрутизатор и примеры работы простых сетей Интернет, IT, Сети, Timeweb, Электроника, Программа, Длиннопост

Вторая запись в MAC-таблицу

Шаг 2. ICMP-запрос и ответ

После завершения ARP-обмена компьютер №1 отправляет ICMP-запрос компьютеру №2. Благодаря MAC-таблице, коммутатор направляет пакеты только в порт, подключенный к компьютеру №2, избегая лишней нагрузки на другие устройства.

Сложно о простом. Как работает интернет. Часть 1. Что такое коммутатор, маршрутизатор и примеры работы простых сетей Интернет, IT, Сети, Timeweb, Электроника, Программа, Длиннопост

ICMP-запрос/ответ через коммутатор

❯ Особенности работы ARP в сети с коммутатором

  1. Компьютеры №1 и №2 знают о существовании друг друга;

  2. Компьютер №3 знает MAC-адрес компьютера №1, но не знает о существовании компьютера №2;

  3. В MAC-таблице коммутатора нет записи о компьютере №3.

Если компьютер №3 отправит запрос «ping» на компьютер №1, процесс будет следующий:

  1. Компьютер №3 сразу формирует ICMP-запрос, используя MAC-адрес из своей ARP-таблицы;

  2. Коммутатор передает пакет на порт компьютера №1;

  3. компьютер №1, не имея записи о компьютере №3, отправляет ARP-запрос;

  4. после завершения ARP-обмена компьютер №1 отвечает на ICMP-запрос.

Сложно о простом. Как работает интернет. Часть 1. Что такое коммутатор, маршрутизатор и примеры работы простых сетей Интернет, IT, Сети, Timeweb, Электроника, Программа, Длиннопост

Третья запись в MAC-таблице

❯ Что будет если во время работы коммутатор перезагрузится?

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

Сложно о простом. Как работает интернет. Часть 1. Что такое коммутатор, маршрутизатор и примеры работы простых сетей Интернет, IT, Сети, Timeweb, Электроника, Программа, Длиннопост

Очистка MAC-таблицы

В этой ситуации происходит следующее:

  1. Пакет, адресованный компьютеру №2, поступает на коммутатор. Поскольку MAC-таблица коммутатора пуста, чтобы обеспечить корректную работу сети, коммутатор передает эти пакеты на все порты, кроме того порта, через который они были получены. Затем в MAC-таблицу коммутатора добавляется первая запись о компьютере №1;

Сложно о простом. Как работает интернет. Часть 1. Что такое коммутатор, маршрутизатор и примеры работы простых сетей Интернет, IT, Сети, Timeweb, Электроника, Программа, Длиннопост

Первая запись в MAC-таблицу

  1. Затем коммутатор получит пакет, предназначенный для компьютера №2. Поскольку в MAC-таблице нет записи об этом компьютере, чтобы обеспечить корректную работу сети, коммутатор передаст эти пакеты на все порты, кроме того порта, через который они были получены. После этого в MAC-таблицу коммутатора будет добавлена первая запись о компьютере №2;

  2. Далее сеть будет работать так же, как и до перезагрузки или очистки MAC-таблицы.

Сложно о простом. Как работает интернет. Часть 1. Что такое коммутатор, маршрутизатор и примеры работы простых сетей Интернет, IT, Сети, Timeweb, Электроника, Программа, Длиннопост

Вторая запись в MAC-таблицу

Ключевое отличие коммутатора от концентратора (хаба) заключается в следующем: хаб, независимо от обстоятельств, всегда будет пересылать пакеты во все порты, кроме того, из которого этот пакет был получен. В свою очередь, коммутатор передает пакеты на все порты до тех пор, пока в его MAC-таблице не появятся записи. Как только в таблице появляются записи, коммутатор направляет пакеты в соответствующие порты.

❯ Три компьютера и несколько L2 коммутаторов

Рассмотрим, как работает сеть с несколькими коммутаторами.

Устройства в сети:

  • компьютер №1: 192.168.0.1;

  • компьютер №2: 192.168.0.2;

  • компьютер №3: 192.168.0.3;

  • коммутатор №1 и №2: MAC-таблица изначально пуста.

Все три компьютера подключены к нескольким коммутаторам. Если с компьютера №1 отправить запрос «ping» на компьютер №2, ARP-запрос попадет на коммутатор и будет направлен во все активные порты, поскольку это широковещательный запрос.

Сложно о простом. Как работает интернет. Часть 1. Что такое коммутатор, маршрутизатор и примеры работы простых сетей Интернет, IT, Сети, Timeweb, Электроника, Программа, Длиннопост

MAC-таблица пустая у обоих коммутаторов

Шаг 1. ARP-запрос

Когда компьютер №1 отправляет ARP-запрос компьютеру №2:

  1. Коммутатор №1:

    • передает запрос на все порты, кроме порта-отправителя;

    • сохраняет в MAC-таблицу запись о компьютере №1.

Сложно о простом. Как работает интернет. Часть 1. Что такое коммутатор, маршрутизатор и примеры работы простых сетей Интернет, IT, Сети, Timeweb, Электроника, Программа, Длиннопост

Первая запись в MAC-таблицу коммутатора №1

  1. Коммутатор №2:

    • получает запрос от коммутатора №1 и передает его на свои порты;

    • добавляет в MAC-таблицу запись о MAC-адресе компьютера №1.

Компьютеры №2 и №3 сохраняют запись о MAC-адресе компьютера №1.

Сложно о простом. Как работает интернет. Часть 1. Что такое коммутатор, маршрутизатор и примеры работы простых сетей Интернет, IT, Сети, Timeweb, Электроника, Программа, Длиннопост

Первая запись в MAC-таблицу коммутатора №2

Шаг 2. ICMP-запрос и ответ

Когда компьютеры начинают обмениваться ICMP-пакетами, каждый коммутатор использует свои MAC-таблицы для передачи пакетов только на целевые порты.

Сложно о простом. Как работает интернет. Часть 1. Что такое коммутатор, маршрутизатор и примеры работы простых сетей Интернет, IT, Сети, Timeweb, Электроника, Программа, Длиннопост

Вторая запись в MAC-таблицу коммутатора №1 и №2

Если с компьютера №3 отправить запрос «ping» на компьютер №2, произойдет ARP-обмен данными между устройствами. Коммутаторы сохранят необходимые записи в своих MAC-таблицах, и ICMP-пакеты будут передаваться в соответствии с этими таблицами.

Сложно о простом. Как работает интернет. Часть 1. Что такое коммутатор, маршрутизатор и примеры работы простых сетей Интернет, IT, Сети, Timeweb, Электроника, Программа, Длиннопост

Третья запись в MAC-таблицу коммутатора №1 и №2

❯ Особенности работы с несколькими коммутаторами

  • У каждого коммутатора своя уникальная MAC-таблица.

  • Коммутатор №2 может иметь одну запись для порта с несколькими устройствами, подключенными через другой коммутатор.

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

❯ Заключение

Подводя итоги, мы рассмотрели ключевые устройства и их функции в сетях, такие как коммутаторы и маршрутизаторы, их различия и области применения. Также мы разобрали базовые принципы работы сетей на примере нескольких подключенных устройств, ARP-запросов, ICMP-протокола и их взаимодействия.

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

Эти знания помогут глубже понять основы проектирования сетей и взаимодействия их компонентов.


Написано специально для Timeweb Cloud и читателей Пикабу. Больше интересных статей и новостей в нашем блоге на Хабре и телеграм-канале.

Хочешь стать автором (или уже состоявшийся автор) и есть, чем интересным поделиться в рамках наших блогов — пиши сюда.

Облачные сервисы Timeweb Cloud — это реферальная ссылка, которая может помочь поддержать авторские проекты.

📚 Читайте также:

  • Что на самом деле показало нашумевшее исследование о «сбежавших и обманывающих» больших языковых моделях

  • Защита схемы от переполюсовки, что может быть проще?

  • Комменты — наше все! История онлайн-комментариев.

Показать полностью 25
[моё] Интернет IT Сети Timeweb Электроника Программа Длиннопост
24
37
TechSavvyZone
TechSavvyZone
5 месяцев назад
Лига Новых Технологий

История Интернета: Рождение "1960-1969 гг."⁠⁠

1962

История Интернета: Рождение "1960-1969 гг." Технологии, IT, Раритет, Интернет, История развития, Инновации, Инженер, Изобретения, Сети, Стартап, Длиннопост

TX-2 в Массачусетском технологическом институте

В MIT проводится множество компьютерных экспериментов. Иван Сазерленд использует TX-2 для написания Sketchpad, прародителя графических программ для автоматизированного проектирования.

JCR Licklider пишет меморандумы о своей концепции Межгалактической сети, где все на планете связаны между собой и могут получать доступ к программам и данным в любом месте из любой точки мира. Он общается со своей собственной «Межгалактической сетью» исследователей по всей стране. В октябре «Лик» становится первым руководителем программы компьютерных исследований в ARPA, которую он называет Офисом методов обработки информации (IPTO).

История Интернета: Рождение "1960-1969 гг." Технологии, IT, Раритет, Интернет, История развития, Инновации, Инженер, Изобретения, Сети, Стартап, Длиннопост

Консоли SAGE

Леонард Клейнрок завершает докторскую диссертацию в Массачусетском технологическом институте по теории очередей в сетях связи и становится доцентом Калифорнийского университета в Лос-Анджелесе.

SAGE (Semi Automatic Ground Environment), основанная на более ранних работах MIT и IBM, полностью развернута как североамериканская система раннего оповещения. Операторы «консолей управления оружием» используют световой пистолет для идентификации движущихся объектов, которые появляются на экранах их радаров. Площадки SAGE используются для управления противовоздушной обороной. Этот проект дает опыт в разработке системы бронирования авиабилетов SABRE и более поздних систем управления воздушным движением.

1963

Ликлайдер начинает общаться с Ларри Робертсом из Lincoln Labs, директором проекта TX-2, Айвеном Сазерлендом, экспертом по компьютерной графике, которого он нанял для работы в ARPA, и Бобом Тейлором, который присоединяется к ARPA в 1965 году. Лик заключает контракты с MIT, UCLA и BBN, чтобы начать работу над своим видением.

История Интернета: Рождение "1960-1969 гг." Технологии, IT, Раритет, Интернет, История развития, Инновации, Инженер, Изобретения, Сети, Стартап, Длиннопост

Спутник SYNCOM в производстве

Запущен первый синхронный спутник связи Syncom. Сборка спутника NASA осуществляется на заводе Hughes Aircraft Company в Калвер-Сити, Калифорния. Общая полезная нагрузка составляет 55 фунтов.

История Интернета: Рождение "1960-1969 гг." Технологии, IT, Раритет, Интернет, История развития, Инновации, Инженер, Изобретения, Сети, Стартап, Длиннопост

Часть алфавита ASCII

Совместный отраслево-правительственный комитет разрабатывает ASCII (Американский стандартный код для обмена информацией), первый универсальный стандарт для компьютеров. Он позволяет машинам разных производителей обмениваться данными. 128 уникальных 7-битных строк обозначают либо букву английского алфавита, либо одну из арабских цифр, либо один из набора знаков препинания и символов, либо специальную функцию, например возврат каретки.

1964

Одновременная работа над безопасными сетями пакетной коммутации ведется в Массачусетском технологическом институте, корпорации RAND и Национальной физической лаборатории Великобритании. Пол Баран, Дональд Дэвис, Леонард Клейнрок и другие продолжают параллельные исследования. Баран одним из первых опубликовал работу On Data Communications Networks. Диссертация Клейнрока также опубликована как основополагающий текст по теории очередей.

История Интернета: Рождение "1960-1969 гг." Технологии, IT, Раритет, Интернет, История развития, Инновации, Инженер, Изобретения, Сети, Стартап, Длиннопост

Статья Барана о безопасных сетях с коммутацией пакетов

Новые компьютеры IBM System 360 выходят на рынок и устанавливают фактический мировой стандарт 8-битного байта, делая 12-битные и 36-битные текстовые машины практически мгновенно устаревшими. Инвестиции IBM в размере 5 миллиардов долларов в это семейство из шести взаимно совместимых компьютеров окупаются, и в течение двух лет заказы на System 360 достигают 1000 в месяц.

История Интернета: Рождение "1960-1969 гг." Технологии, IT, Раритет, Интернет, История развития, Инновации, Инженер, Изобретения, Сети, Стартап, Длиннопост

IBM360

Онлайн-обработка транзакций дебютирует в системе бронирования авиабилетов IBM SABRE для American Airlines. SABRE (полуавтоматическая среда бизнес-исследований) связывает 2000 терминалов в шестидесяти городах посредством телефонных линий.

Ликлайдер покидает ARPA, чтобы вернуться в MIT, а Иван Сазерленд переходит в IPTO. При финансировании IPTO проект MAC MIT приобретает компьютер GE-635 и начинает разработку операционной системы с разделением времени Multics.

1965

DEC представляет PDP-8, первый коммерчески успешный мини-компьютер. Достаточно маленький, чтобы разместиться на рабочем столе, он продается за 18 000 долларов — одну пятую стоимости недорогого мэйнфрейма IBM/360. Сочетание скорости, размера и стоимости позволяет устанавливать мини-компьютер на тысячах производственных предприятий, в офисах и научных лабораториях.\nБлагодаря финансированию ARPA Ларри Робертс и Томас Марилл создают первое сетевое соединение с глобальной сетью.

История Интернета: Рождение "1960-1969 гг." Технологии, IT, Раритет, Интернет, История развития, Инновации, Инженер, Изобретения, Сети, Стартап, Длиннопост

ДЕК ПДП-8

Они подключают TX-2 в Массачусетском технологическом институте к Q-32 в Санта-Монике через выделенную телефонную линию с акустическими соединителями. Система подтверждает подозрения исследователей Межгалактической сети о том, что телефонные линии работают для данных, но неэффективны, расточительны по пропускной способности и дороги. Как предсказывает Клейнрок, коммутация пакетов предлагает наиболее перспективную модель для связи между компьютерами.

В конце года Иван Сазерленд нанимает Боба Тейлора из NASA. Тейлор собирает воедино идеи о сетях, которые набирают обороты среди подрядчиков-компьютерщиков IPTO.

История Интернета: Рождение "1960-1969 гг." Технологии, IT, Раритет, Интернет, История развития, Инновации, Инженер, Изобретения, Сети, Стартап, Длиннопост

ДЖОСС

Финансируемая ARPA система JOSS (Johnniac Open Shop System) в корпорации RAND выходит в онлайн. Система JOSS позволяет решать вычислительные задачи в режиме онлайн на нескольких удаленных консолях электрических пишущих машинок. Стандартные электрические пишущие машинки IBM Model 868 модифицированы небольшой коробкой с индикаторными лампами и активирующими переключателями. Вводимые пользователем данные отображаются зеленым цветом, а JOSS отвечает выводом черным цветом.

1966

Тейлор становится преемником Сазерленда на посту третьего директора IPTO. В его собственном офисе есть три разных терминала, которые он может подключить по телефону к трем различным исследовательским центрам компьютерных систем по всей стране. Почему они все не могут общаться друг с другом? Его проблема — метафора того, что стоит перед сообществом компьютерных исследований ARPA.

История Интернета: Рождение "1960-1969 гг." Технологии, IT, Раритет, Интернет, История развития, Инновации, Инженер, Изобретения, Сети, Стартап, Длиннопост

Ларри Робертс

Тейлор встречается с Чарльзом Герцфельдом, главой ARPA, чтобы изложить свои проблемы. Двадцать минут спустя у него есть миллион долларов, которые он может потратить на сетевое взаимодействие. Идея состоит в том, чтобы связать всех подрядчиков IPTO. После нескольких месяцев обсуждений Тейлор убеждает Ларри Робертса покинуть MIT, чтобы начать сетевую программу ARPA.

История Интернета: Рождение "1960-1969 гг." Технологии, IT, Раритет, Интернет, История развития, Инновации, Инженер, Изобретения, Сети, Стартап, Длиннопост

Дональд Дэвис

В это же время английский изобретатель пакетной коммутации Дональд Дэвис в Британской национальной физической лаборатории (NPL) разрабатывает теорию о создании сети компьютеров для проверки своих концепций пакетной коммутации.

Honeywell представляет миникомпьютер DDP-516 и демонстрирует его прочность с помощью кувалды. Это привлекает внимание Робертса.

1967

Ларри Робертс созывает конференцию в Энн-Арборе, штат Мичиган, чтобы собрать вместе исследователей ARPA. В заключение Уэсли Кларк предлагает, чтобы сеть управлялась взаимосвязанными «процессорами интерфейсных сообщений» перед основными компьютерами. Называемые IMP, они эволюционируют в современные маршрутизаторы.

История Интернета: Рождение "1960-1969 гг." Технологии, IT, Раритет, Интернет, История развития, Инновации, Инженер, Изобретения, Сети, Стартап, Длиннопост

Пол Баран

Робертс составляет свой план для ARPANET. Отдельные направления исследований начинают сходиться. Дональд Дэвис, Пол Баран и Ларри Робертс узнают о работе друг друга на конференции ACM, где они все встречаются. От Дэвиса принимается слово «пакет», а предлагаемая скорость линии в ARPANET увеличивается с 2,4 Кбит/с до 50 Кбит/с.

Акустически связанный модем, изобретенный в начале шестидесятых, был значительно усовершенствован Джоном ван Гином из Стэнфордского исследовательского института (SRI). Он представляет приемник, который может надежно обнаруживать биты данных среди шипения, слышимого при междугородних телефонных соединениях.

1968

Робертс и команда ARPA уточняют общую структуру и спецификации для ARPANET. Они выпускают RFQ на разработку IMP.

В компании Bolt, Beranek and Newman (BBN) Фрэнк Харт возглавляет команду, которая подает заявку на проект. Боб Кан играет важную роль в формировании общего дизайна BBN. BBN выигрывает проект в декабре.

История Интернета: Рождение "1960-1969 гг." Технологии, IT, Раритет, Интернет, История развития, Инновации, Инженер, Изобретения, Сети, Стартап, Длиннопост

ILLIAC IV

Робертс работает с Говардом Фрэнком и его командой в Network Analysis Corporation, проектируя топологию и экономику сети. Команда Клейнрока готовит систему измерения сети в Калифорнийском университете в Лос-Анджелесе, которая должна стать местом расположения первого узла.

ILLIAC IV, крупнейший суперкомпьютер своего времени, строится в Burroughs по контракту с NASA. Более 1000 транзисторов втиснуты в его чип RAM, произведенный Fairchild Semiconductor Corporation, что обеспечивает в 10 раз большую скорость при размере в одну сотую эквивалентной основной памяти. ILLIAC-IV будет подключен к ARPANET, чтобы удаленные ученые могли получить доступ к его уникальным возможностям.

1969

Фрэнк Харт собирает команду для написания программного обеспечения, которое будет запускать IMP, и для указания изменений в Honeywell DDP-516, которые они выбрали. В команду входят Бен Баркер, Берни Коселл, Уилл Кроутер, Боб Кан, Северо Орнштейн и Дейв Уолден.

История Интернета: Рождение "1960-1969 гг." Технологии, IT, Раритет, Интернет, История развития, Инновации, Инженер, Изобретения, Сети, Стартап, Длиннопост

Схема первых двух узлов ARPANET

Выбраны четыре сайта. На каждом из них группа начинает работу над созданием программного обеспечения, которое позволит компьютерам и IMP общаться. В Калифорнийском университете в Лос-Анджелесе, на первом сайте, Винт Серф, Стив Крокер и Джон Постел работают с Клейнроком, чтобы подготовиться. 7 апреля Крокер рассылает меморандум под названием «Запрос комментариев». Это первый из тысяч RFC, документирующих проект ARPANET и Интернета.

История Интернета: Рождение "1960-1969 гг." Технологии, IT, Раритет, Интернет, История развития, Инновации, Инженер, Изобретения, Сети, Стартап, Длиннопост

Схема ARPANET с 4 узлами

Команда называет себя Сетевой рабочей группой (RFC 10) и видит свою задачу в разработке «протокола», набора программ, который впоследствии станет известен как NCP (протокол управления сетью).

Вторая площадка — Стэнфордский исследовательский институт (SRI), где Дуг Энгельбарт увидел эксперимент ARPA как возможность изучить широкомасштабное распределенное сотрудничество, используя свою систему NLS, прототип «цифровой библиотеки». SRI поддерживал Сетевой информационный центр, возглавляемый Элизабет (Джейк) Фейнлер и Доном Нильсоном.

История Интернета: Рождение "1960-1969 гг." Технологии, IT, Раритет, Интернет, История развития, Инновации, Инженер, Изобретения, Сети, Стартап, Длиннопост

Фрагмент журнала UCLA IMP, демонстрирующий успешное подключение к SRI

В Калифорнийском университете в Санта-Барбаре (UCSB) Глен Каллер и Бертон Фрид исследуют методы отображения математических функций с использованием дисплеев с памятью для решения проблемы обновления экрана по сети. Их исследование компьютерной графики предоставляет существенные возможности для представления научной информации.

Arpanet была первой настоящей сетью, работающей на основе технологии коммутации пакетов (новой на тот момент).

История Интернета: Рождение "1960-1969 гг." Технологии, IT, Раритет, Интернет, История развития, Инновации, Инженер, Изобретения, Сети, Стартап, Длиннопост

После установки в сентябре рукописные журналы UCLA показывают, что первое соединение хост-хост, от UCLA к SRI, было установлено 29 октября 1969 года.

29 октября 1969 года компьютеры в Стэнфорде и Калифорнийском университете в Лос-Анджелесе впервые соединились. По сути, они стали первыми хостами того, что однажды станет Интернетом. Первым сообщением, отправленным по сети, должно было быть «Login», но, как сообщается, связь между двумя колледжами прервалась на букве «g». Первая попытка «входа в систему» приводит к сбою хоста SRI, но следующая попытка срабатывает!

Продолжение следует...

Показать полностью 16
Технологии IT Раритет Интернет История развития Инновации Инженер Изобретения Сети Стартап Длиннопост
0
144
tproger.official
tproger.official
6 месяцев назад
Типичный программист

Сумка мечты каждого уважабщщего себя сетевика⁠⁠

Сумка мечты каждого уважабщщего себя сетевика IT юмор, IT, Программирование, Сети, Коммутатор
Показать полностью 1
IT юмор IT Программирование Сети Коммутатор
37
14
DELETED
10 месяцев назад
Серия IP протокол (IPv4)

Как работает фрагментация пакетов в IP (на примере тестов iPerf3)⁠⁠

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

Как работает фрагментация пакетов в IP (на примере тестов iPerf3) Сисадмин, Компьютерные сети, IT, Роутер, IP, Протокол, Сети, Системное администрирование, Обучение, YouTube, Образование, Видео, Ethernet, Длиннопост, Windows, Linux, Компьютер, Пакет, Фрагментация

Что такое фрагментация?

Из разговора про MTU мы помним четыре момента:

  1. Минимальный размер кадра 64 байт.

  2. MTU по умолчанию в Ethernet сетях 1500 байт.

  3. Кадры могут быть гораздо больше чем 1500 байт.

  4. MTU параметр настраиваемый и не факт, что на всех линка будет настроен MTU, который будет пропускать пакеты, генерируемые отправителем.

Это некие вводные ограничения, которые нам дает Ethernet. IPv4 к этим ограничением добавляет то, что узел получатель должен гарантировать всем своим соседям, что он может принять IP-пакет размером 576 байт, а узел в IPv6 должен уметь обрабатывать пакеты размером 1280 байт.

С учетом вышеописанного легко можно представить две ситуации, в которых может начать работать фрагментация :

  1. Хосты согласовали обмен пакетами 1500 байт (на самом деле они согласовали TCP или SCTP MSS), но на сети есть линк или линки, где MTU меньше 1500 байт.

  2. Хосты генерируют пакеты размером более 1500 байт, а на транзитных узлах MTU равен 1500 байт.

Эти ситуации можно решить за счет хостов, им просто нужно генерировать такие пакеты, которые пролезут через любой линк на сети, проблема в том, что хосты не знают MTU на всей сети и обычно надеются, что MTU всей сети не меньше, чем MTU их интерфейсов, которые в эту сеть включены, но есть и другие варианты решения:

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

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

  3. Слишком большие пакеты могут просто уничтожаться, но нам этот вариант не очень интересен.

Стоит понимать, что фрагментация пакетов явление вынужденное и не очень желательное, единственное достоинство фрагментации заключается в следующем: если приложения не заботятся о размерах передаваемых данных, то это делает IP, чтобы хоть каким-то образом, но связь между отправителем и получателем поддерживалась.

Минусов у фрагментации много, вот три основных на мой взгляд:

  1. При потере одного из фрагментов можно считать, что теряется весь исходный пакет.

  2. Фрагментация повышает нагрузку на устройства сети.

  3. В некоторых случаях при сборке фрагментированного пакет может быть нарушена целостность передаваемых данных.

Вот несколько ссылок, где вы можно больше узнать о проблемах, фрагментации, все на ин-язе: RFC 4963, Fragmentation Considered Harmful, RFC 8900.

Поля IP заголовка для управление фрагментацией

В IP заголовке имеется четыре поля, которые так или иначе используются при фрагментации.

  1. Размер пакет (Total Lenght). В этом поле хранится полный размер пакета в байтах, т.е. заголовка плюс поля данных.

  2. Идентификатор (Identification). Это поле помогает принимающей стороне собрать исходный пакет из полученных фрагментов, у фрагментов, которые являются частями одного исходного пакета, значение этого поля будет одинаковым.

  3. Флаги (Flags). Под каждый флаг выделен один бит, нумерация начинается с нуля. Нулевой бит(нулевой флаг) нам не интересен, первый бит называется DF или do not fragment, если значение этого бита равно единицы, то пакет фрагментировать запрещено, если возникает ситуация когда у пакета DF = 1 и размер больше допустимого MTU, такой пакет уничтожается(некоторые устройства игнорируют бит DF и всё равно выполняют фрагментацию). Второй флаг называется MF или more fragments, он используется для того, чтобы обозначить конец последовательности фрагментированных пакетов, пока MF = 1 узел получатель будет ожидать новые фрагменты, как только придет пакет с MF = 0, получатель поймет, что последовательность фрагментированных пакетов закончилась.

  4. Смещение фрагмента (Fragment Offset). IP не гарантирует того, что получатель будет получать пакеты в той же последовательности, в которой их генерировал отправитель. В случаях, когда фрагментации нет, проблема собрать всё в нужной последовательности это проблема вышестоящего процесса или протокола, но если получатель принял фрагментированную последовательность, задача собрать исходных пакет из фрагментов ложится на IP процесс, поле смещение помогает понять в какой последовательности надо собирать исходный пакет. Данное поле хранит численное значение, одна единица этого числа равна восьми байтам.

Вот так эти поля выглядят в дампе Wireshark.

Как работает фрагментация пакетов в IP (на примере тестов iPerf3) Сисадмин, Компьютерные сети, IT, Роутер, IP, Протокол, Сети, Системное администрирование, Обучение, YouTube, Образование, Видео, Ethernet, Длиннопост, Windows, Linux, Компьютер, Пакет, Фрагментация

Поля фрагментированного пакета:Total Length, Identification, Flags, Fragment Offset в дампе Wireshark

Как работает фрагментация пакетов в IP (на примере тестов iPerf3) Сисадмин, Компьютерные сети, IT, Роутер, IP, Протокол, Сети, Системное администрирование, Обучение, YouTube, Образование, Видео, Ethernet, Длиннопост, Windows, Linux, Компьютер, Пакет, Фрагментация

Структура IP-пакета

Цвета на двух картинках выше соответствуют.

Смещение фрагмента в IP

Стоит отдельно остановиться на поле Fragment Offset, его размер 13 бит, то есть максимальное значение этого поля 8191, но весь вопрос в том, какие единицы измерения используются для смещения фрагмента, если в этом поле стоит значение 1, то это означает, что сдвиг надо делать на 8 байт, то есть максимально возможное смещение 65528 байт.

Проще всего разобраться с вопросом смещения можно будет на примере, допустим, у нас есть два хоста, соединенных каналом с MTU 1500 байт, но хосты хотят обмениваться пакетами размером 5940 байт, в этом случае будет включаться механизм фрагментации, и каждый исходный пакет будет разделен на четыре пакета по 1500 байт, чтобы они гарантированно прошли через канал, смещение первого фрагментированного пакета будет равно нулю, у второго пакета оно уже будет 1480 байт, третий пакет будет иметь смещение 2960 и последний пакет будет со смещением 4440 байт, все описанное выше представлено на рисунке.

Как работает фрагментация пакетов в IP (на примере тестов iPerf3) Сисадмин, Компьютерные сети, IT, Роутер, IP, Протокол, Сети, Системное администрирование, Обучение, YouTube, Образование, Видео, Ethernet, Длиннопост, Windows, Linux, Компьютер, Пакет, Фрагментация

Пример работы фрагментации IP пакетов

Для удобства я пересчитывал единицы измерения смещения в байты.

Из примера понятно, что фрагментация это лишняя работа не только для транзитных узлов, которые ее выполняют, но и для хостов. Также в примере виден смысл поля ID и флага MF, по ним получатель понимает, что это не конец фрагментированной последовательности, но получатель заранее не знает размер исходного пакета.

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

Как работает фрагментация пакетов в IP (на примере тестов iPerf3) Сисадмин, Компьютерные сети, IT, Роутер, IP, Протокол, Сети, Системное администрирование, Обучение, YouTube, Образование, Видео, Ethernet, Длиннопост, Windows, Linux, Компьютер, Пакет, Фрагментация

Пример фрагментированных пакетов в дампе Wireshark

Интересные столбцы выделены цветами:

голубой = размер пакета

зеленый = наличие флага MF

красный = смещение

оранжевый = идентификатор

Строки выделять не стал, поскольку розовая строка здесь означает конец фрагментированной последовательности. Плюс важно учитывать, что на этом скрине в столбце Offset значение смещения не в байтах.

Установка iPerf3 на Linux и в Windows

Перейдем к практике, тренироваться будем на той же лабе, которая использовалась в посте про MTU. Вот топология сети:

Как работает фрагментация пакетов в IP (на примере тестов iPerf3) Сисадмин, Компьютерные сети, IT, Роутер, IP, Протокол, Сети, Системное администрирование, Обучение, YouTube, Образование, Видео, Ethernet, Длиннопост, Windows, Linux, Компьютер, Пакет, Фрагментация

Топология сети лабы

Далее будет краткий гайд по установке и использованию iPerf в Linux и Windows, кому этот момент очевиден, можно смело пропускать.

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

Iperf это утилита командной строки в Windows, установка его здесь довольная простая, скачиваете архив по этой ссылке, выбирайте самую свежую версию, она внизу. Внутри полученного архива будет папка с именем iperf+номер_версии_разрядность_ОС:

Как работает фрагментация пакетов в IP (на примере тестов iPerf3) Сисадмин, Компьютерные сети, IT, Роутер, IP, Протокол, Сети, Системное администрирование, Обучение, YouTube, Образование, Видео, Ethernet, Длиннопост, Windows, Linux, Компьютер, Пакет, Фрагментация

Архив с iPerf3

Если хотите, можете скинуть эту папку в любое удобное вам место и на этом установка будет завершена. Я же создам в корне диска C папку с именем iperf3 и скопирую в него содержимое папки "iperf3.17_64.", так будет проще:

Как работает фрагментация пакетов в IP (на примере тестов iPerf3) Сисадмин, Компьютерные сети, IT, Роутер, IP, Протокол, Сети, Системное администрирование, Обучение, YouTube, Образование, Видео, Ethernet, Длиннопост, Windows, Linux, Компьютер, Пакет, Фрагментация

Установленный iPerf3

При желании можете добавить путь к файлу iperf3.exe в переменную PATH, тогда для запуска программы не придется каждый раз в командной строке переходить по пути C:\iperf3 чтобы запустить программу.

Установку в Linux буду показывать на примере Debian 10, пишем две команды:

sudo apt update&&upgrade -y

sudo apt install iperf3

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

Примечание

В репозитории дистрибутива, который вы используете, может находиться пакет не с самой последней версией iPerf, в моем случае вопрос версии не принципиален, нам просто надо посмотреть на работу фрагментации, но если вы планируете использовать его для тестов своих каналов, учитывайте два момента: тесты, выполненные на iperf разных версий, могут не показать реальной картины (обычно результаты хуже чем есть на самом деле), в разных версиях есть разные баги, влияющие на результаты тестирования. Microsoft же вообще не рекомендует использовать iPerf для тестов в Windows.

Как запустить тест скорости iPerf

Запустить тест скорости в iPerf дело не хитрое, начнем с сервера. Запуск сервера делается так:

iperf3 -s

Как работает фрагментация пакетов в IP (на примере тестов iPerf3) Сисадмин, Компьютерные сети, IT, Роутер, IP, Протокол, Сети, Системное администрирование, Обучение, YouTube, Образование, Видео, Ethernet, Длиннопост, Windows, Linux, Компьютер, Пакет, Фрагментация

Запущенный сервер iPerf в Linux

Сервер ожидает запросы от клиента на порт 5201 любого из транспортных протоколов: TCP, UDP, SCTP. Если у вас используется firewall, убедитесь что порт открыт.

Клиента iperf будем запускать в Windows, для этого нужно запустить командую строку желательно от имени администратора, перейти в папку, где лежит exe файл (переходить никуда не надо будет, если добавить путь к iperf3.exe в переменную PATH):

C:\Windows\system32>cd c:\iperf3

c:\iperf3>iperf3.exe -c 10.0.0.2 -f k -M 1300

Connecting to host 10.0.0.2, port 5201

[ 5] local 10.0.0.6 port 49786 connected to 10.0.0.2 port 5201

[ ID] Interval Transfer Bitrate

[ 5] 0.00-1.01 sec 256 KBytes 2079 Kbits/sec

[ 5] 1.01-2.01 sec 0.00 Bytes 0.00 Kbits/sec

[ 5] 2.01-3.01 sec 0.00 Bytes 0.00 Kbits/sec

[ 5] 3.01-4.01 sec 0.00 Bytes 0.00 Kbits/sec

[ 5] 4.01-5.01 sec 0.00 Bytes 0.00 Kbits/sec

[ 5] 5.01-6.01 sec 0.00 Bytes 0.00 Kbits/sec

[ 5] 6.01-7.01 sec 0.00 Bytes 0.00 Kbits/sec

[ 5] 7.01-8.01 sec 0.00 Bytes 0.00 Kbits/sec

[ 5] 8.01-9.01 sec 0.00 Bytes 0.00 Kbits/sec

[ 5] 9.01-10.01 sec 0.00 Bytes 0.00 Kbits/sec

- - - - - - - - - - - - - - - - - - - - - - - - -

[ ID] Interval Transfer Bitrate

[ 5] 0.00-10.01 sec 256 KBytes 210 Kbits/sec sender

[ 5] 0.00-14.04 sec 97.8 KBytes 57.0 Kbits/sec receiver

iperf Done.

c:\iperf3>

Опции для разных ОС одинаковые, пользователи Linux могут получить справку при помощи утилиты man, в Windows можно написать iperf3.exe -h, но лучше обратиться к документации. Опции iperf делятся на серверные, клиентские и универсальные.

Теперь по поводу команды в Windows: -c говорит о том, что iperf запускается в режиме клиента, при этом данной опции надо передать IP-адрес сервера. Опция -f k говорит iperf о том, что скорость должна быть отображена в kbps, а -M 1300 задает размер TCP MSS 1300 байт.

Учитывайте, что какой бы протокол вы не использовали, iperf выставить df-bit = 1 и это никак не изменить, насколько мне известно, и это нужно учитывать при дальнейших тестах, плюс по умолчанию iperf генерирует пакеты только в одну сторону: от клиента к серверу. На сервере статистика тоже отображается, вот статистика для соединения, которое мы инициировали командой, выполненной выше в Windows:

Как работает фрагментация пакетов в IP (на примере тестов iPerf3) Сисадмин, Компьютерные сети, IT, Роутер, IP, Протокол, Сети, Системное администрирование, Обучение, YouTube, Образование, Видео, Ethernet, Длиннопост, Windows, Linux, Компьютер, Пакет, Фрагментация

Статистика теста скорости iperf на Linux сервере

Более детальную информацию о тесте можно получать, если использовать опцию -V на клиенте и сервере.

Как убрать df-bit у транзитного IP-пакета на роутере Cisco

Пожалуй, самый плохой сценарий для маршрутизатора в вопросах фрагментации, это когда маршрутизатор выполняет эту самую фрагментацию. Выше я не случайно написал про df-bit, который iPerf всегда выставляет на генерируемые им пакеты. С выставленным df-bit мы фрагментацию никогда не увидим, значит, его надо обнулить, как это сделать средствами Windows я не знаю и тратить время на то, чтобы с этим разобраться я не захотел, а вот на роутерах Cisco можно написать route-map и навешать этот route-map на интерфейс, в который будут входить пакеты с установленным df-bit, который мы хотим обнулять.

Примечание

Для тех, кто читал пост про MTU. В той лабе на интерфейсе CSR в сторону коммутатора был создан саб-интерфейс Gi2.200, на нем и был настроен IP-адрес, сейчас же саб-интерфейс Gi2.200 удален, IP-адрес перенесен на Gi2, а на линке CSR/SW кадры ходят без вланов.

Создать route-map можно, например, такой:

CSR#conf t

CSR(config)#route-map RM_DEL-DF-BIT permit 10

CSR(config-route-map)#match ip address 101

CSR(config-route-map)#set ip df 0

CSR(config-route-map)#exit

CSR(config)#access-list 101 permit tcp 10.0.0.0 0.0.0.255 any

Строка set ip df 0 как раз и заставляет обнулять df-bit, а RM_DEL-DF-BIT это просто имя route-map, которое я ей придумал. Роут-мапу нам надо повешать на интерфейс Gi2, поскольку пакеты с df-bit, который мы хотим обнулять, будут входить именно в интерфейс (если бы остался саб-интерфейс Gi2.200, то тогда вешать надо было бы на него). Делается это так:

CSR#conf t

CSR(config)#int gi2

CSR(config-if)#ip policy route-map RM_DEL-DF-BIT

И давайте зададим IP MTU 1300 байт на интерфейс Gi1:

CSR#conf t

CSR(config)#int gi1

CSR(config-if)#ip mtu 1300

Всё, лабу подготовили.

Как работает фрагментация IP пакетов на роутере

Наконец-то мы добрались до самой фрагментации. Запустим iperf на Винде(команда iperf3.exe -c 10.0.0.2 -f k -M 1370) и снимем дампы:

  1. Первый с линка между SW/Win, здесь будут идти не фрагментированные пакеты с TCP MSS 1370 байт, это уже больше чем MTU интерфейса Gi1, но к значению MSS нужно будет добавить еще размеры заголовков TCP и IP.

  2. Второй дамп будем делать с линка Host_1/CSR. Здесь мы сможем увидеть фрагментированные пакеты, видя два дампа, мы сможем сделать вывод о том, что фрагментацию выполняет именно роутер.

Важно найти один и тот же пакет как в первом, так и во втором дампе, проще всего это сделать по идентификатору пакета. Вот пакет с номером 2e8b на линке SW/Win:

Как работает фрагментация пакетов в IP (на примере тестов iPerf3) Сисадмин, Компьютерные сети, IT, Роутер, IP, Протокол, Сети, Системное администрирование, Обучение, YouTube, Образование, Видео, Ethernet, Длиннопост, Windows, Linux, Компьютер, Пакет, Фрагментация

Не фрагментированный пакет размером 1410 байт

Размер пакета 1410 байт, df-bit = 1. А вот этот же пакет на линке Host_1/CSR:

Как работает фрагментация пакетов в IP (на примере тестов iPerf3) Сисадмин, Компьютерные сети, IT, Роутер, IP, Протокол, Сети, Системное администрирование, Обучение, YouTube, Образование, Видео, Ethernet, Длиннопост, Windows, Linux, Компьютер, Пакет, Фрагментация

Роутер разделил исходный пакет и теперь вместо одного пакета 1410 байт у нас два пакета размером 1430 байт

Во-первых, пакетов два: 1300 байт и 130 байт, а это больше изначальных 1410, уже неприятно, особенно, если счёт будем вести на миллионы. Во-вторых, видим, что пакеты, которые идут в сторону Debian, имеют df-bit = 0, из увиденного делаем выводы:

  1. Route-map работает, CSR снимает df-bit и делает фрагментацию.

  2. Фрагментацию выполняет роутер.

Не вижу сейчас особого смысла смотреть внутрь пакета, т.к. все интересующие нас поля я вывел в дамп, но если что, вот пакет, который генерировала Винда:

Как работает фрагментация пакетов в IP (на примере тестов iPerf3) Сисадмин, Компьютерные сети, IT, Роутер, IP, Протокол, Сети, Системное администрирование, Обучение, YouTube, Образование, Видео, Ethernet, Длиннопост, Windows, Linux, Компьютер, Пакет, Фрагментация

Исходный пакет размером 1410 байт

Вот первый фрагмент на выходе из CSR Gi1:

Как работает фрагментация пакетов в IP (на примере тестов iPerf3) Сисадмин, Компьютерные сети, IT, Роутер, IP, Протокол, Сети, Системное администрирование, Обучение, YouTube, Образование, Видео, Ethernet, Длиннопост, Windows, Linux, Компьютер, Пакет, Фрагментация

Первый фрагмент исходного пакета

А вот второй фрагмент:

Как работает фрагментация пакетов в IP (на примере тестов iPerf3) Сисадмин, Компьютерные сети, IT, Роутер, IP, Протокол, Сети, Системное администрирование, Обучение, YouTube, Образование, Видео, Ethernet, Длиннопост, Windows, Linux, Компьютер, Пакет, Фрагментация

Второй фрагмент исходного IP-пакета

Мы посмотрели пример фрагментации пакетов, понятно, что делать это на роутерах не очень правильно, но иногда приходится.

В следующий раз поговорим про Path MTU Discovery, для этого нужно отвязать route-map от интерфейса Gi2, чтобы роутер перестал обнулять df-bit:

CSR#conf t

CSR(config)#int gi2

CSR(config-if)#no ip policy route-map RM_DEL-DF-BIT

IP MTU 1300 байт на линке Gi1 оставляем.

Вопросы для ваших ответов

Может ли фрагментированный IP пакет быть меньше 68 байт и почему?

Напомню топологию

Как работает фрагментация пакетов в IP (на примере тестов iPerf3) Сисадмин, Компьютерные сети, IT, Роутер, IP, Протокол, Сети, Системное администрирование, Обучение, YouTube, Образование, Видео, Ethernet, Длиннопост, Windows, Linux, Компьютер, Пакет, Фрагментация

Топология сети лабы

Представим ситуации: на интерфейсе Gi2 роутера CSR настроен IP MTU 1400 байт, на всех остальных линках IP MTU 1500 байт, хост Windows генерирует в сторону Linux пакеты размером 1450 байт, что с этими пакетами будет?

Имеется линк с IP MTU 700 байт: на сколько фрагментов и какого разрмера будет разбит пакет1400 байт?

Имеется линк с IP MTU 725 байт: на сколько фрагментов и какого разрмера будет разбит пакет1430 байт?

Видео версия

Для тех, кому проще смотреть и слушать есть видео версия

Показать полностью 15 1
[моё] Сисадмин Компьютерные сети IT Роутер IP Протокол Сети Системное администрирование Обучение YouTube Образование Видео Ethernet Длиннопост Windows Linux Компьютер Пакет Фрагментация
5
14
DELETED
10 месяцев назад
Серия IP протокол (IPv4)

Настройка MTU в Windows, Linux, на коммутаторах и роутерах Cisco⁠⁠

Господа, дамы, здравствуйте!

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

  1. Компьютер под управлением Linux, для этого будет использоваться виртуальная машина с Debian 10 (на схеме это Host_1).

  2. Компьютер под управлением Windows 10 (значок с подписью Win).

  3. Роутер CSR1000v под управлением IOS XE.

  4. Хотелось бы еще рассмотреть классические коммутаторы, но коммутаторы под управлением IOL в EVE-NG, как я понял, всё-таки являются multilayer свичами, а не классическими L2, плюс на IOL у меня не получилось изменить канальный MTU, но SW на схему добавлен и мы немного с ним поработаем.

Настройка MTU в Windows, Linux, на коммутаторах и роутерах Cisco Сисадмин, Компьютерные сети, IT, Роутер, IP, Протокол, Сети, Связь, Телеком, Данные, Системное администрирование, Инженер, Урок, Обучение, YouTube, Образование, Видео, Ethernet, Длиннопост, Windows, Linux

Схема, на которой будем всё это тестировать:

Настройка MTU в Windows, Linux, на коммутаторах и роутерах Cisco Сисадмин, Компьютерные сети, IT, Роутер, IP, Протокол, Сети, Связь, Телеком, Данные, Системное администрирование, Инженер, Урок, Обучение, YouTube, Образование, Видео, Ethernet, Длиннопост, Windows, Linux

Схема для тестов с MTU

Зеленый кружок это возможность для выхода устройств лабы в реальную сеть, IP-адреса подписаны на схеме, а на линке SW/CSR кадры ходят в 200 влане, в сторону Windows кадры отдаются без метки.

Как изменить MTU на коммутаторе Cisco

Перед изменением MTU разберемся как его смотреть, есть стандартное заблуждение, что на оборудование Cisco в конфигурации нельзя увидеть значения MTU, если оно равно значению MTU по умолчанию, и действительно, команда show run не дает никаких результатов:

SW#sh run | in mtu

SW#sh run | in MTU

SW#

Можно даже посмотреть конфигурацию одного из интерфейсов:

SW#sh run int e0/0

Building configuration...

Current configuration : 29 bytes

!

interface Ethernet0/0

end

SW#

Но почему-то многие забывают что есть show run all:

SW#sh run all | in mtu

crypto ikev2 fragmentation mtu 576

mtu 1500

mpls mtu 1500

mtu 1500

mpls mtu 1500

mtu 1500

mpls mtu 1500

mtu 1500

mpls mtu 1500

no ip tcp path-mtu-discovery

SW#

В лабе EVE-NG используется коммутатор IOL, MTU у них меняются на интерфейсах. Вот пример конфигурации интерфейса Ethernet0/0:

SW#show run all | s Ethernet0/0

buffers Ethernet0/0 permanent 96

buffers Ethernet0/0 max-free 96

buffers Ethernet0/0 min-free 0

buffers Ethernet0/0 initial 0

interface Ethernet0/0

switchport

switchport access vlan 1

no switchport nonegotiate

no switchport protected

no switchport port-security mac-address sticky

mtu 1500

no ip arp inspection trust

ip arp inspection limit rate 15 burst interval 1

ip arp inspection limit rate 15

load-interval 300

carrier-delay 2

no shutdown

tx-ring-limit 64

tx-queue-limit 64

no macsec replay-protection

no macsec

ipv6 mfib forwarding input

ipv6 mfib forwarding output

ipv6 mfib cef input

ipv6 mfib cef output

mpls mtu 1500

snmp trap link-status

no onep application openflow exclusive

cts role-based enforcement

no mka pre-shared-key

mka default-policy

cdp tlv location

cdp tlv server-location

cdp tlv app

arp arpa

arp timeout 14400

channel-group auto

spanning-tree port-priority 128

spanning-tree cost 0

hold-queue 2000 in

hold-queue 0 out

ip igmp snooping tcn flood

no bgp-policy accounting input

no bgp-policy accounting output

no bgp-policy accounting input source

no bgp-policy accounting output source

no bgp-policy source ip-prec-map

no bgp-policy source ip-qos-map

no bgp-policy destination ip-prec-map

no bgp-policy destination ip-qos-map

SW#

Если не увидели в выводе выше значение MTU, то вот строки: mtu 1500, mpls mtu 1500. Все интерфейсов на коммутаторе четыре:

SW#

SW#sh int des

Interface Status Protocol Description

Et0/0 up up

Et0/1 up up

Et0/2 up up

Et0/3 up up

SW#

Посмотреть MTU на интерфейсе можно еще и так:

SW#sh int e0/0 | in MTU

MTU 1500 bytes, BW 10000 Kbit/sec, DLY 1000 usec,

SW#

Это канальный MTU. В конфигурации каждого порта мы видим два MTU: Ethernet и MPLS, оба равны 1500 байт, но порт можно перевести в режим роутера, тогда у него появится еще и IP MTU. Переводим порт:

SW#conf t

SW(config)#int e0/1

SW(config-if)#no switchport

Посмотрим какие MTU есть на коммутаторе:

SW#sh run all | in mtu

crypto ikev2 fragmentation mtu 576

mtu 1500

mpls mtu 1500

mtu 1500

ip mtu 1500

mpls mtu 1500

mtu 1500

mpls mtu 1500

mtu 1500

mpls mtu 1500

no ip tcp path-mtu-discovery

SW

Появилась строка ip mtu 1500, она относится к порту Ethernet0/1. Чтобы посмотреть IP MTU можно воспользоваться вот такой командной:

SW#sh ip int e0/1

Ethernet0/1 is up, line protocol is up

Internet protocol processing disabled

SW#

Возникла ошибка, дело в том, что интерфейс e0/1 переведен в режим роутера, но на нем не работает IP процесс, чтобы он заработал, надо настроить IP-адрес:

SW#conf t

Enter configuration commands, one per line.

SW(config)#int e0/1

SW(config-if)#ip add

SW(config-if)#ip address 1.1.1.1 255.255.255.0

Теперь мы можем посмотреть IP MTU и другие параметры процесса IP:

SW#sh ip int e0/1

Ethernet0/1 is up, line protocol is up

Internet address is 1.1.1.1/24

Broadcast address is 255.255.255.255

Address determined by setup command

MTU is 1500 bytes

MPLS MTU посмотреть можно так (но MPLS должен быть включен на интерфейсе):

SW# sh mpls interfaces e0/1 detail

Interface Ethernet0/1:

Type Unknown

IP labeling not enabled

LSP Tunnel labeling not enabled

IP FRR labeling not enabled

BGP labeling not enabled

MPLS not operational

MTU = 1500

SW#

Изменить канальный MTU можно было бы вот такой командой:

SW#conf t

SW(config)#int e0/1

SW(config-if)#mtu 1600

% Interface Ethernet0/1 does not support user settable mtu.

SW(config-if)#

IP MTU на образах IOL меняется:

SW(config-if)#ip mtu 1000

MPLS MTU тоже можно поменять:

SW(config-if)#mpls mtu 1100

Итоговая конфигурация интерфейса теперь такая:

SW#sh run int e0/1

Building configuration...

Current configuration : 106 bytes

!

interface Ethernet0/1

no switchport

ip address 1.1.1.1 255.255.255.0

ip mtu 1000

mpls mtu 1100

end

SW#

Классические коммутаторы Cisco, как правило, не позволяют менять MTU отдельных интерфейсов и не имеют конфигураций MPLS MTU, у них есть так называемый system mtu, который позволяет задавать MTU всем интерфейсам сразу, показать не могу, поэтому отправлю к странице Configuration Guide для Catalyst 2960.

Команда Ping и размеры пакетов при пинге

Порт e0/1 на коммутаторе никак не влияет на передачу данных между хостами. MTU на всех линках, которые обеспечивают связность между ПК, сейчас стандартный и равен 1500 байт. Давайте в этом убедимся пингом с одного хоста на другой:

user@debian:~$ ping 10.0.0.6 -M do -s 1472 -c 4

PING 10.0.0.6 (10.0.0.6) 1472(1500) bytes of data.

1480 bytes from 10.0.0.6: icmp_seq=1 ttl=127 time=1.20 ms

1480 bytes from 10.0.0.6: icmp_seq=2 ttl=127 time=1.51 ms

1480 bytes from 10.0.0.6: icmp_seq=3 ttl=127 time=1.46 ms

1480 bytes from 10.0.0.6: icmp_seq=4 ttl=127 time=1.76 ms

Здесь стоит обратить внимание на то, что опция -s 1472 задает размер ICMP вложения без учета ICMP и IP заголовков, таким образом получается, что сформированный IP-пакет равен 1500 байт. В этом легко убедиться, если посмотреть на дамп Wireshark:

Настройка MTU в Windows, Linux, на коммутаторах и роутерах Cisco Сисадмин, Компьютерные сети, IT, Роутер, IP, Протокол, Сети, Связь, Телеком, Данные, Системное администрирование, Инженер, Урок, Обучение, YouTube, Образование, Видео, Ethernet, Длиннопост, Windows, Linux

Размер пакета, который был сгенерирован при пинге с опцией -s 1472 в Linux

Если указать размер 1473 байта, то пинга не будет:

user@debian:~$ ping 10.0.0.6 -M do -s 1473 -c 3

PING 10.0.0.6 (10.0.0.6) 1473(1501) bytes of data.

ping: local error: Message too long, mtu=1500

ping: local error: Message too long, mtu=1500

ping: local error: Message too long, mtu=1500

--- 10.0.0.6 ping statistics ---

3 packets transmitted, 0 received, +3 errors, 100% packet loss, time 43ms

user@debian:~$

На скрине зеленым выделен размер кадра, красным IP-пакета. А теперь сделаем пинг с роутера в сторону Debian:

CSR#ping 10.0.0.2 size 1500 df-bit

Type escape sequence to abort.

Sending 5, 1500-byte ICMP Echos to 10.0.0.2, timeout is 2 seconds:

Packet sent with the DF bit set

!!!!!

Success rate is 100 percent (5/5), round-trip min/avg/max = 1/63/121 ms

CSR#ping 10.0.0.2 size 1501 df-bit

Type escape sequence to abort.

Sending 5, 1501-byte ICMP Echos to 10.0.0.2, timeout is 2 seconds:

Packet sent with the DF bit set

.....

Success rate is 0 percent (0/5)

CSR#

По результату пингов можно сделать вывод, что в IOS XE задается размер IP пакета при выполнении пинга. В Windows при пинге задается размер ICMP вложения без учета заголовков IP и ICMP:

Настройка MTU в Windows, Linux, на коммутаторах и роутерах Cisco Сисадмин, Компьютерные сети, IT, Роутер, IP, Протокол, Сети, Связь, Телеком, Данные, Системное администрирование, Инженер, Урок, Обучение, YouTube, Образование, Видео, Ethernet, Длиннопост, Windows, Linux

Пинг в Windows с указанием размера payload ICMP и запретом на фрагментацию

Вывод из этого всего простой. Когда вы задаете размеры чего-то при пинге, всегда узнавайте, чего именно размер вы задаете.

Как изменить MTU на роутере Cisco?

Фактически способы изменения различных MTU на роутере мы рассмотрели, когда говорили про коммутаторы, т.к. для примера использовался multilayer switch. Но давайте все-таки кое-что посмотрим.

Для начала обратим внимание что максимальный канальный MTU на интерфейсе роутера может быть 9216 байт:

CSR#configure terminal

Enter configuration commands, one per line. End with CNTL/Z.

CSR(config)#int gi1

CSR(config-if)#mtu ?

<1500-9216> MTU size in bytes

CSR(config-if)#mtu

При этом сейчас канальный MTU равен 1500 байт, давайте посмотрим на возможные значение IP и MPLS MTU:

CSR(config-if)#ip mtu ?

<68-1500> MTU (bytes)

CSR(config-if)#mpls mtu ?

<64-1500> MTU (bytes)

Изменим L2 MTU, зададим максимальное значение:

CSR(config-if)#mtu 9216

CSR(config-if)#do sh int gi1 | in MTU

MTU 9216 bytes, BW 1000000 Kbit/sec, DLY 10 usec,

Значение изменилось, а теперь давайте посмотрим на значения, которые можно задать IP и MPLS MTU:

CSR(config-if)#ip mtu ?

<68-9216> MTU (bytes)

CSR(config-if)#mpls mt

<64-9216> MTU (bytes)

Их верхняя граница отодвинулась на значение 9216 байт, при этом у IP минимальный MTU может быть равен 68 байт, а у Ethernet и MPLS 64. Давайте теперь посмотрим на линк в сторону коммутатора, в самом начале я упоминал, что на этом линке используется 200 влан, со стороны роутера настроен саб-интерфейс с номером 200, который инкапсулирует кадры в 200 влан, конфигурация выглядит так:

CSR# sh run int gi2

Building configuration...

Current configuration : 96 bytes

!

interface GigabitEthernet2

description toHost_2_via_SW

no ip address

negotiation auto

end

CSR# sh run int gi2.200

Building configuration...

Current configuration : 100 bytes

!

interface GigabitEthernet2.200

encapsulation dot1Q 200

ip address 10.0.0.5 255.255.255.252

end

CSR#

Поясню по поводу саб-интерфейса Gi2.200: о том, что на кадры нужно ставить метку с номером 200, говорит строка encapsulation dot1Q 200, цифра 200 после Gi2 это номер саб-интерфейса, эта цифра не обязана совпадать с номером влана, но для удобства их обычно делают одинаковыми.

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

Посмотрим какие MTU сейчас на Gi2 и Gi2.200:

CSR#sh int gi2 | in MTU

MTU 1500 bytes, BW 1000000 Kbit/sec, DLY 10 usec,

CSR#sh int gi2.200 | in MTU

MTU 1500 bytes, BW 1000000 Kbit/sec, DLY 10 usec,

CSR#sh ip int gi2.200 | in MTU

MTU is 1500 bytes

CSR#

Посмотрим какой MTU можно задать саб-интерфейсу:

CSR(config)#int gi2.200

CSR(config-subif)#mtu ?

<1500-9216> MTU size in bytes

Выставим саб-интерфейсу L2 и L3 MTU равными 1600 байт:

CSR(config)#int gi2.200

CSR(config-subif)#mtu 1600

CSR(config-subif)#ip mtu ?

<68-1500> MTU (bytes)

CSR(config-subif)#ip mtu

Роутер съел команду mtu 1600, но при этом задать ip mtu 1600 возможности нет. Давайте посмотрим применился ли L2 MTU 1600 для саб-интерфейса:

CSR#sh int gi2.200 | in MTU

MTU 1500 bytes, BW 1000000 Kbit/sec, DLY 10 usec,

CSR#

А вот и не изменился. Выставим L2 MTU 1600 байт для Gi2:

CSR(config)#int gi2

CSR(config-if)#mtu 1600

CSR(config-if)#do sh int gi2 | in MTU

MTU 1600 bytes, BW 1000000 Kbit/sec, DLY 10 usec,

CSR(config-if)#

Выставили, он применился. Посмотрим MTU Gi2.200:

CSR(config-if)#do sh int gi2.200 | in MTU

MTU 1600 bytes, BW 1000000 Kbit/sec, DLY 10 usec,

CSR(config-if)#

Увеличим MTU Gi2 до 1700 байт и посмотрим канальный MTU Gi2.200:

CSR(config)#int gi2

CSR(config-if)#mtu 1700

CSR(config-if)#do sh int gi2.200

GigabitEthernet2.200 is up, line protocol is up

Hardware is CSR vNIC, address is 5000.0002.0001 (bia 5000.0002.0001)

Internet address is 10.0.0.5/30

MTU 1700 bytes, BW 1000000 Kbit/sec, DLY 10 usec,

Канальный MTU саб-интерфейса увеличивается вместе с канальным MTU основного интерфейса. L3 MTU теперь тоже можно сделать 1700 байт, но мы сделаем 1600 байт:

CSR(config)#int gi2.200

CSR(config-subif)#ip mtu ?

<68-1700> MTU (bytes)

CSR(config-subif)#ip mtu 1600

CSR(config-subif)#do sh run int gi2.200

Building configuration...

Current configuration : 113 bytes

!

interface GigabitEthernet2.200

encapsulation dot1Q 200

ip address 10.0.0.5 255.255.255.252

ip mtu 1600

end

CSR(config-subif)#do sh ip int gi2.200 | in MTU

MTU is 1600 bytes

CSR(config-subif)#do sh int gi2.200 | in MTU

MTU 1700 bytes, BW 1000000 Kbit/sec, DLY 10 usec,

CSR(config-subif)#

Какие выводы мы можем сделать из увиденного?

  1. В IOS XE значение Ethernet MTU саб-интерфейса наследуется от основного интерфейса.

  2. Сетевым MTU саб-интерфейса можно управлять, но он не может быть больше канального.

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

По факту в IOS XE на саб-интерфейсе можно менять IP MTU и MPLS MTU, канальный MTU наследуется, это подтверждает вывод sh run all:

CSR#sh run all | b GigabitEthernet2.200

interface GigabitEthernet2.200

...

encapsulation dot1Q 200

ip address 10.0.0.5 255.255.255.252

....

ip mtu 1600

...

mpls mtu 1700

.....

!

По результатам sh run all видим, что нет даже возможности задать канальный mtu на саб-интерфейсе, а вот конфигурация основной интерфейс.

CSR#sh run all | b GigabitEthernet2

interface GigabitEthernet2

description toHost_2_via_SW

...

mtu 1700

...

ip mtu 1700

...

mpls mtu 1700

...

!

Для дальнейшего рассмотрения я вернул MTU всех интерфейсов на 1500 байт.

Размер Ethernet заголовка и настройки MTU

В прошлом посте про MTU я говорил, что есть некоторые стандарты, которые увеличивают размер заголовка, самый очевидный и часто используемый в компьютерных сетях стандарт это 802.1q или VLAN, он добавляет к полю заголовка 4 байта, то есть эта добавка никак не должна влиять на способность оборудования пропустить кадр с MTU 1500, если на интерфейсах этого оборудования настроено 1500 байт.

Убедимся в этом, запустим пинг из Linux в Windows IP-пакетами размером 1500 байт и снимем дамп с двух линков:

  1. На линке Host_1/CSR. Здесь кадр идет без поля 802.1q.

  2. На линке CSR/SW, здесь кадры идут с меткой 200.

На линке коммутатор/Windows дамп снимать смысла нет, потому что коммутатор убирает метку, когда отдает кадр в сторону ПК. Пинг:

user@debian:~$ ping 10.0.0.6 -M do -s 1472

PING 10.0.0.6 (10.0.0.6) 1472(1500) bytes of data.

1480 bytes from 10.0.0.6: icmp_seq=1 ttl=127 time=56.6 ms

1480 bytes from 10.0.0.6: icmp_seq=2 ttl=127 time=1.19 ms

1480 bytes from 10.0.0.6: icmp_seq=3 ttl=127 time=1.46 ms

1480 bytes from 10.0.0.6: icmp_seq=4 ttl=127 time=1.57 ms

1480 bytes from 10.0.0.6: icmp_seq=5 ttl=127 time=1.79 ms

1480 bytes from 10.0.0.6: icmp_seq=6 ttl=127 time=1.88 ms

Дамп с линка между Линуксом и роутером:

Настройка MTU в Windows, Linux, на коммутаторах и роутерах Cisco Сисадмин, Компьютерные сети, IT, Роутер, IP, Протокол, Сети, Связь, Телеком, Данные, Системное администрирование, Инженер, Урок, Обучение, YouTube, Образование, Видео, Ethernet, Длиннопост, Windows, Linux

Ethernet кадр без метки размером 1514 байт с вложением 1500 байт

Зеленым выделен размер кадра (Dst MAC + Src MAC + Type + Payload). Красным выделен размер пакета 1500 байт. Теперь кадр на линке между роутером и коммутатором:

Настройка MTU в Windows, Linux, на коммутаторах и роутерах Cisco Сисадмин, Компьютерные сети, IT, Роутер, IP, Протокол, Сети, Связь, Телеком, Данные, Системное администрирование, Инженер, Урок, Обучение, YouTube, Образование, Видео, Ethernet, Длиннопост, Windows, Linux

Ethernet кадр с меткой размером 1518 байт с вложением 1500 байт

Размер кадра увеличен до 1518 байт за счет того, что к заголовку добавились поля 802.1Q, но IP-пакет по-прежнему 1500 байт, данный кадр прошел через линк с MTU 1500 байт и это правильное поведение оборудование, но если вы работаете с каким-нибудь noname китайским тестируйте такие моменты.

Как изменить MTU интерфейса в Windows 10?

Сразу скажу, что я не самый быстрый стрелок на этом диком западе в части специфичных сетевых настроек на Винде, но как поменять MTU я знаю, для начала давайте посмотрим какие интерфейсы есть и какой MTU на них задан. Вот этой командной можно посмотреть канальные интерфейсы и их MTU в Windows:

C:\Windows\system32>netsh interface ipv4 show subinterfaces

MTU MediaSenseState Bytes In Bytes Out Interface

------ --------------- --------- --------- -------------

4294967295 1 0 2885 Loopback Pseudo-Interface 1

1500 1 5304932209 130883729 Ethernet

1500 1 7203292 7209265 Ethernet 2

1500 1 1665597 7301481 Ethernet 3

C:\Windows\system32>

В левом столбце значение L2 MTU, вывод я такой делаю, потому что можно посмотреть расширенные настройки интерфейсов:

C:\Windows\system32>netsh interface ipv4 show interfaces level=verbose

Interface Loopback Pseudo-Interface 1 Parameters

----------------------------------------------

IfLuid : loopback_0

IfIndex : 1

State : connected

Metric : 75

Link MTU : 4294967295 bytes

Reachable Time : 30500 ms

Base Reachable Time : 30000 ms

Retransmission Interval : 1000 ms

DAD Transmits : 0

Site Prefix Length : 64

Site Id : 1

Forwarding : disabled

Advertising : disabled

Neighbor Discovery : disabled

Neighbor Unreachability Detection : disabled

Router Discovery : dhcp

Managed Address Configuration : enabled

Other Stateful Configuration : enabled

Weak Host Sends : disabled

Weak Host Receives : disabled

Use Automatic Metric : enabled

Ignore Default Routes : disabled

Advertised Router Lifetime : 1800 seconds

Advertise Default Route : disabled

Current Hop Limit : 0

Force ARPND Wake up patterns : disabled

Directed MAC Wake up patterns : disabled

ECN capability : application

Interface Ethernet Parameters

----------------------------------------------

IfLuid : ethernet_32768

IfIndex : 8

State : connected

Metric : 25

Link MTU : 1500 bytes

Reachable Time : 20000 ms

Base Reachable Time : 30000 ms

Retransmission Interval : 1000 ms

DAD Transmits : 3

Site Prefix Length : 64

Site Id : 1

Forwarding : disabled

Advertising : disabled

Neighbor Discovery : enabled

Neighbor Unreachability Detection : enabled

Router Discovery : dhcp

Managed Address Configuration : enabled

Other Stateful Configuration : enabled

Weak Host Sends : disabled

Weak Host Receives : disabled

Use Automatic Metric : enabled

Ignore Default Routes : disabled

Advertised Router Lifetime : 1800 seconds

Advertise Default Route : disabled

Current Hop Limit : 0

Force ARPND Wake up patterns : disabled

Directed MAC Wake up patterns : disabled

ECN capability : application

И тут написано Link MTU. Поменяем значение MTU интерфейсу со значением Ethernet на 1600 байт через командую строку. Изменения рекомендую вносить через командую строку, запущенную от имени администратора:

C:\Windows\system32>netsh interface ipv4 set subinterface "Ethernet" mtu=1600 store=persistent

Ok.

C:\Windows\system32>netsh interface ipv4 show subinterfaces

MTU MediaSenseState Bytes In Bytes Out Interface

------ --------------- --------- --------- -------------

4294967295 1 0 5345 Loopback Pseudo-Interface 1

1600 1 272969 38897 Ethernet

1500 1 7203292 7221915 Ethernet 2

1500 1 3137674 15390579 Ethernet 3

Слово "Ethernet" в команде для смены MTU это имя интерфейса, имена интерфейсов можно посмотреть командой ipconfig. В графическом интерфейсе можно изменить размер кадров, который должен уметь обрабатывать интерфейс, заходим в меню "Настройки параметров адаптера" и здесь жмем ПКМ на нужный интерфейс:

Настройка MTU в Windows, Linux, на коммутаторах и роутерах Cisco Сисадмин, Компьютерные сети, IT, Роутер, IP, Протокол, Сети, Связь, Телеком, Данные, Системное администрирование, Инженер, Урок, Обучение, YouTube, Образование, Видео, Ethernet, Длиннопост, Windows, Linux

Перечень адаптеров в Windows 10

Выбираем пункт "Свойства"/"Properties".

Настройка MTU в Windows, Linux, на коммутаторах и роутерах Cisco Сисадмин, Компьютерные сети, IT, Роутер, IP, Протокол, Сети, Связь, Телеком, Данные, Системное администрирование, Инженер, Урок, Обучение, YouTube, Образование, Видео, Ethernet, Длиннопост, Windows, Linux

Меню просмотра и настроек свойств выбранного интерфейса

Жмем на кнопку "Configure..."/"Настроить...". А далее идем по цифрам:

Настройка MTU в Windows, Linux, на коммутаторах и роутерах Cisco Сисадмин, Компьютерные сети, IT, Роутер, IP, Протокол, Сети, Связь, Телеком, Данные, Системное администрирование, Инженер, Урок, Обучение, YouTube, Образование, Видео, Ethernet, Длиннопост, Windows, Linux

Меню включения Jumbo Frame на сетевых интерфейсах в Windows 10

В русской версии Windows меню "Jumbo Packet" перевели как "Большой кадр". Значение 9014 байт это именно что размер кадра, потому что после того как будет выбрано 9014 байт, MTU интерфейса станет 9000 байт:

C:\Windows\system32>netsh interface ipv4 show subinterfaces

MTU MediaSenseState Bytes In Bytes Out Interface

------ --------------- --------- --------- -------------

4294967295 1 0 6695 Loopback Pseudo-Interface 1

1600 1 570470 92983 Ethernet

9000 1 0 2656 Ethernet 2

1500 1 4577930 22004973 Ethernet 3

C:\Windows\system32>

Когда вы включаете Jumbo кадры, интерфейс перезагружается.

Как изменить MTU в Linux?

Перейдем к Linux. Разберемся как проверять MTU на интерфейсах.

Прежде чем продолжить сделаю одно примечания. В посте о настройке лабы TTL я довольно подробно описал базовые сетевые настройки для Debian 10, плюс там же дал некоторые полезные ссыли, поэтому сейчас на этом вопросе подробно не останавливаюсь.

На конкретном интерфейсе MTU смотрим так:

user@debian:~$ ip link show dev ens3

2: ens3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP mode DEFAULT group default qlen 1000

link/ether 00:50:00:00:03:00 brd ff:ff:ff:ff:ff:ff

user@debian:~$

На всех интерфейсах можно посмотреть так:

user@debian:~$ ip link list

1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1000

link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00

2: ens3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP mode DEFAULT group default qlen 1000

link/ether 00:50:00:00:03:00 brd ff:ff:ff:ff:ff:ff

3: ens4: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP mode DEFAULT group default qlen 1000

link/ether 00:50:00:00:03:01 brd ff:ff:ff:ff:ff:ff

Или вот так:

user@debian:~$ ip link show

1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1000

link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00

2: ens3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP mode DEFAULT group default qlen 1000

link/ether 00:50:00:00:03:00 brd ff:ff:ff:ff:ff:ff

3: ens4: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP mode DEFAULT group default qlen 1000

link/ether 00:50:00:00:03:01 brd ff:ff:ff:ff:ff:ff

Или даже так:

user@debian:~$ ip a

1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000

link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00

inet 127.0.0.1/8 scope host lo

valid_lft forever preferred_lft forever

inet6 ::1/128 scope host

valid_lft forever preferred_lft forever

2: ens3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000

link/ether 00:50:00:00:03:00 brd ff:ff:ff:ff:ff:ff

inet 192.168.0.180/24 brd 192.168.0.255 scope global dynamic ens3

valid_lft 6939sec preferred_lft 6939sec

inet6 fe80::250:ff:fe00:300/64 scope link

valid_lft forever preferred_lft forever

3: ens4: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000

link/ether 00:50:00:00:03:01 brd ff:ff:ff:ff:ff:ff

inet 10.0.0.2/30 brd 10.0.0.3 scope global ens4

valid_lft forever preferred_lft forever

inet6 fe80::250:ff:fe00:301/64 scope link

valid_lft forever preferred_lft forever

Разберемся с тем, как сделать временные изменения MTU на интерфейсе, изменять будем на ens3, этот интерфейс включен в мою домашнюю сеть, а через нее в интернет, для проверки попинуем Гугл:

user@debian:~$ ping -s 1473 -M do 8.8.8.8

PING 8.8.8.8 (8.8.8.8) 1473(1501) bytes of data.

ping: local error: Message too long, mtu=1500

ping: local error: Message too long, mtu=1500

^C

--- 8.8.8.8 ping statistics ---

2 packets transmitted, 0 received, +2 errors, 100% packet loss, time 19ms

user@debian:~$ ping -s 1472 -M do 8.8.8.8

PING 8.8.8.8 (8.8.8.8) 1472(1500) bytes of data.

1480 bytes from 8.8.8.8: icmp_seq=1 ttl=109 time=54.9 ms

1480 bytes from 8.8.8.8: icmp_seq=2 ttl=109 time=55.4 ms

^C

--- 8.8.8.8 ping statistics ---

2 packets transmitted, 2 received, 0% packet loss, time 2ms

rtt min/avg/max/mdev = 54.873/55.123/55.374/0.343 ms

user@debian:~$

Пакеты размером 1501 байт не проходят, пакеты размером 1500 байт проходят. Изменим MTU:

sudo ip link set ens3 mtu 1400

Запустим пинг:

user@debian:~$ ping -s 1373 -M do 8.8.8.8

PING 8.8.8.8 (8.8.8.8) 1373(1401) bytes of data.

ping: local error: Message too long, mtu=1400

ping: local error: Message too long, mtu=1400

ping: local error: Message too long, mtu=1400

^C

--- 8.8.8.8 ping statistics ---

3 packets transmitted, 0 received, +3 errors, 100% packet loss, time 36ms

user@debian:~$ ping -s 1372 -M do 8.8.8.8

PING 8.8.8.8 (8.8.8.8) 1372(1400) bytes of data.

1380 bytes from 8.8.8.8: icmp_seq=1 ttl=109 time=55.3 ms

1380 bytes from 8.8.8.8: icmp_seq=2 ttl=109 time=55.3 ms

^C

--- 8.8.8.8 ping statistics ---

2 packets transmitted, 2 received, 0% packet loss, time 3ms

rtt min/avg/max/mdev = 55.322/55.328/55.334/0.006 ms

user@debian:~$

Пакеты размером 1401 байт не проходят, 1400 байт проходят. Посмотрим параметры интерфейса:

user@debian:~$ ip link show dev ens3

2: ens3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1400 qdisc pfifo_fast state UP mode DEFAULT group default qlen 1000nani

link/ether 00:50:00:00:03:00 brd ff:ff:ff:ff:ff:ff

user@debian:~$

У интерфейса ens3 MTU будет 1400 байт до перезагрузки машины, после ребута он вновь станет 1500 байт. Разберемся как изменить MTU на постоянной основе, как и большая часть других настроек Linux, постоянные изменения применяются через изменение конфигурационных файлов. Открываем файл с сетевыми настройками любым удобным редактором:

sudo nano /etc/network/interfaces

Находим конфигурацию нужного нам интерфейса и добавляем в нее значение MTU нужного нам размера, в моем случае 1400 байт:

#to_CSR

allow-hotplug ens4

iface ens4 inet static

address 10.0.0.2/30

up ip route add 10.0.0.4/30 via 10.0.0.1

mtu 1400

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

user@debian:~$ ip link show dev ens4

3: ens4: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP mode DEFAULT group default qlen 1000

link/ether 00:50:00:00:03:01 brd ff:ff:ff:ff:ff:ff

Нет, он по-прежнему 1500 байт, надо передернуть:

user@debian:~$ sudo ifdown ens4

user@debian:~$ sudo ifup ens4

user@debian:~$ ip link show dev ens4

3: ens4: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1400 qdisc pfifo_fast state UP mode DEFAULT group default qlen 1000

link/ether 00:50:00:00:03:01 brd ff:ff:ff:ff:ff:ff

user@debian:~$

Просто ifup будет недостаточно, сперва интерфейс надо выключить, потом включить. Контрольная проверка пингами:

user@debian:~$ ping -s 1373 -M do 10.0.0.1

PING 10.0.0.1 (10.0.0.1) 1373(1401) bytes of data.

ping: local error: Message too long, mtu=1400

ping: local error: Message too long, mtu=1400

^C

--- 10.0.0.1 ping statistics ---

2 packets transmitted, 0 received, +2 errors, 100% packet loss, time 15ms

user@debian:~$ ping -s 1372 -M do 10.0.0.1

PING 10.0.0.1 (10.0.0.1) 1372(1400) bytes of data.

1380 bytes from 10.0.0.1: icmp_seq=1 ttl=255 time=60.9 ms

1380 bytes from 10.0.0.1: icmp_seq=2 ttl=255 time=0.641 ms

1380 bytes from 10.0.0.1: icmp_seq=3 ttl=255 time=0.591 ms

1380 bytes from 10.0.0.1: icmp_seq=4 ttl=255 time=0.595 ms

^C

--- 10.0.0.1 ping statistics ---

4 packets transmitted, 4 received, 0% packet loss, time 61ms

rtt min/avg/max/mdev = 0.591/15.670/60.856/26.088 ms

user@debian:~$

И не забывайте, что в Linux есть замечательная утилита grep, которая позволяет избежать просмотра портянок различного рода конфигураций и диагностических выводов:

user@debian:~$ ip a | grep mtu

1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000

2: ens3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1400 qdisc pfifo_fast state UP group default qlen 1000

3: ens4: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1400 qdisc pfifo_fast state UP group default qlen 1000

user@debian:~$

Ну и всё, спасибо, что дочитали!

Вопрос для вашего ответа

Почему роутер дает возможность установить минимальный MTU для IP 68 байт, а для MPLS и Ethernet 64 байта? В чем логика, если IP это вложение в Ethernet и тот же IP может быть закрыт MPLS заголовком?

Видео версия

Видео версия для тех, кому проще посмотреть и послушать, чем почитать.

Показать полностью 9 1
[моё] Сисадмин Компьютерные сети IT Роутер IP Протокол Сети Связь Телеком Данные Системное администрирование Инженер Урок Обучение YouTube Образование Видео Ethernet Длиннопост Windows Linux
2
8
mlenzovet
mlenzovet
10 месяцев назад
Лига биологов

Половое размножение и интернет⁠⁠

Половое размножение и интернет IT, Интернет, Размножение, Сети, Гены, Генетика, Математика, Математический юмор, Занимательная математика, Занимательная ботаника, Айтишники, Наука, Биология, Образование, Экология, Забавное, Биоинформатика, Ботаника, Длиннопост

Давайте начнем с интернета цветов. Вы никогда не задумывались, зачем цветам цвести? Растения вполне успешно распространяются почкованием - отпиливаешь кусочек - и вот тебе новое растение. По научному называется “бесполое размножение”.

С распространением тоже нет никаких проблем: плоды, которые едят животные и переносят их в желудке на большие расстояния, всякие зацепки и липучки чтобы прикрепиться к шерсти, к лапам, к башмакам. И наконец вертолетики и парашютики. Есть и растения с плавающими семенами. В общем, разве что в космос не летают. Но зачем же цвести? И почему же надо цвести именно перед распространением семян?

Половое размножение и интернет IT, Интернет, Размножение, Сети, Гены, Генетика, Математика, Математический юмор, Занимательная математика, Занимательная ботаника, Айтишники, Наука, Биология, Образование, Экология, Забавное, Биоинформатика, Ботаника, Длиннопост

Цвести, понятное дело для передачи генов, то есть для полового размножения. А что такое гены? Добрые люди посчитали, что Passiflora foetida (Пассифлора вонючая аххха, она кстати на картинке) содержит в своем геноме 424 миллиона пар оснований. Давайте возьмем эту цифру как среднюю для всех растений.

1. Одна пара кодирует примерно два бита данных, так что получаем 848 миллиона бит

2. Переводим в мегабайты и получаем примерно 100 мегов на каждый отдельный индивид цветкового растения.

3. При этом в каждой цветочной пылинке только половина информации, а именно 50 мегов.

4. На одном квадратном метре может быть от 1 до 50 растений. Если это не пустыня конечно, для простоты расчетов возьмем одно.

5. Так что каждый квадратный метр генерирует у нас минимум 50 мегов уникальной инфы.

6. При этом одно растение генерирует от 10 000 до 25 миллионов пыльцевых зерен. Физкульт привет вам дорогие аллергики.

7. Для примера возьмем скажем березу с 10 миллионами пыльцевых зерен.

8. Она у нас генерирует 48 терабайт данных (или 393 тысячи гигабит), при том, что большинство из них дубли.

Весь интернет за день генерирует всего-навсего 400 миллионов терабайт, а одно дерево 48 терабайт. А в россии их около 600 миллиардов.

Ладно, а что по скорости?

1. Допустим, что береза (аллергики вы еще здесь?) цветет где-то 10 дней. Значит, что она выдает где-то 460 мегабит/секунду.

2. Летом скорость ветра в РФ где-то 5 метров в секунду, т.е. березки подключены к березовому интернету на скорости 2,25 гигабит/секунду.

В РФ (2024) средняя скорость подключения к интернету около 100 мегабит/cекунду стационарно и 50 мегабит мобильно. Завидуй березке, %username%, ее никто не замедляет.

Я уже порядком задолбался, поэтому не буду считать березовую рощу, или лес. Природное сообщество луга с пчелами и бабочками тоже влом считать. Но, поверьте, что интернету такие объемы данных и не снились!


А что же внутри?

А теперь давайте подумаем, что зашифровано в этих конских объемах данных? Примерно такие сообщения:

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

А они такие в ответ:
- О, нормально вообще. Берем свои 50 метров генетического кода, берем еще 50 метров генетического кода, который прилетел по березовому интернету, билдим проект на 100 метров, получается семечко потенциально более успешной березоньки (лучше выживаемость и распространяемость).

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

При этом мужские цветки работают как передатчик, женские как приемник. Часто и передатчик (тычинки) и приемник (пестик) находятся в одном цветке.


Так как же интернет влияет на размножение человека?

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

Сейчас лучше размножаться с айтишниками, а не с биологами (лучше выживаемость и разъезжаемость).
Мальчики, девочки имейте это ввиду. Ничего личного, только тренды.


PS: Если милостивые дамы и господа нашли ошибки в моих расчетах, то прошу покорнейше уточнить их в комментариях.

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

1. Как я превратил обычный бизнес в IT компанию, читая книги

2. Я научился выигрывать переговоры и заработал проблемы с сердцем

3. Без ТЗ: почему клиент не хочет его

Показать полностью 1
[моё] IT Интернет Размножение Сети Гены Генетика Математика Математический юмор Занимательная математика Занимательная ботаника Айтишники Наука Биология Образование Экология Забавное Биоинформатика Ботаника Длиннопост
3
Посты не найдены
О нас
О Пикабу Контакты Реклама Сообщить об ошибке Сообщить о нарушении законодательства Отзывы и предложения Новости Пикабу Мобильное приложение RSS
Информация
Помощь Кодекс Пикабу Команда Пикабу Конфиденциальность Правила соцсети О рекомендациях О компании
Наши проекты
Блоги Работа Промокоды Игры Курсы
Партнёры
Промокоды Биг Гик Промокоды Lamoda Промокоды Мвидео Промокоды Яндекс Директ Промокоды Отелло Промокоды Aroma Butik Промокоды Яндекс Путешествия Постила Футбол сегодня
На информационном ресурсе Pikabu.ru применяются рекомендательные технологии