Тренинг Cisco 200-125 CCNA v3.0. День 10. Режимы работы портов свитча

Автор оригинала: Имран Рафаи
  • Перевод
  • Tutorial
Сегодня мы рассмотрим режимы портов свитча и функции свитча. Свитч имеет два режима работы: Access, или статический доступ, и Trunk – режим туннельной магистрали. Первый режим используется, когда вы подсоединяете к порту свитча какое-либо конечное устройство. Если вы подсоединяете к свитчу свой персональный компьютер или ноутбук, его порт работает как Access-порт. Для того, чтобы установить этот режим, в настройках свитча необходимо использовать команду switchport mode access. Из наших видеоуроков вы уже знаете, что когда командная строка имеет вид (config-if)#, это означает, что интерфейс свитча в данном случае обозначается как f0/1 или g0/1. Таким образом, у нас имеется подкоманда интерфейса свитча, и её можно использовать для любого другого порта.



Обычно, когда вы печатаете команду switchport mode access, она относится к настройке VLAN. Однако в данный момент вы можете не беспокоится о VLAN, лучше сосредоточьтесь на режимах портов. Итак, этот режим используется для соединения конкретного порта свитча с конечным устройством пользователя.

Второй режим известен как Trunk-порт, или магистральный порт. Он используется для соединения порта одного свитча с другим свитчем или роутером. Этот термин придумала компания Cisco, остальные производители сетевых устройств называют его по-другому. Когда мы будем обсуждать VLAN, то поговорим о режиме «транк» более подробно, пока что просто запомните, что режим Trunk используется при соединении свитча с другим свитчем, а Access – при соединении с конечным устройством. Обратите внимание, что мы говорим не о режимах свитча, а о режимах конкретного порта, и любой порт свитча можно настроить на один из этих режимов.

Для перевода порта в режим транк необходимо использовать команду switchport mode trunk. Замечу, что когда мы говорим о режимах портов, нужно сказать и о специальном протоколе для этих режимов, который называется Dynamic Trunking protocol, DTP – динамический протокол транкинга. Это проприетарный протокол Cisco, то есть его невозможно использовать ни с какими другими свитчами, кроме продукции Cisco. Существуют другие производители сетевого оборудования, которые взяли себе на вооружение концепцию DTP-протокола Cisco, однако поскольку эта серия видеоуроков ориентирована на CCNA Cisco, мы не станем рассматривать продукцию других разработчиков.



В этом протоколе имеется три режима: два рабочих режима Dynamic Desirable и Dynamic Auto, а третий режим No Negotiate просто отключает DTP.

Если порт находится в режиме Dynamic Desirable, он немедленно начинает посылать DTP-пакеты, то есть становится транк-портом. Из самого названия протокола следует, что он обеспечивает транк-соединение, и в данном случае название режима протокола desirable – «желаемый» — означает, что порт «желает» стать транком. Предположим, у меня транк-порт, а у вас Telnet, и возможно, я хочу, чтобы вы стали транк-портом, но вы этого не хотите!

Но если на другой стороне порт свитча тоже работает в режиме Dynamic Desirable, то наш порт, работающий в режиме Dynamic Desirable, становится транк-портом. То же самое произойдёт, если наш порт работает в режиме Dynamic Auto, а соседний – в режиме Dynamic Desirable. Как только наш порт получит от него DTP-пакеты, он тут же станет транк-портом.

Но если оба свитча находятся в режиме Dynamic Auto, возникает проблема – в этом режиме оба свитча не станут ничего предпринимать, потому что это пассивный режим ожидания, не предусматривающий никаких действий до тех пор, пока порт не получит DTP-пакет. Поэтому если оба свитча будут находится в режиме Dynamic Auto, никакого магистрального транк-соединения не состоится.

Таким образом, если вы хотите, чтобы транк-соединение создавалось автоматически, хотя бы один из свитчей, вернее, портов свитча, должен быть в режиме Dynamic Desirable.

