Найти в Дзене

Урок 5: Канальный уровень (L2) и Ethernet - Адресация и коммутация

Цели урока:
1. Понимать функции и ответственность Канального уровня (L2) модели OSI.
2. Знать структуру и типы MAC-адресов.
3. Понимать формат кадра Ethernet и его ключевые поля.
4. Объяснять принцип работы коммутатора (learning, forwarding, filtering, flooding).
5. Практически настраивать коммутатор, анализировать MAC-таблицу и работу L2 в Cisco Packet Tracer. 1.1. Роль Канального уровня (L2): Основная задача: Обеспечить надежную передачу кадров (frames) между непосредственно соединенными узлами в пределах одной локальной сети (LAN) или между устройствами, соединенными "точка-точка". Функции: 1.2. MAC-адреса (Media Access Control Address): Что это? Физический адрес, "вшитый" в сетевую карту (NIC) производителем. Уникальный идентификатор устройства в сети L2. Формат: 48 бит (6 байт). Записывается в шестнадцатеричном виде, обычно группами по 2 байта, разделенных двоеточием, дефисом или точкой (например, "00:1A:C2:7B:00:47", "00-1A-C2-7B-00-47", "001A.C27B.0047"). Структура: Первы
Оглавление

Цели урока:
1. Понимать функции и ответственность Канального уровня
(L2) модели OSI.
2. Знать структуру и типы
MAC-адресов.
3. Понимать формат кадра
Ethernet и его ключевые поля.
4. Объяснять принцип работы коммутатора
(learning, forwarding, filtering, flooding).
5. Практически настраивать коммутатор, анализировать
MAC-таблицу и работу L2 в Cisco Packet Tracer.

1. Теоретическая часть:

1.1. Роль Канального уровня (L2):

Основная задача:

Обеспечить надежную передачу кадров (frames) между непосредственно соединенными узлами в пределах одной локальной сети (LAN) или между устройствами, соединенными "точка-точка".

Функции:

  • Физическая адресация (MAC-адреса): Уникальная идентификация устройств в сегменте L2.
  • Формирование кадров: Инкапсуляция пакетов сетевого уровня (L3) в кадры с добавлением заголовка и трейлера.
  • Доступ к среде передачи (Media Access Control - MAC): Управление доступом нескольких устройств к общей среде (например, CSMA/CD в старом Ethernet, CSMA/CA в Wi-Fi). В современных полнодуплексных сетях с коммутаторами эта функция упрощается.
  • Обнаружение и (иногда) коррекция ошибок: Использование контрольной суммы в трейлере (FCS) для обнаружения поврежденных кадров.
  • Исправление ошибок - задача вышестоящих уровней (например, TCP).
  • Управление потоком (Flow Control): Предотвращение "захлебывания" приемника быстрым передатчиком (редко используется в современных коммутируемых LAN).
  • Определение границ кадра: Распознавание начала и конца кадра.

1.2. MAC-адреса (Media Access Control Address):

Что это?

Физический адрес, "вшитый" в сетевую карту (NIC) производителем. Уникальный идентификатор устройства в сети L2.

Формат:

48 бит (6 байт). Записывается в шестнадцатеричном виде, обычно группами по 2 байта, разделенных двоеточием, дефисом или точкой (например, "00:1A:C2:7B:00:47", "00-1A-C2-7B-00-47", "001A.C27B.0047").

Структура:

Первые 3 байта (24 бита):

OUI (Organizationally Unique Identifier) - идентификатор производителя, назначается IEEE (e.g., "00:1A:C2" = Asustek).

Последние 3 байта (24 бита):

Номер интерфейса (Vendor Assigned) - уникальный номер, назначаемый производителем устройства.

Типы MAC-адресов:

  • Unicast MAC:

Адрес одного конкретного устройства ("00:1A:C2:7B:00:47").

  • Broadcast MAC:

Адрес всех устройств в локальном сегменте L2 (широковещательный домен). Всегда "FF:FF:FF:FF:FF:FF". Кадр с таким адресом назначения принимают и обрабатывают все устройства в сегменте.

  • Multicast MAC:

