По вашему запросу ничего не найдено :(
Убедитесь, что запрос написан правильно, или посмотрите другие наши статьи:
img
Команда ip - это сетевой инструмент Linux для системных и сетевых администраторов. IP означает Интернет-протокол и, как следует из названия, инструмент используется для настройки сетевых интерфейсов. В старых дистрибутивах Linux использовалась команда ifconfig, которая работает аналогично. Однако ifconfig имеет ограниченный диапазон возможностей по сравнению с командой ip. В этом руководстве мы рассмотрим все важные операции, которые команда ip может выполнять в Linux. Как использовать команду ip Команда ip имеет следующий синтаксис: ip [OPTION] OBJECT {COMMAND | help} К объектам OBJECT (или подкомандам), которые вы будете использовать чаще всего, относятся: link (l) - используется для отображения и изменения сетевых интерфейсов address (addr/a) - используется для отображения и изменения адресов протокола (IP, IPv6) route (r) - используется для отображения и изменения таблицы маршрутизации neigh (n) - используется для отображения и управления соседними объектами (таблица ARP) Они могут использоваться как в полной, так и сокращенной форме. Есть много других доступных объектов и команд. Чтобы увидеть полный список, введите следующую команду: ip help Для выполнения команд вы можете использовать либо полную, либо сокращенную формы. Например, ip link и ip l будут давать одинаковые результаты. При настройке сетевых интерфейсов вы должны запускать команды как пользователь root или пользователь с привилегиями sudo. В противном случае вы увидите сообщение RTNETLINK answers: Operation not permitted Предупреждение: по умолчанию система не сохраняет изменения перманентно. После перезапуска Linux-сервера вновь измененное состояние будет потеряно. Есть два способа сделать ваши настройки постоянными: добавить команды в сценарий запуска или отредактировать дистрибутивные файлы конфигурации. Управление и отображение сетевых интерфейсов Вы можете получить список всех параметров команды link, набрав: ip link help Получить информацию о сетевом интерфейсе Чтобы увидеть информацию канального уровня обо всех доступных устройствах (у которых загружен драйвер), используйте команду: ip link show Пример вывода: 1: lo: mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1000 link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 2: eth0: mtu 1500 qdisc fq_codel state UP mode DEFAULT group default qlen 1000 link/ether 12:24:01:8c:67:45 brd ff:ff:ff:ff:ff:ff Если вы хотите, чтобы команда отображала информацию для одного конкретного устройства, введите следующее: ip link show dev [device] Чтобы просмотреть статистику по всем сетевым интерфейсам (такие детали, как переданные или отброшенные пакеты или даже ошибки), используйте: ip -s link Вы также можете увидеть аналогичную информацию для отдельного сетевого интерфейса: ip -s link ls [interface] Если вам нужно больше подробностей, добавьте еще -s в синтаксис: ip -s -s link ls [interface] Чтобы увидеть список только работающих интерфейсов, используйте: ip link ls up Изменить статус сетевого интерфейса Если вы хотите включить сетевой интерфейс, используйте команду: ip link set [interface] up Отключите интерфейс, введя: ip link set [interface] down Команда ip link позволяет вам изменять очередь передачи, ускоряя или замедляя интерфейсы в соответствии с вашими потребностями и аппаратными возможностями. ip link set txqueuelen [number] dev [interface] Вы можете установить MTU (Maximum Transmission Unit) для улучшения производительности сети: ip link set mtu [number] dev [interface] Чтобы узнать все опции команды link, наберите: ip link help Мониторинг и управление IP-адресами Узнайте все команды address, набрав следующее: ip addr help Мониторинг IP-адресов Выведите все устройства с помощью следующей команды: ip addr Чтобы вывести список всех сетевых интерфейсов и связанных IP-адресов, используйте команду: ip addr show Пример вывода: 1: lo: mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000 link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 inet 127.0.0.1/8 scope host lo valid_lft forever preferred_lft forever 2: eth0: mtu 1500 qdisc fq_codel state UP group default qlen 1000 link/ether 51:55:07:8a:62:44 brd ff:ff:ff:ff:ff:ff inet 192.168.120.24/24 brd 192.168.120.255 scope global dynamic eth0 valid_lft 2900sec preferred_lft 2900sec inet6 fe80::5054:ff:fe8c:6244/64 scope link valid_lft forever preferred_lft forever Вы также можете увидеть информацию об отдельной сети: ip addr show dev [interface] Чтобы получить список всех IPv4 адресов, используйте: ip -4 addr Чтобы получить список всех IPv6 адресов, используйте: ip -6 addr Как добавить IP-адрес в Linux Добавьте IP-адрес в интерфейс с помощью команды: ip addr add [ip_address] dev [interface] Если указанный интерфейс не существует, отобразится сообщение: Cannot find device [interface] Чтобы добавить два адреса на один интерфейс также используйте эту команду: ip address add 192.168.1.41/24 dev eth0 ip address add 192.168.1.40/24 dev eth0 Если вам нужно добавить широковещательный (broadcast) адрес для интерфейса, используйте команду: ip addr add brd [ip_address] dev [interface] Чтобы удалить IP-адрес из интерфейса, выполните следующие действия. ip addr del [ip_address] dev [interface] Управление и отображение таблицы IP-маршрутизации Просмотрите полный список команд ip routeс помощью следующей команды: ip route help Показать таблицу маршрутизации IP Для просмотра всех записей в таблице маршрутизации используйте одну из следующих команд: ip route ip route list Пример вывода: default via 192.168.1.1 dev eth0 proto dhcp src 192.168.1.241 metric 100 192.168.1.0/24 dev eth0 proto kernel scope link src 192.168.1.241 192.168.1.1 dev eth0 proto dhcp scope link src 192.168.1.241 metric 100 С помощью команд, приведенных выше, выходные данные отображают все записи маршрута в ядре. Если вам нужно сузить поиск, добавьте объект SELECTOR: ip route list SELECTOR Чтобы просмотреть маршрутизацию для отдельной сети, используйте следующий синтаксис: ip route list [ip_address] Изменить таблицу IP-маршрутизации Чтобы добавить новую запись в таблицу маршрутизации, введите команду: ip route add [ip_address] dev [interface] Или вы можете добавить новый маршрут через шлюз, набрав: ip route add [ip_address] via [gateway_IP] Также команда позволяет добавить маршрут для всех адресов через локальный шлюз, добавив параметр default: ip route add default [ip_address] dev [device] ip route add default [network/mask] via [gateway_IP] Чтобы удалить существующую запись в таблице маршрутизации, используйте команды: ip route del [ip_address] ip route del default ip route del [ip_address] dev [interface] Отображение и изменение IP-записей соседей При помощи команды ip neigh можно манипулировать таблицами ARP (Address Resolution Protocol). Это аналог команды arp Для получения полного списка всех параметров команды neigh используйте: ip neigh help Отображение IP-адресов соседей Чтобы отобразить таблицы соседей, используйте следующую команду: ip neigh show Выходные данные показывают MAC-адреса устройств, которые являются частью системы, и их состояние. Состояние устройства может быть: REACHABLE - означает валидную, достижимую запись до истечения таймаута. PERMANENT - означает постоянную запись, которую может удалить только администратор STALE - означает действительную, но недоступную запись DELAY - означает, что ядро все еще ожидает проверки из устаревшей записи Изменить IP-записи соседей Добавьте новую запись в таблицу с помощью команды: ip neigh add [ip_address] dev [interface] Или удалите существующую запись ARP: ip neigh del [ip_address] dev [interface]
img
Сегодня хотим рассказать про любопытный параметр, который связан с настройкой RTP – потоков в IP – АТС Asterisk. Если Вас не устраивает сброс вызова после 5 минут удержания (режим hold) или сброс через 30 секунд при полном отсутствии RTP/RTCP – у нас есть решение. Настройку осуществим с помощью графического интерфейса FreePBX 13. Решение проблемы Поведение, о котором мы рассказали выше, происходит из – за двух параметров: RTP Timeout и RTP Hold Timeout. По умолчанию, первый равен 30, а второй равен 300 (в секундах). Первый параметр полезен: например, если у вас есть телефонный аппарат, который подключен за NAT, и во время конференции он «отвалится» (пропадет интернет соединение, потеря питания и так далее), то через 30 секунд его сессия будет терминирована автоматически. Второй параметр отвечает за терминирование вызова, который поставлен на удержание. Предположим, что «забывчивый» оператор поставил клиента на удержание на одной из линий и забыл про него. Телефон клиента не дал корректный сигнал отбоя и сессия подвисла. Это занимает соответствующие DSP/CPU ресурсы сервера, и имеет эффект накопления, по итогам которого, могут начаться перебои в связи. Данные параметры можно легко «подкрутить». Переходим в раздел Settings → Asterisk SIP Settings. Во вкладке Chan SIP Settings находим сегмент настроек под названием MEDIA & RTP Settings и правим указанные ниже на скриншоте параметры, согласно своим требованиям:
img
Привет, сегодня расскажем что такое база данных и SQL. У современных баз данных куча нюансов - погнали разбираться. Представь - собираешь ты деньги на подарок корешу, и записываешь на бумажке, кто сколько скинул. Табличка с денежками организована, разделена по именам и сумме долга, и имеет удобную структуру - ну вот оно, это и есть база данных! Ага, теперь, перемещаемся в цифровое пространство и заводим целый эксель файл для этого дела. Стало удобнее, можно редактировать, сортировать и даже данные удалять! Круто! Но достаточно ли этого для роста этой базы данных? Нет. Со временем данных становится так много, что админам приходится связывать их друг с другом, а тут одним эксель файлом уже не обойтись. Представим, решили вы сделать свой аналог ютуба, как будете хранить инфу о пользователях? Список юзеров, там, каналы, кто на что подписан, лайки и вот это все. Сложить это все в одну таблицу? Будет неудобно и медленно работать. Очевидно, надо разделить сущности на несколько таблиц - юзеры, каналы и видосы: Теперь свяжем данные между собой и добавим информацию о том, кто создал канал, и на каком канале залили видео. Ага, получились связанные таблицы. Связанные, от слова связь. А связь, это по-английски relation. А в айти тусовке они так и называются - реляционные базы данных, и это один самых распространенных типов баз данных. Еще есть нереляционные базы данных, о них подробнее можно прочитать в этой статье про NoSQL. Уф, ну теперь с данными стало гораздо удобнее работать, и мы избежали большой таблицы с повторяющимися строчками, разбив все на несколько табличек. Такой процесс еще называется нормализацией, когда мы избавляемся от избыточных данных. Ну и как раз для этого мы ввели в каждой таблице специальное поле - ID, которое идентифицирует каждую запись. Этот айди называется Primary Key, он же “первичный ключ”. А в таблице которая будет на него ссылаться, он будет называться Foreign Key, или по-русски “внешний ключ”. Нырнем в детали и поговорим про типы связей между таблицами. Первый тип называется “Один-ко-многим” или “многие-к-одному” (One-to-Many или Many-to-One). В нашем примере, у каждого видео может быть только один канал, где оно выложено, но на одном канале может быть много видео, поэтому в двух последних строках ID канала у нас повторяется, верно? Отношения «один-ко-многим» также можно рассматривать как отношения «многие-к-одному», в зависимости от того, с какой стороны вы на это смотрите. Второй тип связей называется “один-к-одному” (One-to-One) - классические табличные отношения. Вообще, это редко используемый тип связи, обычно его делают для безопасности. Это как если на нашем аналоге ютуба, мы разрешили бы создавать только один канал одному пользователю и в таблице с каналами ID создателя не могло повторяться. Такое себе, согласен? В таком случае вообще можно было бы обойтись и одной таблицей. Ну и третий тип связей, это “многие ко многим” (Many-to-many). Это когда у нас появляется промежуточная таблица связей, которая как бы соединяет два отношения “один ко многим”, которые мы обсудили в начале разбора типов связей. Давайте сделаем таблицу с лайками балалайками, где будем хранить ID пользователей и ID видео, к которым они поставили лайк: А вот так они связан: каждый пользователь может поставить лайк каждому видео. Теперь вопрос - а где все это хранить? Не в экселе же. И тут на сцену выходит термин СУБД, она же система управления базами данных - это программа, которая позволяет создавать, редактировать и администрировать реляционную базу. Ну и для управления всей этой петрушкой используется язык структурированных запросов, SQL (Structured Query Language) эскюэль или сиквел, как иногда его называют за рубежом. Он очень простой и понятный, вот смотри - чтобы найти названия всех видео с одного канала, нам нужно выполнить следующий запрос: SELECT name FROM videos WHERE channel_id = 201 То есть мы буквально говорим: выбери (SELECT) имена из (FROM) таблицы видео, где (WHERE) айдишник (ID) канала равен 201. Если вы хотите взять данные из нескольких таблиц и объединить результат, то нужно использовать в запрос параметр JOIN (от английского соединить). Вот такая упрощающая жизнь админам аналогия с разговорным языком. Так, SQL конечно позволяет добавлять, удалять и изменять данные и сами таблицы. Но важно не забывать про схему базы данных (Database schema), которая служит для описания структуры таблицы, ее полей и ограничений. Прикол в том, что если вам потребуется добавить или убрать столбец в таблице, то это изменение коснется вообще всех данных в таблице, таким образом если мы добавляем новый столбец, то он теперь будет присутствовать в каждой строке. Окей, а для чего вообще нужны ограничения? Для целостности твоих данных. Помнишь мы рассказали про первичный и внешний ключ? Так вот, благодаря им мы можем удостовериться, что в таблицу не попадет запись, которая ссылается на несуществующий айдишник. Или различные ограничения полей, которые не дадут записать дублирующие или пустые данные в нашу базу (Not NULL и Unique). И еще: транзакции. Эта штука, которая позволяет как бы склеить несколько SQL запросов в один. Ну вот представь такую задачку: вставить данные в первую таблицу, а во второй указать ID вставленной записи. Если ты делаешь это без использования транзакций, а во время второго этапа у тебя отвалится интернет, то первая запись попадет в базу, а вторая нет. Ага, появляется интернет, и ты с улыбкой на лице идешь снова выполнить эти запросы, только на этот раз получишь ошибку, что такая запись уже есть, ибо первая то уже в базе! А в случае использования транзакций, при получении ошибки, мы откатимся до того момента, который был до начала транзакции. А еще все эти радости помогают реляционным БД (базам данных) соответствовать так называемым требованиям ACID, которые нужны для сохранности данных - это очень важно в банковской отрасли, или любой другой, где целостность и сохранность данных супер важны. Давай разберемся с аббревиатурой: Atomicity — атомарность, или же проще говоря, непрерывность: это как раз про транзакции, которые мы обсудили только что. Либо операция выполняется целиком, либо никак. Consistency — согласованность: данные, записываемые в таблицу должны соответствовать всем выставленным правилам и ограничениям, помнишь, мы говорили про первичный и внешний ключи, а также про уникальность? Isolation — изолированность: если вы гоняете тонну транзакций одновременно, они не должны пересекаться и влиять друг на друга. Это очень важно для высоконагруженных баз Durability — надежность: если мы получили подтверждение, что транзакция выполнена, то значит наши данные в сохранности, даже если после этого произошел сбой. Ну и в качестве примеров таких баз данных назовем: Microsoft SQL Server, Oracle Database, MySQL, MariaDB и PostgreSQL.
ВЕСЕННИЕ СКИДКИ
40%
50%
60%
До конца акции: 30 дней 24 : 59 : 59