Однако постоянно держать один из свитчей в состоянии Dynamic Desirable не очень хорошо. Предположим, что все свитчи в вашей организации находятся в состоянии Dynamic Auto или Dynamic Desirable. Если какой-то плохой парень намеревается взломать ваш свитч и проникнуть в систему, ему будет очень легко это сделать. Все, что ему нужно – это заполучить свитч, один из портов которого связан с вашим офисным свитчем, и настроить его на режим Dynamic Desirable. Как только это произойдёт, свитч компании станет транком и даст злоумышленнику возможность перехватить весь проходящий через него трафик.

В режиме транкинга 2 или 3 свитча делятся одними и теми же данными. Это подобно расширению возможностей вашего свитча – если он имеет 8 портов и соединен с помощью транка с другим 8-ми портовым свитчем, считайте, что у вас имеется 16-ти портовый свитч. Так работает транкинг по умолчанию, если вы, конечно, не предпримете особых мер против того, чтобы один свитч не отправлял свой трафик другому. Но обычно если вы организуете транк между двумя 8-ми портовыми свитчами, то просто получаете один 16-ти портовый свитч.

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

Для предотвращения подобной ситуации можно использовать режим No Negotiate, введя команду switchport nonegotiate. Поэтому обязательно используйте данную команду, чтобы отключить протокол DTP, если вы им не пользуетесь.

Если вы используете режим работы порта свитча Access, он отключает транкинг. Как мы уже говорили, если вам нужен статический режим работы, вы настраиваете Access, а если вам нужен режим динамического протокола DTP, вы используете Trunk. Такова концепция использования режимов работы портов свитча, и я надеюсь, что вы ее усвоили.

Теперь перейдем к рассмотрению функций коммуникации. В основном свитч выполняет три функции: Address Learning – запоминание MAC-адресов, Forwarding Decision – принятие решения о пересылке данных, и Loop Avoidance, или предотвращение замкнутых циклов, или сетевых петель.



Начнем с запоминания адресов. Мы уже говорили об этом, но раз мы говорим о свитчах, позвольте мне напомнить вам еще раз. Как только свитч включается в сеть, к нему в течение 30-40 секунд подключаются все сетевые устройства и они начинают «общаться». Скажу, что компьютеры очень любят общаться, постоянно ведя широковещательную трансляцию, говоря: «эй, вот мой MAC-адрес!». Предположим, у нас имеется пять сетевых устройств, и каждое ведет свою трансляцию, например, это могут быть запросы ARP. Каждый раз, когда вы включаете свой компьютер, он сообщает в сеть свой MAC-адрес. Если свитч получает широковещательное сообщение от первого устройства, подсоединенного к порту #1, он читает его MAC-адрес, содержащийся в данном сообщении, и запоминает, что его первый порт подсоединен к данному конкретному адресу. На основании этой информации свитч создает запись в своей таблице MAC-адресов. Эту таблицу иногда называют CAM-таблицей, или таблицей ассоциативной памяти. Точно так же он поступает в отношении второго, третьего, четвертого, пятого сетевого устройства – как только свитч получает широковещательное сообщение с MAC-адресом, он тут же заносит его в свою таблицу, создав соответствующую запись.

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

Существует два типа решений о пересылке данных свитчем на втором (канальном) уровне модели OSI – это Cut Through, или сквозная пересылка, и Store & Forward – пересылка с промежуточным хранением. Рассмотрим, в чем состоит разница между этими двумя типами коммутации.



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

Если используется тип передачи Store & Forward, свитч ждет, пока он не получит фрейм целиком. Затем он проверяет полученный фрейм на наличие ошибок, которые могли возникнуть в процессе передачи. Если ошибок нет, он передают фрейм порту назначения.

Некоторые люди считают, что режима Cut Through вполне достаточно, другие говорят: «нет, нам обязательно нужна проверка ошибок»! У этого вопроса нет однозначного решения, всё зависит от конкретной ситуации. Если вам нужна быстрая передача и вы хотите, чтобы свитч пересылал трафик как можно быстрее, вы используете режим коммутации Cut Through. Если вам нужен более надежный, проверенный трафик, вы используете Store & Forward.

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



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

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



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

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

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