Адрес группы устройств. Начинается со специального значения
(например: "01:00:5E" для
IPv4 multicast). Кадр принимают только устройства, подписанные на эту группу (например: для потокового видео, OSPF Hello-пакетов).

Важно:

MAC-адреса работают только в пределах одного широковещательного домена (одной VLAN). Маршрутизаторы (L3) не пересылают кадры L2 между сегментами.

1.3. Принцип работы коммутатора (Switch):


Коммутатор - основное устройство
L2, интеллектуально соединяющее устройства в LAN.

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

  • Изучение MAC-адресов (Learning): Коммутатор "смотрит" на исходный MAC-адрес (Source MAC) входящего кадра и запоминает, с какого порта он пришел. Эта информация хранится в MAC-адресной таблице (CAM-таблица).
  • Пересылка кадров (Forwarding): Коммутатор "смотрит" на MAC-адрес назначения (Destination MAC) входящего кадра:
  1. Если адрес назначения известен (есть в MAC-таблице) -> кадр пересылается только на тот порт, который ассоциирован с этим MAC-адресом в таблице -> Фильтрация (Filtering) (кадр НЕ отправляется на другие порты).
  2. Если адрес назначения неизвестен (нет в MAC-таблице) -> кадр затопляется (Flooding) - пересылается на все активные порты, КРОМЕ того, с которого он пришел.
  3. Если адрес назначения широковещательный ("FF:FF:FF:FF:FF:FF") -> кадр затопляется (Flooding) на все порты, кроме входного.
  4. Если адрес назначения "multicast" -> поведение зависит от настройки IGMP Snooping (обычно затопляется).
  • Предотвращение петель (Loop Avoidance):

Базово: Коммутаторы не создают логических петель. Но в сложных топологиях с несколькими соединениями между коммутаторами могут возникать физические петли -> для их предотвращения используется STP (Spanning Tree Protocol), который будет изучен в следующих уроках.

MAC-адресная таблица (CAM - Content Addressable Memory):

  • Хранит пары:

MAC-адрес -> Портовый интерфейс (и номер VLAN).

  • Динамические записи:

Создаются автоматически в процессе Learning. Имеют время жизни (Aging Time), обычно 300 секунд. Если за это время коммутатор не получил кадр с данным Source MAC, запись удаляется.

  • Статические записи:

Задаются администратором вручную ("mac address-table static <MAC> vlan <ID> interface <int>"). Не имеют времени жизни. Приоритет выше, чем у динамических.

  • Просмотр таблицы:

Команда "show mac address-table" (Cisco CLI).

Широковещательный домен (Broadcast Domain):

Область сети, в которой широковещательный кадр (Destination MAC = "FF:FF:FF:FF:FF:FF") будет доставлен всем устройствам.
Коммутаторы
(L2) НЕ РАЗДЕЛЯЮТ широковещательные домены. Все порты коммутатора по умолчанию принадлежат одному широковещательному домену (VLAN 1).
Маршрутизаторы
(L3) РАЗДЕЛЯЮТ широковещательные домены. Широковещательный трафик не пересылается между интерфейсами маршрутизатора. VLAN также разделяют широковещательные домены на L2.

2. Практическая лабораторная работа в Cisco Packet Tracer:


Цель: Настроить коммутатор, наблюдать процесс заполнения MAC-таблицы, изучить поведение коммутатора (learning, forwarding, flooding).

Топология:
3 ПК (Pабочее место №1, Pабочее место №2, Pабочее место №3)
Коммутатор (
Switch, например, 2960)
Соединения: Медные прямые кабели
(Copper Straight-Through) от каждого ПК к свободному порту коммутатора (напр., Fa0/1, Fa0/2, Fa0/3).

Шаги:

1. Базовая настройка сети:
Соберите топологию.
Назначьте IP-адреса ПК в одной подсети:
Pабочее место №1:
"192.168.1.1/24"
Pабочее место №2:
"192.168.1.2/24"
Pабочее место №3:
"192.168.1.3/24"

Убедитесь, что порты коммутатора включены (зеленые индикаторы).

