По вашему запросу ничего не найдено :(
Убедитесь, что запрос написан правильно, или посмотрите другие наши статьи:
img
Мы продолжим рассмотрение вопроса об устранении неполадок в объявлениях о маршрутах BGP. Все маршрутизаторы будут иметь рабочие соседние узлы BGP. Рекомендуем также почитать первую часть статьи по траблшутингу протокола BGP. Видео: Основы BGP за 7 минут Урок 1 Новый сценарий. R1 и R2 находятся в разных автономных системах. Мы пытаемся объявить сеть 1.1.1.0 / 24 от R1 до R2, но она не отображается на R2. Вот конфигурации: На первый взгляд, здесь все в порядке. Однако R2 не узнал никаких префиксов от R1 Может быть, используется distribute-list. Но нет, это не тот случай. Это означает, что нам придется проверять наши все команды network. Проблема заключается в команде network. Она настраивается по-разному для BGP и нашего IGP. Если мы применяем команду network для BGP, она должна быть полной. В этом случае забыли добавить маску подсети R1(config)#router bgp 1 R1(config-router)#network 1.1.1.0 mask 255.255.255.0 Мы должны убедиться, что ввели правильную маску подсети. Итак, видно, что мы узнали префикс, и R2 устанавливает его в таблицу маршрутизации ... проблема решена! Итог урока: введите правильную маску подсети ... BGP требователен! Урок 2 Давайте перейдем к следующей проблеме. Системный администратор из AS1 хочет объявить summary в AS 2. Системный администратор из AS 2 жалуется, однако, что он ничего не получает..., давайте, выясним, что происходит не так! Вот конфигурация. Вы можете увидеть команду aggregate-address на R1 для сети 172.16.0.0 / 16. Жаль ... префиксы не были получены R2. Здесь мы можем проверить две вещи: Проверьте, не блокирует ли distribute-list префиксы, как это мы сделали в предыдущем занятии. Посмотрите, что R1 имеет в своей таблице маршрутизации (Правило: "не могу объявлять то, чего у меня нет!"). Давайте начнем с таблицы маршрутизации R1. Из предыдущих уроков вы знаете, как выглядит distribute-list. Здесь нет ничего, что выглядело бы даже близко к 172.16.0.0 /16. Если мы хотим объявить summary, мы должны сначала поместить что-то в таблицу маршрутизации R1. Рассмотрим различные варианты: R1(config)#interface loopback 0 R1(config-if)#ip address 172.16.0.1 255.255.255.0 R1(config-if)#exit R1(config)#router bgp 1 R1(config-router)#network 172.16.0.0 mask 255.255.255.0 Это вариант 1. Создам интерфейс loopback0 и настроим IP-адрес, который попадает в диапазон команды aggregate-address. Теперь мы видим summary в таблице маршрутизации R2. По умолчанию он все равно будет объявлять другие префиксы. Если вы не хотите этого, вам нужно использовать команду aggregate-address summaryonly! Второй вариант объявления summary: R1(config)#ip route 172.16.0.0 255.255.0.0 null 0 R1(config)#router bgp 1 R1(config-router)#network 172.16.0.0 mask 255.255.0.0 Сначала мы поместим сеть 172.16.0.0 / 16 в таблицу маршрутизации, создав статический маршрут и указав его на интерфейсе null0. Во-вторых, будем использовать команду network для BGP для объявления этой сети. Итог урока: Вы не можете объявлять то, чего у вас нет. Создайте статический маршрут и укажите его на интерфейсе null0, чтобы создать loopback интерфейс с префиксом, который попадает в диапазон суммарных адресов. Урок 3 Следующая проблема. Вы работаете системным администратором в AS 1, и однажды получаете телефонный звонок от системного администратора AS 2, который интересуется у вас, почему вы публикуете сводку для 1.0.0.0 / 8. Вы понятия не имеете, о чем, он говорит, поэтому решаете проверить свой роутер. Это то, что видит системный администратор на R2. Мы видим, что у нас есть сеть 1.0.0.0 / 8 в таблице BGP на R1. Давайте проверим его таблицу маршрутизации. Сеть 1.1.1.0 / 24 настроена на loopback интерфейс, но она находится в таблице BGP как 1.0.0.0 / 8. Это может означать только одну вещь ... суммирование. Беглый взгляд на выводы команды show ip protocols показывает, что автоматическое суммирование включено. Отключим это: R1(config)#router bgp 1 R1(config-router)#no auto-summary Мы отключим его на R1. Теперь мы видим 1.1.1.0 / 24 на R2 ... проблема решена! Итог урока: если вы видите classful сети в своей таблице BGP, возможно, вы включили автоматическое суммирование. Некоторые из проблем, которые были рассмотрены, можно легко решить, просто посмотрев и/или сравнив результаты команды "show run". И это правда, но имейте в виду, что у вас не всегда есть доступ ко ВСЕМ маршрутизаторам в сети, поэтому, возможно, нет способа сравнить конфигурации. Между устройствами, на которых вы пытаетесь устранить неисправности или которые вызывают проблемы, может быть коммутатор или другой маршрутизатор. Использование соответствующих команд show и debug покажет вам, что именно делает ваш маршрутизатор и что он сообщает другим маршрутизаторам. Урок 4 Та же топология, другая проблема. Персонал из AS 2 жалуются, что они ничего не получают от AS 1. Для усложнения проблемы, конфигурация не будет показана. Для начала, мы видим, что R2 не получает никаких префиксов. Так же можем убедиться, что R1 не имеет каких-либо distribute-lists. Мы видим, что R1 действительно имеет сеть 1.1.1.0 /24 в своей таблице маршрутизации, так почему же он не объявляет ее в R2? Давайте посмотрим, может на R1 есть какие-то особенные настройки для своего соседа R2: Будем использовать команду show ip bgp neighbors, чтобы увидеть подробную информацию о R2. Мы видим, что route-map была применена к R2 и называется "NEIGHBORS". Имейте в виду, что помимо distribute-lists мы можем использовать также route-map для фильтрации BGP. Существует только оператор соответствия для prefix-list "PREFIXES". Вот наш нарушитель спокойствия ... он запрещает сеть 1.1.1.0 / 24! R1(config)#router bgp 1 R1(config-router)#no neighbor 192.168.12.2 route-map NEIGHBORS out Удалим route-map И наконец R2 узнал об этом префиксе ... проблема решена! Итог урока: убедитесь, что нет route-map, блокирующих объявление префиксов. BGP иногда может быть очень медленным, особенно когда вы ждете результатов, когда вы работаете на тестовом или лабораторном оборудовании. "Clear ip bgp *" - это хороший способ ускорить его ... просто не делайте этого на маршрутизаторах в производственной сети) Урок 5 Наконец, третий участник выходит на арену, чтобы продемонстрировать новую проблему. R1-это объявляемая сеть 1.1.1.0 / 24, но R3 не изучает эту сеть. Здесь представлены конфигураций: Соседство настроено, R1 - объявляемая сеть 1.1.1.0 / 24. R3#show ip route bgp Мы можем видеть сеть 1.1.1.0 / 24 в таблице маршрутизации R2, но она не отображается на R3. Технически проблем нет. Если вы внимательно посмотрите на конфигурацию BGP всех трех маршрутизаторов, то увидите, что существует только соседство BGP между R1 и R2 и между R2 и R3. Из-за split horizon IBGP R2 не пересылает сеть 1.1.1.0 / 24 в направлении R3. Чтобы это исправить, нам нужно настроить R1 и R3, чтобы они стали соседями. R1(config)#ip route 192.168.23.3 255.255.255.255 192.168.12.2 R3(config)#ip route 192.168.12.1 255.255.255.255 192.168.23.2 Если мы собираемся настроить соседство BGP между R1 и R3, нам нужно убедиться, что они могут достигать друг друга. Мы можем использовать статическую маршрутизацию или IGP ... чтобы упростить задачу, на этот раз мы будем использовать статический маршрут. R1(config)#router bgp 1 R1(config-router)#neighbor 192.168.23.3 remote-as 1 R3(config)#router bgp 1 R3(config-router)#neighbor 192.168.12.1 remote-as 1 Примените правильные настройки команды neighbor BGP. И R3 имеет доступ к сети 1.1.1.0 / 24! Итог урока: соседство по IBGP должно быть полным циклом! Другим решением было бы использование route-reflector или confederation. Урок 6 Очередная проблема. R3 является объявляемой сетью 3.3.3.0 / 24 через EBGP, а R2 устанавливает ее в таблицу маршрутизации. R1, однако, не имеет этой сети в своей таблице маршрутизации. Вот конфигурации: Вот конфигурации. Для простоты мы используем IP-адреса физического интерфейса для настройки соседей BGP. Мы можем проверить, что сеть 3.3.3.0 / 24 находится в таблице маршрутизации R2. R1#show ip route bgp Однако в таблице маршрутизации R1 ничего нет. Первое, что мы должны проверить - это таблицу BGP. Мы видим, что он находится в таблице BGP, и * указывает, что это допустимый маршрут. Однако мы не видим символа >, который указывает лучший путь. По какой-то причине BGP не может установить эту запись в таблице маршрутизации. Внимательно посмотрите на следующий IP-адрес прыжка (192.168.23.3). Доступен ли этот IP-адрес? R1 понятия не имеет, как достичь 192.168.23.3, поэтому наш следующий прыжок недостижим. Есть два способа, как мы можем справиться с этой проблемой: Используйте статический маршрут или IGP, чтобы сделать этот next hop IP-адрес доступным. Измените next hop IP-адрес. Мы изменим IP-адрес следующего прыжка, так как мы достаточно изучили применение статических маршрутов и IGPs. R2(config)#router bgp 1 R2(config-router)#neighbor 192.168.12.1 next-hop-self Эта команда изменит IP-адрес следующего перехода на IP-адрес R2. Теперь мы видим символ >, который указывает, что этот путь был выбран как лучший. IP-адрес следующего перехода теперь 192.168.12.2. Ура! Теперь он есть в таблице маршрутизации. Мы уже закончили? Если наша цель состояла в том, чтобы она отобразилась в таблице маршрутизации, то мы закончили...однако есть еще одна проблема. Наш пинг не удался. R1 и R2 оба имеют сеть 3.3.3.0 / 24 в своей таблице маршрутизации, поэтому мы знаем, что они знают, куда пересылать IP-пакеты. Давайте взглянем на R3: R3 получит IP-пакет с пунктом назначения 3.3.3.3 и источником 192.168.12.1. Из таблицы маршрутизации видно, что она не знает, куда отправлять IP-пакеты, предназначенные для 192.168.12.1. Исправим это: R2(config)#router bgp 1 R2(config-router)#network 192.168.12.0 mask 255.255.255.0 Мы будем объявлять сеть 192.168.12.0 / 24 на R2. Теперь R3 знает, куда отправлять трафик для 192.168.12.0 / 24. Проблема устранена! Итог урока: убедитесь, что IP-адрес следующего перехода доступен, чтобы маршруты могли быть установлены в таблице маршрутизации, и чтобы все необходимые сети были достижимы.
img
Сегодня, как и обещали, расскажем про DECT трубки от компании Gigset S810H и подружим их с базовыми станциями Gigaset N720 IP Pro, о которых мы писали в соответствующей статье . Сразу заметим, что алгоритм регистрации телефонных аппаратов, который будет показан в данной статье, подходит не только для моделей S810H, но и для других трубок от Gigaset, таких как Gigaset R410H PRO, Gigaset SL610H PRO, Gigaset C610 и т.п. Но о регистрации позже, сначала давайте посмотрим на комплект поставки непосредственно S810H: $dbName_ecom = "to-www_ecom"; $GoodID = "3326520713"; mysql_connect($hostname,$username,$password) OR DIE("Не могу создать соединение "); mysql_select_db($dbName_ecom) or die(mysql_error()); $query_ecom = "SELECT `model`, `itemimage1`, `price`, `discount`, `url`, `preview115`, `vendor`, `vendorCode` FROM `items` WHERE itemid = '$GoodID';"; $res_ecom=mysql_query($query_ecom) or die(mysql_error()); $row_ecom = mysql_fetch_array($res_ecom); echo 'Кстати, купить '.$row_ecom['vendor'].' '.$row_ecom['vendorCode'].' можно в нашем магазине Merion Shop по ссылке ниже. С настройкой поможем 🔧 Купить '.$row_ecom['model'].''.number_format(intval($row_ecom['price']) * (1 - (intval($row_ecom['discount'])) / 100), 0, ',', ' ').' ₽'; $dbName = "to-www_02"; mysql_connect($hostname,$username,$password) OR DIE("Не могу создать соединение "); mysql_select_db($dbName) or die(mysql_error()); Обзор Трубка поставляется в фирменной коробке от производителя. Отметим, что коробка не просто открывается, а разрывается по специальному контуру. В комплект поставки производитель включил саму трубку Gigaset S810H, 2 батарейки типа ААА (аккумуляторы), заднюю крышку отсека для батареек, зарядное устройство, внешний блок питания, зажим для крепления на поясе, пластиковую крышку для гнезда проводной гарнитуры и инструкцию по эксплуатации. Вытаскиваем содержимое из коробки Собирается это всё без особых проблем. Для правильного отображения уровня заряда, производитель рекомендует сначала полностью зарядить и разрядить аккумуляторы. Заряжать трубку рекомендуется 8.5 часов, после чего использовать до полного разряда и лишь затем, ставить на подзарядку. Теперь, когда трубка готова к работе, необходимо зарегистрировать её. Мы рассмотрим алгоритм регистрации на базовых станциях Gigaset N720 IP Pro с помощью контроллера Gigaset N720 DM Pro. Перед тем как регистрировать трубку, на контроллере предварительно должна быть сконфигурирована учетная запись провайдера или Вашей АТС, как было показано в данной статье. После того, как между АТС и контроллером установилось активное соединение, на контроллере можно регистрировать трубки. Конфигурация GIGASET S810H DECT Для этого из вэб-консоли контроллера переходим в Settings -> Mobile Devices, открывается такое окно: Жмем Add, открывается следующее окно: Не забудьте выбрать провайдера или АТС, для которой Вы хотите создать абонента. Теперь начинается самое главное – процедура регистрации трубки. Предварительно, трубку необходимо перевести в режим регистрации, для этого нужно взять трубку, открыть настройки и выбрать пункт Registration как показано ниже: Выбрать Register Handset и нажать OK После чего трубка запросит ввести PIN - код Возвращаемся на контроллер, жмём Start registration и получаем тот самый PIN - код, который, за 60 секунд, нужно успеть ввести на трубке. После того как PIN введен, на трубке появляется следующее сообщение, означающее, что трубка находится в поиске базовой станции в режиме регистрации. Через какое то время на контроллере увидим, что трубка зарегистрирована - Mobile Device Registered Заполняем данные абонента в соответствии с данными с АТС. Проверяем регистрацию. Как видно, нам удалось зарегистрировать трубку с номером 310. Теперь можно проводить звонки с помощью этой трубки. Регистрацию других трубок можно продолжить, нажав Add
img
Как системный администратор, вполне вероятно, что вы написали несколько сценариев Bash для автоматизации вашей работы. Например, вы можете запускать сценарии Bash для резервного копирования вашей работы или для регистрации некоторых событий, происходящих на вашем сервере. Скрипты Bash, как и скрипты, написанные на других языках программирования, могут запускаться различными способами. В этой статье мы расскажем о всех способах запуска скрипта Bash в Linux. Подготовка Прежде чем вы сможете запустить ваш скрипт, вам нужно, чтобы ваш скрипт был исполняемым. Чтобы сделать исполняемый скрипт в Linux, используйте команду chmod и присвойте файлу права execute. Вы можете использовать двоичную или символическую запись, чтобы сделать ее исполняемой. $ chmod u+x script $ chmod 744 script Если вы не являетесь владельцем файла, вам необходимо убедиться, что вы принадлежите к правильной группе или что права доступа предоставлены «другой» группе в вашей системе. В некоторых дистрибутивах ваш файл будет выделен другим цветом, когда он исполняемый. Теперь, когда ваш файл исполняемый, давайте посмотрим, как можно легко запустить скрипт Bash. Запустить Bash скрипт из пути к скрипту Чтобы запустить Bash скрипт в Linux, просто укажите полный путь к скрипту и укажите аргументы, которые могут потребоваться для запуска Bash скрипта. $ /path/to/script <arg1> <arg2> ... <argn> В качестве примера, скажем, у вас есть Bash-скрипт, расположенный в вашем домашнем каталоге. Чтобы выполнить этот скрипт, вы можете указать полный путь к скрипту, который вы хотите запустить. # Абсолютный путь $ /home/user/script # Абсолютный путь с аргументами $ /home/user/script "john" "jack" "jim" Кроме того, вы можете указать относительный путь к скрипту Bash, который вы хотите запустить. # Относительный путь $ ./script # Относительный путь с аргументами $ ./script "john" "jack" "jim" Таким образом вы узнали, как легко запустить Bash-скрипт в своей системе. Запустить Bash скрипт, используя bash Чтобы запустить скрипт Bash в вашей системе, вы должны использовать команду bash и указать имя скрипта, который вы хотите выполнить, с необязательными аргументами. $ bash <script> Кроме того, вы можете использовать sh, если в вашем дистрибутиве установлена утилита sh. В качестве примера, скажем, вы хотите запустить скрипт Bash с именем script. Чтобы выполнить его с помощью утилиты bash, вы должны выполнить следующую команду $ bash script This is the output from your script! Выполнить скрипт Bash, используя sh, zsh, dash В зависимости от вашего дистрибутива, в вашей системе могут быть установлены другие утилиты оболочки. Bash - интерпретатор оболочки, установленный по умолчанию, но вы можете захотеть выполнить ваш скрипт с использованием других интерпретаторов. Чтобы проверить, установлен ли интерпретатор оболочки в вашей системе, используйте команду which и укажите нужный интерпретатор. $ which sh /usr/bin/sh $ which dash /usr/bin/dash Когда вы определили интерпретатор оболочки, который хотите использовать, просто вызовите его, чтобы легко запустить скрипт. Запуск скрипта Bash из любого места В некоторых случаях вы можете запускать скрипты Bash, где бы вы ни находились в вашей системе. Чтобы запустить скрипт Bash из любой точки вашей системы, вам нужно добавить свой скрипт в переменную среды PATH. $ export PATH="<path_to_script>:$PATH" Благодаря тому, что путь к скрипту добавлен в PATH, вы можете вызывать его там, где хотите в своей системе. $ script This is the output from script! Кроме того, вы можете изменить переменную среды PATH в вашем файле .bashrc и использовать команду source для обновления вашей текущей среды Bash. $ sudo nano ~/.bashrc export PATH="<path_to_script>:$PATH" Выйдите из файла и используйте команду source для файла bashrc для внесения изменений. $ source ~/.bashrc $ echo $PATH /home/user/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games Отлично! Теперь ваш скрипт может быть запущен из любой точки вашей системы. Запуск Bash скриптов из графического интерфейса Последний способ выполнения Bash скриптов - это использование графического интерфейса, в данном случае интерфейса GNOME. Чтобы запустить ваши скрипты с использованием GNOME, вы должны установить в проводнике Ask what to do для исполняемых файлов. Закройте это окно и дважды щелкните файл скрипта, который вы хотите выполнить. При двойном щелчке вам предлагаются различные варианты: вы можете выбрать запуск скрипта (в терминале или нет) или просто отобразить содержимое файла. В этом случае мы заинтересованы в запуске этого скрипта в терминале, поэтому нажмите на эту опцию. Успех! Ваш скрипт был успешно выполнен Заключение Из этого руководства вы узнали, как легко запускать Bash скрипты в своей системе, указав путь к скрипту или интерпретаторы, доступные на вашем хосте. Вы узнали, что можете сделать это еще проще, добавив путь к скрипту в переменную среды PATH или используя существующие функции в пользовательском интерфейсе GNOME.
ВЕСЕННИЕ СКИДКИ
40%
50%
60%
До конца акции: 30 дней 24 : 59 : 59