Решить эту проблему помогает сетевой протокол Spanning-Tree Protocol, или STP, который предотвращает появление петель трафика в топологии сети. Подробно узнать об этом протоколе вы можете из статьи в Википедии, пока что вам достаточно будет ознакомиться с его концепцией. Протокол STP проверяет, не имеется ли у нас избыточного соединения. В нашем случае у нас есть 2 соединения между одними и теми же свитчами, то есть присутствует избыточность. На следующих видеоуроках я подробно расскажу вам, как работает STP, сейчас же просто скажу, что он действует по своим собственным правилам и логически отсоединяет лишний кабель. Физически оба кабеля остаются подключенными, но логически один из них отключается. Таким образом, оба порта, соединенные верхним кабелем, продолжают обмениваться трафиком, но один из портов, соединенных нижним кабелем, логически отключается.

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



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

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


Спасибо, что остаётесь с нами. Вам нравятся наши статьи? Хотите видеть больше интересных материалов? Поддержите нас оформив заказ или порекомендовав знакомым, 30% скидка для пользователей Хабра на уникальный аналог entry-level серверов, который был придуман нами для Вас: Вся правда о VPS (KVM) E5-2650 v4 (6 Cores) 10GB DDR4 240GB SSD 1Gbps от $20 или как правильно делить сервер? (доступны варианты с RAID1 и RAID10, до 24 ядер и до 40GB DDR4).

Dell R730xd в 2 раза дешевле? Только у нас 2 х Intel TetraDeca-Core Xeon 2x E5-2697v3 2.6GHz 14C 64GB DDR4 4x960GB SSD 1Gbps 100 ТВ от $199 в Нидерландах! Dell R420 — 2x E5-2430 2.2Ghz 6C 128GB DDR3 2x960GB SSD 1Gbps 100TB — от $99! Читайте о том Как построить инфраструктуру корп. класса c применением серверов Dell R730xd Е5-2650 v4 стоимостью 9000 евро за копейки?
  • +12
  • 3,4k
  • 9
ua-hosting.company
399,30
Хостинг-провайдер: серверы в NL / US до 100 Гбит/с
Поделиться публикацией

Комментарии 9

    0
    Предположим, у меня транк-порт, а у вас Telnet, и возможно, я хочу, чтобы вы стали транк-портом, но вы этого не хотите!

    Вы сами то поняли что написали?
    Ну и важно упомянуть, что включить desirable с двух концов мало, чтобы порт переключился в транк, как минимум должен совпадать vtp domain-name, даже если vtp вы не испольуете
      0
      Думаю, что понятие «дословный перевод» не включает в себя необходимость литературной обработки. Что говорит лектор, то и переведено. Иначе это был бы не перевод лекции, а платный учебный курс.
        0
        Такой «курс» и забесплатно никому не нужен. Продолжайте надрачивать на карму ))
          0
          Простите, переводчик бездарен. Здесь нет дословного перевода. Он не слышит, что говорит автор и создаёт адскую придуманную хрень из того, что ему кажется.
          5:25 So the minute another device is connected to that port and if that port is in Dynamic Desirable Mode. What it is desiring? It is desiring to become a trunk so it's going to tell other port «Ok, I would like to become a trunk. What do you want to become?»
          Где, где переводчик увидел телнет? Откуда взялось «вы этого не хотите!»? Какого чёрта это вообще делает на хабре?

          ua-hosting смените уже переводчика или хотя бы начните проверять его работу. Такие переводы — прямая антиреклама для вас.
        0
        зачем существует эта серия статей, когда есть от линкмиапа?
          0
          Иллюстрации курица лапой в Paint'е рисовала?
            0
            Иллюстрации «рисовала» лектор. Напишите Имрану, что считаете его курицей. Он читает комменты под оригинальным видео)))
              0
              Дело не в том, кто Имран, дело в том, что курицей считают вас. Стыдно такое г… но выкладывать. Или вам не стыдно?
                +1
                Во-первых, я не выкладываю эти видео. Але, гараж! ))) Во-вторых, Вы сами поняли, что написали? Я говорю, что в статье приведены сканы схем, которые собственноручно рисует автор лекции Имран Рафаи во время изложения материала. Или Вы считаете, что переводчик должен перересовывать схемы автора, дабы такие, как Вы, не посчитали курс индийца говном? Оригинально…
                P.S. Посмотрел на Вашу карму… вопросы отпали сами собой)))

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

          Самое читаемое