2. Начальная настройка коммутатора (CLI):
Подключитесь к консоли коммутатора (
Console кабель -> Terminal на Рабочем месте №1 или используйте значок коммутатора -> CLI).
Настройте базовые параметры:
Switch> enable # Переход в привилегированный режим
Switch# configure terminal # Переход в режим глобальной конфигурации
Switch(config)# hostname SW1 # Задаем имя хоста
SW1(config)# no ip domain-lookup # Отключаем попытки DNS-разрешения ошибочных команд
SW1(config)# line console 0 # Настройка консольного порта
SW1(config-line)# password cisco # Пароль для входа в консоль
SW1(config-line)# login # Требовать пароль при входе
SW1(config-line)# exit
SW1(config)# line vty 0 15 # Настройка виртуальных терминалов (Telnet/SSH)
SW1(config-line)# password cisco
SW1(config-line)# login
SW1(config-line)# exit
S
W1(config)# enable secret class # Пароль для входа в привилегированный режим (enable)
SW1(config)# exit
SW1# write memory # Сохранить конфигурацию в NVRAM (startup-config)
Building configuration...
[OK]
SW1#

3. Анализ пустой MAC-таблицы:
В привилегированном режиме выполните:
SW1# show mac address-table
Mac Address Table
-------------------------------------------
Vlan Mac Address Type Ports
---- ----------- -------- -----

Таблица пуста! Коммутатор еще не знает, где какие устройства.

4. Инициирование трафика и наблюдение за Learning:
С Pабочего место №1 выполните
"ping" на Pабочее место №2
("ping 192.168.1.2").
Перед пингом: В CLI коммутатора выполните "show mac address-table" - таблица все еще пуста (или содержит только запись о MAC Pабочего место №1, если он уже отправлял кадр).
Во время/после пинга: Быстро выполните "show mac address-table" еще раз. Вы увидите новые записи:
Mac Address Table
-------------------------------------------
Vlan Mac Address Type Ports
---- ----------- -------- -----
1 0002.1723.4483 DYNAMIC Fa0/1 # MAC Pабочего место №1 (источник запроса)
1 0030.f2e9.32c7 DYNAMIC Fa0/2 # MAC Pабочего место №2 (источник ответа)

Объяснение:
1. Pабочее место №1 отправляет
ARP Request (Broadcast) для поиска MAC Pабочего место №2 по его IP. Коммутатор видит "Source MAC Pабочего места №2" -> Запоминает: MAC Pабочего места №1 на порту Fa0/1 -> Запись в таблицу. Destination MAC = Broadcast -> Затопляет кадр на все порты (Fa0/2, Fa0/3).
2. Pабочее место №2 получает
ARP Request, узнает, что Pабочее место №1 ищет его MAC. Pабочее место №2 отправляет ARP Reply Unicast на MAC Pабочего места №1. Коммутатор видит Source MAC Pабочего места №2 -> Запоминает: MAC Pабочего места №2 на порту Fa0/2 -> Запись в таблицу. Destination MAC = MAC PC0 -> Таблица уже знает, что MAC Pабочего места №1 на Fa0/1 -> Пересылает кадр только на порт Fa0/1 (фильтрация).
3. Начинается
ICMP (Ping). Кадры Ping Req от Pабочего места №1
(Src: PC0, Dst: PC1) -> Коммутатор знает Pабочее место №2 на Fa0/2 -> Пересылает только на Fa0/2. Кадры Ping Reply от Pабочего места №2
(Src: PC1, Dst: PC0) -> Коммутатор знает Pабочее место №1 на Fa0/1 -> Пересылает только на Fa0/1.

5. Наблюдение за Aging Time:
Запомните время. Выполните
"show mac address-table" - все записи есть.
Подождите 5 минут (300 секунд - дефолтное время жизни). Не генерируйте трафик между Pабочими местами.
Через 5+ минут выполните
"show mac address-table" снова. Динамические записи исчезли! Коммутатор "забыл" расположение MAC-адресов, так как не получал от них кадры.
Повторите
"ping" с любого ПК. Записи появятся снова.

6. Добавление статической MAC-записи (опционально):
Узнайте MAC-адрес Pабочего места №2 (на ПК:
"ipconfig /all" в Windows; "ifconfig" или "ip link" в Linux/Mac; в PT: "Desktop" -> "Config" -> "FastEthernet0").

