По вашему запросу ничего не найдено :(
Убедитесь, что запрос написан правильно, или посмотрите другие наши статьи:
img
Почитатей первую часть статьи про траблшутинг NAT/PAT на Cisco. В этой части мы рассмотрим проблемы DHCP. Урок 1 Вот новый сценарий, позвольте мне сначала объяснить его: Зеленая зона - это наша локальная сеть, так что это наш NAT inside. Красная область - это Интернет, поэтому это наш NAT outside. Предполагается, что хост - это компьютер с шлюзом по умолчанию 192.168.12.2. Наш маршрутизатор NAT подключен к маршрутизатору ISP. Маршрутизатор ISP назначил нам подсеть 172.16.1.0 / 24, которую мы собираемся использовать для трансляции NAT. BGP был настроен между NAT и маршрутизатором ISP для доступа к сети 192.168.34.0/24. Предполагается, что веб-сервер прослушивает TCP-порт 80 и использует 192.168.34.3 в качестве шлюза по умолчанию. Однако пользователи нашей локальной сети жалуются на то, что не могут подключиться к веб-серверу. Давайте проверим нашу конфигурацию NAT: Мы можем убедиться, что трансляция работает: Inside local IP-адрес нашего хоста. Inside global находится один из IP-адресов из нашей подсети 172.16.1.0/24. Outside local and global IP-адрес нашего веб-сервера Эта трансляция выглядит хорошо, потому что все IP-адреса верные. Мы видим, что маршрутизатор NAT научился достигать сети 192.168.34.0 / 24 через BGP. Наш NAT-маршрутизатор может подключаться к веб-серверу, поэтому проблема с подключением отсутствует. Однако следует помнить одну важную вещь. Пакет IP, который производит маршрутизатор NAT, выглядит следующим образом: IP-адрес получателя является нашим веб-сервером, и с ним нет проблем. Исходный IP-адрес - 192.168.23.2, и поскольку мы получили ответ, мы знаем, что маршрутизатор ISP знает, как достичь подсети 192.168.23.0 / 24. Это важно, поскольку подсеть 192.168.23.0 / 24 напрямую подключена к маршрутизатору ISP. Однако, если мы отправляем эхо-запрос с хост-устройства, он преобразуется из-за NAT в IP-адрес в подсети 172.16.1.0/24. Пакет IP будет выглядеть так: Вот что происходит, когда этот IP-пакет покидает маршрутизатор NAT и отправляется маршрутизатору ISP: Маршрутизатор ISP получает IP-пакет и проверяет свою таблицу маршрутизации, знает ли он, куда отправлять трафик для сети 192.168.34.0 / 24. Сеть 192.168.34.0/24 напрямую подключена к маршрутизатору ISP, поэтому она выполняет запрос ARP для MAC-адреса веб-сервера, получает ответ ARP и может пересылать IP-пакет на веб-сервер. Веб-сервер хочет ответить, и он создает новый IP-пакет с IP-адресом назначения 172.16.1. Поскольку веб-сервер имеет маршрутизатор ISP в качестве шлюза по умолчанию, он отправит IP-пакет маршрутизатору ISP. Маршрутизатор ISP должен выполнить поиск в таблице маршрутизации, чтобы узнать, знает ли он, где находится сеть 172.16.1.0 / 24. Маршрутизатор ISP не знает, где находится 172.16.1.0 / 24, и отбросит IP-пакет. Если бы это была настоящая производственная сеть, у нас не было бы доступа к маршрутизатору ISP. Так как это эмуляция сети и устройств, к которой у нас есть доступ, поэтому давайте сделаем отладку! ISP#debug ip packet 1 IP packet debugging is on for access list 1 ISP#conf t ISP(config)#access-list 1 permit host 192.168.34.4 Сначала включим отладку IP-пакетов и используем список доступа, который соответствует IP-адресу веб-сервера. Следующим шагом является то, что мы будем генерировать некоторый трафик с хост-устройства. Это то, что будет производить маршрутизатор ISP. Он говорит нам, что понятия не имеет, куда отправить IP-пакет для 172.16.1.1 to...it является не маршрутизируемым и будет отброшен. Так как же мы решим эту проблему? ISP-маршрутизатор требует сеть 172.16.1.0 /24 в таблице маршрутизации. Поскольку мы уже запустили BGP мы можем использовать его для объявления этой сети с нашего маршрутизатора NAT: NAT(config)#ip route 172.16.1.0 255.255.255.0 null 0 NAT(config)#router bgp 1 NAT(config-router)#network 172.16.1.0 mask 255.255.255.0 Сначала мы создадим статическое правило, которое указывает сеть 172.16.1.0 / 24 на интерфейс null0. Мы делаю это потому, что невозможно объявлять то, чего у тебя нет. Следующий шаг-объявить эту сеть в BGP. Пинг прошел проблема решена! Итог урока: убедитесь, что ваши маршрутизаторы знают, как связаться с translated сетями. Урок 2 Начнем с простого сценария. Маршрутизатор с левой стороны - это наш DHCP-клиент, а маршрутизатор с правой стороны - это наш DHCP-сервер. Клиент, однако, не получает никаких IP-адресов ... что может быть не так? Сначала мы проверим, включен ли интерфейс на клиенте DHCP и настроен ли он для DHCP. И это действительно так. Мы также должны убедиться, что интерфейс на сервере DHCP включен/включен и что у него есть IP-адрес. Пока все выглядит хорошо... Если мы хотим быть абсолютно уверенным, что проблема не в клиенте, нам надо применить отладку командой debug dhcp detail, чтобы посмотреть, отправляет ли клиент DHCP сообщения об обнаружении DHCP. Мы видим некоторые отладочные выходные данные, как показано выше. Это говорит о том, что наш DHCP-клиент отправляет сообщения DHCP Discover. Клиент, скорее всего, не является источником этой проблемы. DHCPServer#show ip dhcp pool Мы будем использовать команду show ip dhcp pool, чтобы проверить, существует ли пул DHCP. Вы видите, что у нас есть пул DHCP с именем "MYPOOL", и он настроен для подсети 192.168.12.0 / 24. Пока все выглядит хорошо. Мы можем использовать команду show ip dhcp server statistics, чтобы узнать, что делает сервер DHCP. Вы видите, что он ничего не делает ... что это может значить? Эта команда не часто применяется. show ip sockets показывает нам, на каких портах роутер слушает. Как вы видите, он не прослушивает никакие порты ... если мы не видим здесь порт 67 (DHCP), это означает, что служба DHCP отключена. DHCPServer(config)#service dhcp Включим сервис. Так-то лучше! Теперь мы видим, что маршрутизатор прослушивает порт 67, это означает, что служба DHCP активна. Как только служба DHCP будет запущена, вы увидите, что клиент получает IP-адрес через DHCP ... проблема решена! Итог урока: если все в порядке, убедитесь, что служба DHCP работает. Урок 3 Взгляните на сценарий выше. У нас есть 3 маршрутизатора; маршрутизатор на левой стороне настроен как DHCP-клиент для своего интерфейса FastEthernet0/0. Маршрутизатор с правой стороны настроен как DHCP-сервер. Помните, что DHCP-сообщения об обнаружении от клиентов транслируются, а не пересылаются маршрутизаторами. Вот почему нам требуется команда ip helper на маршрутизаторе в середине, именуемым как relay. Проблема в этом сценарии заключается в том, что клиент не получает IP-адреса через DHCP Сначала мы проверим, что интерфейс настроен для DHCP. Мы определим это с помощью команды show ip interface brief. DHCPClient(config)#interface fastEthernet 0/0 DHCPClient(config-if)#shutdown DHCPClient(config-if)#no shutdown Мы будем переводить интерфейс в режимы up и down для проверки, будет ли он отправлять сообщение DHCP Discover. Мы видим, что сообщения DHCP Discover принимаются на DHCP-сервере. Это означает, что маршрутизатор в середине был настроен с IP helper, в противном случае мы даже не получили бы эти сообщения. Сообщения с предложениями DHCP отправлены, но мы не видим сообщений DHCPACK (Acknowledgment). Это дает нам понять, что что-то происходит... DHCPServer#debug ip dhcp server packet Включим отладку, чтобы увидеть, что происходит. Мы видим, что наш DHCP-сервер пытается достичь IP-адреса 192.168.12.2, это интерфейс FastEthernet0/0 нашего маршрутизатора в середине. Знает ли DHCP-сервер, как добраться до этого IP-адреса? Как вы можете видеть, его нет в таблице маршрутизации, это означает, что IP-пакеты с назначением 192.168.12.2 будут отброшены. Чтобы доказать это, мы можем включить отладку Здесь видим, что IP-адрес назначения 192.168.12.2 не является маршрутизируемым, и в результате IP-пакет будет отброшен. Давайте исправим эту проблему. DHCPServer(config)#ip route 192.168.12.0 255.255.255.0 192.168.23.2 Мы добавим этот статический маршрут, чтобы исправить нашу проблему с подключением. Через некоторое время вы должны увидеть, что клиент получает IP-адрес через DHCP. Если вы оставили "debug ip dhcp server packet" включенным, вы увидите весь процесс DHCP: DHCP Discover DHCP Offer DHCP Request DHCP ACK Вот и все ... проблема решена! Итог урока: если вы используете IP helper, убедитесь, что DHCP-сервер знает, как связаться с подсетью, в которой находится клиент. 3 часть статьи про FHRP траблшутинг на Cisco доступна по ссылке.
img
IP – АТС Asterisk – сложная система обработки телефонных вызовов, состоящая из различных драйверов и модулей. Зачастую системные администраторы сталкиваются с неисправностью того или иного функционала: не работает входящая/исходящая связь, односторонняя слышимость, проблемы с внутренними номерами и так далее. Чтобы решить данные проблемы, надо понять их суть – посмотреть в журнал (лог – файл) Asterisk и узнать, что же происходит на самом деле. О том, как правильно собрать логи, их глубина и параметры, а также про сбор сетевого дампа расскажем в этой статье. Настройка логирования Приступаем к настройке. Для этого, нам необходим посмотреть содержимое файла /etc/asterisk/logger.conf. Давайте откроем его: [root@asterisk ~]# cat /etc/asterisk/logger.conf [general] #include logger_general_additional.conf #include logger_general_custom.conf [logfiles] #include logger_logfiles_additional.conf #include logger_logfiles_custom.conf Как видим, в данный файл включен «кастомная» настройка – файл logger_logfiles_custom.conf . В нем мы и будем производить необходимые настройки. Допустим, мы хотим записывать в файл logs_ echo date("Ymd"); основные события. Для этого, откроем для редактирования файл и добавим в него следующую запись: [root@asterisk ~]# vim logger_logfiles_custom.conf logs_ echo date("Ymd"); => notice,warning,error,debug,verbose,dtmf Сохраняем изменения нажатием :x!. Начиная с 13 версии Asterisk, существует возможность создавать задачи на логирования прямо из консоли. Для этого существует команда logger add channel . Например: logger add channel logs_ echo date("Ymd"); notice,warning,error,debug,verbose,dtmf Логирование будет остановлено при следующем рестарте Asterisk. Глубина записи логов В Asterisk можно задавать глубину логирования параметром verbose и debug. Первый режим более информативен для администратора, когда необходимо оперативно понять причину неисправности, тогда как второй режим более полезен для более глубоко анализа. Глубина задается от 1 до 10, где 10 – максимальный уровень информативности: asterisk*CLI> core set verbose 3 asterisk*CLI> core set debug 3 После этого, необходимо перезагрузить модуль логирования: asterisk*CLI> module reload logger Дебаг на уровне каналов В Asterisk можно производить дебаг на уровне отдельных драйверов. Например, если вы хотите отладить подключения по протоколу SIP – своя команда, по IAX – другая. Ниже представлен список: Драйвер Команда отладки SIP (версия вышел 1.6) sip set debug on SIP (версия 1.4) sip set debug PJSIP pjsip set logger on Запись CDR cdr set debug on IAX2 (версия вышел 1.6) iax2 set debug on IAX2 (версия 1.4) iax2 set debug Остановить логирование Когда отладка закончена, необходимо вернуть все в первоначальный вид. Отключаем дополнительный дебаг: asterisk*CLI> core set verbose 0 asterisk*CLI> core set debug 0 Чтобы выключить дебаг на конкретных каналах, даем команду вида: asterisk*CLI> sip set debug on asterisk*CLI> iax2 set debug off Далее, в файле /etc/asterisk/logger.conf закомментируйте или удалите добавленную строчку. После этого перегружаем модуль логирования: asterisk*CLI> module reload logger Дебаг Asterisk в файл Прямо из консоли можно добавлять дебаг в файл. Для этого, его необходимо первоначально создать. Например: [root@asterisk ~]# touch /home/asterisk_cli.txt Далее, вызываем консоль сервера IP – АТС Asterisk следующим способом: [root@asterisk ~]# asterisk -rvvvv | tee /home/asterisk_cli.txt В открывшейся консоли дайте одну из перечисленных команд дебага, например, sip set debug on. Весь вывод будет сохранен в указанном файле. По окончанию укажите в консоли sip set debug off и quit. Сетевой дамп Asterisk для анализа в Wireshark Простейшим способом снять сетевой дамп является утилита tcpdump. Чтобы ей воспользуйтесь командой: [root@asterisk ~]# tcpdump -s 0 -w /home/dump.cap Затем, после снятия необходимого дампа, Вы сможете сохранить файл dump.cap в директории /home себе на компьютер, для последующего анализа. Помимо этого, в команде есть возможность дать дополнительные ключи, например -i eth0 - указание интерфейса, с которого необходимо снять дамп, а port 5060 - указать порт, на который приходят пакеты.
img
Если вам нужно заставить curl игнорировать ошибки сертификата, убедитесь, что вы знаете о последствиях небезопасных соединений и передач SSL. Вам следует практиковаться в пропуске проверки сертификатов только в целях разработки. В этом руководстве вы узнаете, как заставить curl игнорировать ошибки сертификата. Заставить curl игнорировать ошибки SSL Основной синтаксис игнорирования ошибок сертификата с помощью команды curl: curl --insecure [URL] В качестве альтернативы вы можете использовать: curl -k [URL] Веб-сайт считается небезопасным, если у него истек срок действия, он неправильно настроен или не имеет сертификата SSL, обеспечивающего безопасное соединение. Когда вы пытаетесь использовать curl для подключения к такому веб-сайту, вывод выдает ошибку. Примечание. Параметры --insecure (-k) аналогичны команде wget --no-check-certificate, используемой для предотвращения проверки центрами сертификации сертификата сервера. Например, если вы запустите команду: curl myawesomewebsite.com Вывод должен отображать содержимое URL-адреса. Однако, поскольку этот веб-сайт имеет недействительный сертификат SSL, он показывает ошибку, как в примере ниже. curl: (60) SSL: no alternative certificate subject name matches target host name 'unixtutorial.test' Это означает, что «сертификат узла не может быть аутентифицирован с помощью известных сертификатов CA». Чтобы обойти это ограничение, вы можете использовать параметр --insecure (или -k), разрешающий небезопасные соединения с сервером при использовании SSL. Следовательно, вы должны запустить: curl -k myawesomewebsite.com Итоги Прочитав эту статью, вы должны знать, как заставить curl игнорировать ошибки сертификата. Хотя это делается просто путем добавления опции -k, не указывайте curl игнорировать ошибки SSL, если это не требуется для целей разработки.
ВЕСЕННИЕ СКИДКИ
40%
50%
60%
До конца акции: 30 дней 24 : 59 : 59