По вашему запросу ничего не найдено :(
Убедитесь, что запрос написан правильно, или посмотрите другие наши статьи:
img
В этой статье рассматривается OSPF и все проблемы, которые могут возникнуть с этим протоколом. OSPF отличается от EIGRP протоколом состояния канала, но общим для них является то, что оба протокола маршрутизации устанавливают соседство до обмена информацией о маршрутизации. В случае OSPF мы обмениваемся LSA (объявление о состоянии канала), чтобы создать LSDB (база данных о состоянии канала). Наилучшая информация из LSDB будет скопирована в таблицу маршрутизации. В этой части мы начнем с устранения неполадок соседей OSPF. Как только у нас есть рабочее соседство OSPF, мы рассмотрим другие проблемы, такие как отсутствующие маршруты. Full просмотр соседства OSPF При просмотре соседства OSPF, мы видим, что оно сообщает нам Full. Необходимо больше информации для понимания состояния Full. Если смежность соседства OSPF не полная, мы рассматриваем одно из следующих состояний: Соседей нет вообще Оно "залипло" в ATTEMPT. Оно "залипло" в INIT. Оно "залипло" в 2-WAY. Оно "залипло" в EXSTART/EXCHANGE. Оно "залипло" в LOADING. Давайте начнем и рассмотрим разные ситуации, которые могут возникнуть с соседством OSPF! Видео: протокол OSPF (Open Shortest Path First) за 8 минут Урок 1 у нас есть 2 маршрутизатора Мы начнем со сценариев, когда OSPF вообще не имеет соседства. В приведенном выше примере у нас есть 2 маршрутизатора. нет никакого OSPF соседства Как вы можете видеть, у нас нет никакого OSPF соседства, что может быть не так? show ip ospf interface show ip ospf interface Можно было просто посмотреть на текущую конфигурацию и выяснить, что не так, но мы не ищем простых путей. Мы используем другие полезные команды OSPF. Сначала используем команду show ip ospf interface. Мы видим, что OSPF не включен на интерфейсе FastEthernet 0/0 R1, но он работает на R2. Кто-то допустил ошибку с командой network и набрал неверный сетевой адрес Кто-то допустил ошибку с командой network и набрал неверный сетевой адрес ... простая ошибка, но такие вещи случаются. R1(config)#router ospf 1 R1(config-router)#no network 192.168.21.0 0.0.0.255 area 0 R1(config-router)#network 192.168.12.0 0.0.0.255 area 0 Настройка правильного сетевого адреса и обратной маски устраняет эту ошибку. Настройка правильного сетевого адреса Проблема решена. Соседство OSPF установлено. Это было легкое начало... Итог урока: проверьте правильность настройки сетевого адреса, обратной маски и области. Урок 2 2 маршрутизатора, но проблема другая Очередная проблема. Схема аналогичная: 2 маршрутизатора, но проблема другая. нет никакого соседства OSPF Как вы видите, нет никакого соседства OSPF. Протокол OSPF был включен на интерфейсе обоих маршрутизаторов Протокол OSPF был включен на интерфейсе обоих маршрутизаторов, поэтому мы знаем, что был использован правильный тип сети. Однако если вы внимательно посмотрите на R1, то увидите, что на нем написано "No Hellos (Пассивный интерфейс)". Если вы настроите пассивный интерфейс, то сеть на интерфейсе все равно будет объявлена, но она не будет отправлять приветственные пакеты OSPF. Таким образом, невозможно создать соседство OSPF. невозможно создать соседство OSPF Вот она проблема. R1(config)#router ospf 1 R1(config-router) #no passive-interface Fe0/0 Удалим пассивный интерфейс. Удалим пассивный интерфейс Соседство OSPF работает. Проблема устранена! Итог урока: проверьте, что OSPF отправляет приветственные пакеты на интерфейс, поскольку, в противном случае, вы не сможете создать соседство. Урок 3 те же маршрутизаторы, другая проблема Следующий сценарий с теми же маршрутизаторами, но другая проблема. R1 показывает, что наш сосед OSPF находится в состоянии INIT R2 ничего не показывает Интересно... R1 показывает, что наш сосед OSPF находится в состоянии INIT, а R2 ничего не показывает. OSPF был правильно настроен на обоих интерфейсах OSPF был правильно настроен на обоих интерфейсах Как мы видим, в примере выше OSPF был правильно настроен на обоих интерфейсах. Поскольку R1 показывает состояние INIT, мы можем сделать вывод, что он получает что-то от R2. R2 ничего не показывает, поэтому, вероятно, ничего не получает от R1. OSPF использует пакеты приветствия для установления соседства OSPF, и они отправляются с использованием многоадресного адреса 224.0.0.5. можем ли мы пропинговать адрес многоадресной рассылки можем ли мы пропинговать адрес многоадресной рассылки Рекомендуется проверить, можем ли мы пропинговать адрес многоадресной рассылки, который OSPF использует для пакетов приветствия. Мы видим, что R1 и R2 оба не получают ответа. Отправка эхо-запросов друг другу проходят без проблем Отправка эхо-запросов друг другу проходят без проблем Отправка эхо-запросов друг другу проходят без проблем. Так что может вызвать проблемы с отправкой и получением многоадресного трафика OSPF? Как насчет списка доступа? на R2 имеется входящий список доступа на R2 имеется входящий список доступа Мы что-то нашли. И это то, что на R2 имеется входящий список доступа с именем BLOCKSTUFF. в нижней части access-list имеется данный запрет Список доступа разрешает только TCP, UDP и ICMP трафик. OSPF не использует TCP или UDP, и он удаляется этим списком доступа из-за deny any. Мы этого не видим в верхнем листинге, но в нижней части access-list имеется данный запрет. R2(config)#ip access-list extended BLOCKSTUFF R2(config-ext-nacl)#5 permit ospf any any проведем коррекцию Проведем коррекцию access-list, чтобы был разрешен трафик OSPF. теперь она отображается как Full Проблема решена, теперь она отображается как Full. теперь можно пинговать адрес многоадресной рассылки 224.0.0.5 OSPF теперь можно пинговать адрес многоадресной рассылки 224.0.0.5 OSPF Ну что, теперь можно пинговать адрес многоадресной рассылки 224.0.0.5 OSPF. Мы видим ответ с другой стороны. Итог урока: не блокируйте многоадресные адреса OSPF 224.0.0.5 и 224.0.0.6 (DR / BDR). Урок 4 от же сценарий, другая проблема Это еще не все! Тот же сценарий, другая проблема: Соседство OSPF отсутствует, но мы видим, что OSPF был включен на интерфейсе Соседство OSPF отсутствует, но мы видим, что OSPF был включен на интерфейсе Соседство OSPF отсутствует, но мы видим, что OSPF был включен на интерфейсе Соседство OSPF отсутствует, но мы видим, что OSPF был включен на интерфейсе Соседство OSPF отсутствует, но мы видим, что OSPF был включен на интерфейсе. Пинг на адреса многоадресной рассылки проходит Пинг на адреса многоадресной рассылки проходит Пинг на адреса многоадресной рассылки проходит, так что это уже хорошо. Это хороший момент для включения отладки, чтобы узнать, что происходит: что происходит за кулисами Это очень полезная отладка, которая позволяет увидеть, что происходит за кулисами. сбросим процесс OSPF Мы сбросим процесс OSPF, чтобы ускорить отладку. Имейте в виду, что вы также можете сбросить только одно соседство OSPF. Это лучшая идея, если это применяется в производственной сети (сети предприятия или организации). R1 говорит, что он получил пакет Теперь нам есть с чем работать. R1 говорит, что он получил пакет hello, но у нас есть несоответствующие параметры hello. R означает то, что мы получили, а C - что мы настроили. Как мы видим, существует несоответствие в маске подсети. R1 настроен с маской подсети 255.255.255.0, в то время как R2 имеет маску подсети 255.255.255.128. OSPF будет сравнивать маску подсети только в том случае, если вы используете широковещательный тип сети. show ip ospf interface show ip ospf interface Можно использовать команду show ip ospf interface для проверки типа сети, и видно, что она является broadcast. Здесь мы видим, что R2 имеет другую маску подсети Здесь мы видим, что R2 имеет другую маску подсети Здесь мы видим, что R2 имеет другую маску подсети. Необходимо это исправить! R2(config)#interface Fe0/0 R2(config-if)#ip address 192.168.12.2 255.255.255.0 Достаточно просто... соседство OSPF работает соседство OSPF работает Теперь мы видим, соседство OSPF работает. Итог урока: проверьте правильность использования одинаковых масок подсетей на маршрутизаторах, которые напрямую связаны друг с другом. Урок 5 Та же топология, и у нас очередная проблема с пакетами hello Давайте продолжим, но уже со следующей ошибкой. Та же топология, и у нас очередная проблема с пакетами hello. Сразу перейдем к отладочной части: проблема похожа на наш последний сценарий Эта проблема похожа на наш последний сценарий. Есть часть параметров, которые должны совпадать в hello-пакете, чтобы создать соседство OSPF. dead-interval на R1 сконфигурирован на 24 секунды, а на R2 - на 11 секунд. hello-interval сконфигурирован на 10 секунд на R2 и 6 секунд на R1. Поменяем настройки параметров: R1(config)#interface Fe0/0 R1(config-if)#ip ospf hello-interval 10 R1(config-if)#ip ospf dead-interval 11 Нам нужно изменить это на уровне интерфейса. Введенные команды с новыми параметрами Введенные команды с новыми параметрами решают нашу проблему. Соседство OSPF работает. Урок 6 Топология Еще одна проблема, с которой нам, возможно, придется столкнуться, это аутентификация. OSPF предлагает 3 метода аутентификации: без аутентификации Plaintext MD5 аутентификация нет соседей OSPF нет соседей OSPF Как мы видим, у нас нет соседей OSPF. Давайте используем debug: Debug ip ospf adj Debug ip ospf adj поможет нам решить эти неполадки. Видно, что мы получаем пакет с аутентификацией типа 2, а используется тип 0. Вот что это значит: Type 0: нет аутентификации. Type 1: plaintext аутентификация. Type 2: MD5 аутентификация. Соответственно - R1 сконфигурирован без аутентификации, а R2 сконфигурирован на использование аутентификации MD5. R2 сконфигурирован на использование аутентификации MD5 Мы также можем посмотреть информацию OSPF для каждого интерфейса, чтобы увидеть, включена ли аутентификация или нет. включена ли аутентификация или нет Это то, что настроено на интерфейсе R2. R1(config)#interface FastEthernet0/0 R1(config-if)#ip ospf authentication message-digest R1(config-if)#ip ospf message-digest-key 1 md5 MYKEY Мы копируем и вставляем его в R1. копируем и вставляем его в R1 Проблема устранена! Если вам интересно, вот что вы увидите, когда задан неправильный пароль на одном из маршрутизаторов: R1(config)#interface FastEthernet0/0 R1(config-if)#no ip ospf message-digest-key 1 md5 MYKEY R1(config-if)#ip ospf message-digest-key 1 md5 WRONGKEY Сначала мы поменяем ключ: отладчик говорит нам, что мы используем неправильный ключ Наш отладчик говорит нам, что мы используем неправильный ключ между нашими маршрутизаторами. Извлеченный урок: убедитесь, что вы используете один и тот же тип аутентификации OSPF и пароль между маршрутизаторами. Урок 7 Тот же сценарий Что еще может пойти не так? Кажется, что нет никаких проблем, связанных с соседством OSPF! Тот же сценарий, теперь другая проблема: Соседство отсутствует OSPF Соседство отсутствует OSPF OSPF-соседство отсутствует. есть несоответствие в номере области На одном из наших маршрутизаторов появилось сообщение. Оно не требует объяснений, похоже, у нас есть несоответствие в номере области. R1 настроен для области 1, а R2 настроен для области 0 R1 настроен для области 1, а R2 настроен для области 0 R1 настроен для области 1, а R2 настроен для области 0. Исправляем: network R1(config)#router ospf 1 R1(config-router)#no network 192.168.12.0 0.0.0.255 area 1 R1(config-router)#network 192.168.12.0 0.0.0.255 area 0 Мы используем команду network, чтобы задать правильный номер области. network Ура, все работает! Итог урока: убедитесь, что ваши маршрутизаторы OSPF согласовывают один и тот же номер области. Урок 8 а этот раз R1 и R2 находятся в одной зоне 1 Рисунок выше слегка отличается от предыдущего. На этот раз R1 и R2 находятся в одной зоне 1. нет соседей нет соседей Вот так сюрприз... нет соседей! Запускаем отладку: Запускаем отладку Очень интересно! Существует несоответствие в опции stub/transit area. OSPF имеет различные типы областей, и оба маршрута должны согласовываться с типом области (stub, nssa, totally stub и totally nssa). R1, по-видимому, настроен на использование normal area R1, по-видимому, настроен на использование normal area. R2, похоже, настроен на использование stub area R2, похоже, настроен на использование stub area. Несоответствие в типе области означает, что мы не можем установить соседство OSPF. R2 имеет команду area 1 stub На листинге выше мы видим, что R2 имеет команду area 1 stub. Удалим ее. R2(config)#router ospf 1 R2(config-router)#no area 1 stub Изменим область 1 на normal area для R2. Изменим область 1 на normal area для R2 Изменим область 1 на normal area для R2 Итог урока: убедитесь, что ваши маршрутизаторы OSPF используют один и тот же тип области. Урок 9 Очередная ситуация с неполадками с OSPF Очередная ситуация с неполадками в OSPF, которая на первый взгляд кажется очень запутанной. Давайте посмотрим на конфигурацию OSPF обоих маршрутизаторов: посмотрим на конфигурацию OSPF обоих маршрутизаторов посмотрим на конфигурацию OSPF обоих маршрутизаторов Это простая конфигурация. таблица соседства OSPF не пустая таблица соседства OSPF не пустая У нас таблица соседства OSPF не пустая, но оба маршрутизатора "застряли" в состоянии 2WAY. Помимо поиска нужного нам слова "FULL", следует обратить внимание на две вещи, отображаемые командой show: Оба маршрутизатора показывают друг друга как DROTHER. Приоритет для обоих маршрутизаторов равен 0. В multi-access сети, такой как Ethernet, OSPF будет выполнять выборы DR/BDR, если тип сети broadcast или non-broadcast. Проверяем тип сети: Оба интерфейса настроены для типа сети broadcast Оба интерфейса настроены для типа сети broadcast Оба интерфейса настроены для типа сети broadcast. Это значение по умолчанию для интерфейсов Ethernet. Это означает, что у нас есть выборы DR/BDR, но оба маршрутизатора настроены на приоритет 0, а это означает, что они не будут участвовать в выборах DR/BDR. По этой причине они застряли в состоянии 2WAY. Необходимо это исправить: R1(config)#interface fastEthernet 0/0 R1(config-if)#ip ospf priority 1 Мы изменим приоритет на одном из маршрутизаторов. Мы видим, что R1 был выбран для DR Мы видим, что R1 был выбран для DR Все работает. Мы видим, что R1 был выбран для DR, потому что он имеет приоритет 1. Итог урока: Типы широковещательной и не вещательной сети требуют выбора DR/BDR. Убедитесь, что один из маршрутизаторов выбран. В следующей статье мы разберем еще 8 уроков траблшутинга OSPF.
img
Предыдущая статья из цикла про устранение неисправностей DHCP на Cisco доступна по ссылке. Последняя статья будет посвящена некоторым проблемам с FHRP, мы начнем с VRRP! Урок 1 В сценарии выше у нас есть проблема с HSRP. Сначала разберем топологию. С левой стороны находится клиент (мы используем маршрутизатор, чтобы иметь возможность воссоздать его в GNS3), который использует виртуальный IP-адрес в качестве шлюза по умолчанию. R2 и R3 настроены для HSRP. На правой стороне есть маршрутизатор с IP-адресом 4.4.4.4 на интерфейсе loopback0. К сожалению, наш клиент не может пропинговать 4.4.4.4. Что здесь происходит? Сначала мы отправим эхо-запрос от клиента на IP-адрес 4.4.4.4. Вы видите символ U (недостижимый), поэтому мы знаем, что получаем ответ от шлюза по умолчанию. Таблица маршрутизации была отключена на этом клиентском маршрутизаторе (нет ip-маршрутизации), но вы можете видеть, что шлюз по умолчанию был настроен. Давайте посмотрим, доступен ли этот IP-адрес. Достигнуть шлюза по умолчанию не проблема, поэтому мы можем перенести фокус на R2 или R3. Мы можем использовать команду show standby, чтобы убедиться, что R3 является активным маршрутизатором HSRP. Давайте проверим, может ли он достичь IP-адреса 4.4.4.4. Увы ...пинг не проходит. Его нет в таблице маршрутизации, и если вы посмотрите внимательно, то увидите, что FastEthernet1/0 не находится в таблице маршрутизации как непосредственно подключенный, это указывает на то, что что-то не так с этим интерфейсом. Ну вот...интерфейс отключен. R3(config)#interface fastEthernet 1/0 R3(config-if)#no shutdown Включим его! Ну вот, теперь он работает. Проблема устранена ... теперь клиент может пинговать 4.4.4.4! Есть еще одна вещь, хотя ... мы используем HSRP, так что наш шлюз по умолчанию не является единственной точкой отказа, но в этом случае R3 имел сбой соединения...разве R2 не должен взять на себя управление? interface tracking было включено, и вы можете видеть, что приоритет должен уменьшиться на 10, если интерфейс FastEthernet1/0 перейдет в состояние down. Это означает, что обычно R2 должен взять на себя управление, но preemption is disabled по умолчанию для HSRP. R2(config)#interface fastEthernet 0/0 R2(config-if)#standby 1 preempt R3(config)#interface fastEthernet 0/0 R3(config-if)#standby 1 preempt Прежде чем отпраздновать нашу победу в устранении неполадок, мы должны убедиться, что эта проблема больше не возникнет в будущем. Мы включим приоритет на обоих маршрутизаторах. Теперь все готово! Итог урока: убедитесь, что preemption включена для HSRP, если вы используете interface tracking Урок 2 Вот та же топология, но на этот раз мы используем VRRP вместо HSRP. Однако проблема заключается в другом: клиент жалуется, что не все IP-пакеты попадают в 4.4.4.4. Некоторые из IP-пакетов не поступают в 4.4.4.4. IP-адрес шлюза: 192.168.123.254. Шлюз пингуется без проблем. R2 не может достичь 4.4.4.4, но у R3 нет никаких проблем. Прежде чем мы продолжим проверять, почему R2 не может достичь 4.4.4.4, мы взглянем на конфигурацию VRRP, чтобы увидеть, какой маршрутизатор является главным. Вывод show vrrp интересен. Оба маршрутизатора считают, что они активны, и, если вы посмотрите внимательно, вы поймете, почему. Аутентификация включена, и в key-string имеется несоответствие. Поскольку оба маршрутизатора активны, половина пакетов окажется в R2, а остальные в R3. Вот почему наш клиент видит, что некоторые пакеты приходят, а другие нет. Давайте исправим нашу аутентификацию: R2(config)#interface fa0/0 R2(config-if)#vrrp 1 authentication md5 key-string SECRET Мы сделаем key-string одинаковыми. Это сообщение в консоли R2 является многообещающим. R3 был выбран в качестве главного маршрутизатора. Теперь давайте выясним, почему R2 не смог достичь 4.4.4.4, поскольку эта проблема устранена. Странно, R2 показывает только одну запись в таблице маршрутизации, что-то не так с FastEthernet 1/0. Кажется, кому-то нравится команда shutdown Имейте в виду, что это может быть что-то еще списки доступа, blocking traffic между R2 и R4, port-security (если был коммутатор в середине), интерфейсы в режиме err-disabled, неправильные IP-адреса и другое. Проверьте все! R2(config)#interface fastEthernet 1/0 R2(config-if)#no shutdown Включим интерфейс! Проблема устранена! Итог урока: убедитесь, что маршрутизаторы VRRP могут связаться друг с другом.
img
При первичной настройке Asterisk или дальнейшей отладке очень часто может возникнуть потребность в совершении звонка без использования физического телефона или софтфона. К примеру, изменились настройки фаерволла, транка или экстеншена и необходимо при каждом изменении совершать тестовые исходящие звонки. Подобную функцию выполняет команда «Dial», но в данном случае необходимо создать так называемый «call» файл, просто текстовый файл, который содержит следующие строки: Channel: SIP/flowroute/84951112233 MaxRetries: 1 RetryTime: 60 WaitTime: 30 Context: test_forcall Extension: 1 Priority: 1 Set: variablename=variablevalue CallerID: Test <84954445566> Первая строчка определяет канал, который будет использоваться для совершения вызова и экстеншен, в данном случае – любой номер телефона, в данном примере 84951112233. Следующая строка – параметр, определяющий сколько раз Asterisk произведет попыток вызова на данный номер. Далее – временной интервал между вызовами и начальное время ожидания перед первым звонком. Параметр «Context» отвечает соответственно за контекст, через который пойдет вызов, экстеншен и приоритет. Кроме того, можно настроить CallerID (номер вызывающего абонента), в данном случае - Test <84954445566>. Для того, что бы Астериск прочел и использовал .call файл, его необходимо поместить в директорию /var/spool/asterisk/outgoing/ - важно, что он должен быть именно перемещён в неё с помощью команды «mv», а не создан в самой директории. Кроме того, необходимо, что бы Астериск имел достаточно прав для того, чтобы удалить этот файл после использования. Суммируя вышесказанное, необходимо: Создать .call файл с необходимым наполнением Настроить необходимые разрешения с помощью команды chmod chmod 777 callfile.call 3. Переместить файл в директорию для его исполнения командой mv mv callfile.call /var/spool/asterisk/outgoing/ Так как файл совершает вызов с использованием контекста, экстеншена и приоритета, ниже приведён пример контекста, который использовался для данного примера: [test_forcall] exten => 1,1,Answer() exten => 1,n,Record(/home/test/asterisk_sounds/rec/incoming_call.gsm,5,30) exten => 1,n,Playback(vm-goodbye) exten => 1,n,Hangup() В описании данного контекста нет никакой специфики, кроме того что необходимо зарегистрировать экстеншен с номером 1, так как через него идет вызов (.call файл в начале статьи). Если изменить дату создания .call файла, то Asterisk совершит вызов в указанный момент. Для этого используется команда touch, как указано ниже. touch -t YYYYMMDDHHMM.SS filename // формат использования команды touch -t echo date('YmdHi'); .00 callfile.call // изменение даты файла так, что Asterisk совершит вызов echo date('d'); function getMonthRus($num_month = false){ if(!$num_month){ $num_month = date('n'); } $monthes = array( 1 => 'января', 2 => 'февраля', 3 => 'марта', 4 => 'апреля', 5 => 'мая', 6 => 'июня', 7 => 'июля', 8 => 'августа',9 => 'сентября', 10 => 'октября', 11 => 'ноября', 12 => 'декабря' ); $name_month = $monthes[$num_month]; return $name_month; } echo getMonthRus(); echo date('Y'); года в echo date('H:i'); .Это если Вы решите позвонить прямо сейчас :) Если необходимо проверить список файлов, которые ожидают исполнения, необходимо ввести следующую команду: ls --full-time /var/spool/asterisk/outgoing/ Таким образом, можно генерировать файлы для совершения автодозвона в целях тестирования, в любое необходимое время – к примеру, можно проверять работоспособность АТС в критичные моменты.
ВЕСЕННИЕ СКИДКИ
40%
50%
60%
До конца акции: 30 дней 24 : 59 : 59