-2

На SW1 (привилегированный режим):
SW1# configure terminal
SW1(config)# mac address-table static
0002.1723.4483 vlan 1 interface fastEthernet 0/2
SW1(config)# end
SW1# show mac address-table static # Просмотр статических записей

-3

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

7. Анализ кадров в режиме симуляции (PT):
Перейдите в
"Simulation" режим.
Отфильтруйте события
("Edit Filters") -> Оставьте "ARP" и "ICMP".
Запустите
"ping" с Pабочего места №1 на Pабочее место №2.
Кликайте на события
(ARP, ICMP) и анализируйте вкладку "OSI Model" или "Outbound PDU Details":
Layer 2
(Data Link): Убедитесь, что видите поля "Destination MAC","Source MAC", "Type" (ARP или IPv4), "FCS".
Проследите путь кадра через коммутатор. Обратите внимание, как коммутатор пересылает кадр только на
нужный порт после заполнения таблицы.

-4

3. Типичные проблемы L2:


Переполнение MAC-таблицы: Коммутатор начинает затоплять ВЕСЬ трафик -> медленная работа сети. Решение: увеличить размер CAM-таблицы (если возможно), сегментировать сеть VLAN.
"Плохой" MAC-адрес: Сетевая карта с дублированным или некорректным MAC -> конфликты, потеря связи. Решение: замена NIC.
Петли в топологии (без STP): Широковещательные штормы (broadcast storm) -> полный паралич сети. Решение: включить STP/RSTP.
Ошибки FCS: Поврежденные кадры отбрасываются коммутатором -> потери пакетов. Причины: плохой кабель/коннектор, помехи, неисправная сетевая карта.
Проблемы с дуплексом/скоростью: Несоответствие настроек на коммутаторе и конечном устройстве -> коллизии (в полудуплексе), потеря пакетов.

Решение: включить "auto-negotiation" или явно задать одинаковые настройки ("speed 100", "duplex full").


4. Вопросы для самопроверки:


1. Каковы 3 основные функции Канального уровня
(L2)?
2. Какова структура
MAC-адреса? Приведите примеры Unicast, Broadcast и Multicast MAC.
3. Перечислите ключевые поля заголовка
Ethernet-кадра и их назначение.
4. Опишите процесс
"Learning" коммутатора. На основе какого поля кадра он работает?
5. Когда коммутатор выполняет
"Forwarding" (фильтрацию), а когда "Flooding"? Приведите примеры для каждого случая.
6. Что такое широковещательный домен? Какие устройства его разделяют, а какие нет?
7. Какой командой просмотреть
MAC-адресную таблицу на коммутаторе Cisco?
8. Что происходит с динамической записью в
MAC-таблице, если устройство не отправляет кадры в течение 5 минут?
9. Почему минимальный размер
Ethernet-кадра 64 байта?
10. Как коммутатор узнает
MAC-адрес нового устройства, подключенного к его порту?

5. Вывод:


Канальный уровень (L2) обеспечивает локальную доставку кадров между соседними устройствами, используя MAC-адреса.
MAC-адрес уникален для NIC, состоит из OUI (производитель) и номера интерфейса. Типы: Unicast, Broadcast ("FF:FF:FF:FF:FF:FF"), Multicast.
Ethernet-кадр содержит: MAC назначения/источника, EtherType (тип L3-протокола), данные, FCS (контрольная сумма).
Коммутатор - ключевое устройство L2.

Функции:

Learning (по Source MAC),

Forwarding/Filtering (по Destination MAC, если известен),

Flooding (для неизвестных MAC и Broadcast).

MAC-адресная таблица (CAM) хранит соответствие MAC->Port. Записи динамические (время жизни ~300с) и статические (ручная настройка).
Широковещательный домен- область досягаемости Broadcast-трафика. Коммутаторы объединяют порты в один домен, маршрутизаторы/VLAN разделяют.
Практика в Packet Tracer ("ping", "show mac address-table", режим симуляции)
критически важна для понимания работы L2.