По вашему запросу ничего не найдено :(
Убедитесь, что запрос написан правильно, или посмотрите другие
наши статьи:
Команда 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]
Хэй! Знаком ли тебе IP - адрес 172.217.7.206? Наверняка нет. И нам нет. А это один из IP - адресов, на который обращается твой браузер, при вводе youtube.ru в адресной строке. И да, нам определенно не нужно знать наизусть эту информацию, ведь у нас есть DNS - Domain Name System. О нем и поговорим.
Видео: про DNS за 4 минуты
Лучший пример из жизни - контакты на твоем смартфоне. Так, например, за контактом "Инна Тиндер НЕ БРАТЬ" скрываются вполне реальные цифры номер телефона, не так ли? Однако, когда мы ищем контакт, в поиск мы вводим не номер телефона, а имя абонента.
Примерно это же делает DNS сервер - он упрощает нашу жизнь. В альтернативной реальности где роботы захватили мир он не нужен, у них обычно нет проблем с запоминанием чисел.
Рассмотрим процесс полностью
Набрав адрес нашей IT базы знаний wiki.merionet.ru в браузере и нажав enter, вы не сразу попадаете на ДНС сервер.
Сначала ваш девайс проверит кэш браузера или операционной системы. Ведь если вы до этого посещали сайт, то запись о нем останется локально в кэше, чтобы в последующие разы не тратить время на поиск, гоняя туда-сюда пакеты. Если ты частый гость в нашей IT базе знаний, то так оно и работает.
А вот если сайт оказался новым, тогда мы шлем запрос так называемому resolver (распознающему) DNS серверу. Обычно этот сервер находится у нашего интернет провайдера, но мы можем поменять его на другой, например, использовать, известные сервера четыре восьмерки (8.8.8.8) и четыре единицы (1.1.1.1).
Он также делает сопоставление пришедшего имени сайта и его адреса в своем кэше. Если находит, то отвечает нам, а если не находит, то мы начинаем наш поход в поисках адреса и резолвер шлет запрос к корневому root серверу.
Это сервер, который находится на самом верху DNS иерархии. Можно сказать, Шао Кан во вселенной DNS. Важно сказать, что рут сервер не один, их множество.
Но этот сервер нам IP - адреса не скажет. Он лишь скажет нам к какому серверу обратиться дальше. Как регистратура, в поликлинике
Это нужно для разветвления поиска, чтобы не искать IP в общей куче, а уйти в нужную ветку. Находясь в книжном магазине, чтобы найти новый роман стивена кинга, явно нужно искать не в отделе детской литературы или кулинарии, так ведь?
А дальше нам нужно обратиться к нужному серверу верхнего уровня или TLD (top level domain) серверу. Домены верхнего уровня - это то что идет после последней точки .com, .org, .ru, .net. Кстати, существуют Generic Top Level Domain (gTLD), которые не привязаны к стране, например, .edu (образование), .com (коммерческие веб сайты), и ai (организации, связанные с искусственным интеллектом), а также есть Country Code Top Level Domain (ccTLD), которые привязаны к стране: .ru (Россия), .us (США) и .uk (Британия)
Получается: к root приходит запрос "Что скажешь про wiki.merionet.ru, бро?", на что он отвечает: "Спроси у ccTLD сервера, так как домен верхнего уровня это .ru"
Подуставший резолвер теперь идет к ccTLD и спрашивает: "Ну что там дальше то?" А дальше его отправляют на уровень ниже - к серверу авторитативных имен (Authoritative nameserver), который уже скажет нам нужный IP - адрес. Успех! Ну или нет. Он так же может ничего не найти и ответить, что - то в формате "извините, ваш сайт поглотила черная дыра."
Теперь резолвер ответит твоему девайсу, что у сайта wiki.merionet.ru такой-то IP - адрес. А еще резолвер запишет адрес в кэш, чтобы снова не проходить по той же цепочке.
В терминологии DNS существует три типа запросов:
Recursive (рекурсивный) - это запрос формата: "Пришли мне IP-адрес сайта wiki.merionet.ru"
Iterative (итеративный) - это запрос формата: "Пришли мне IP-адрес сайта wiki.merionet.ru либо авторитативный DNS сервер"
Inverse (обратный) - спрашивает все наоборот: "Какое доменное имя у такого-то IP - адреса?"
Теперь когда ты знаешь, как работает DNS, напиши в комментариях к этой статье, сколько доменов содержится в адресе нашей IT базы знаний https://wiki.merionet.ru?
Друг, привет! В статье быстро расскажем о том, как настроить плату Digium TE122 для подключения цифрового Е1 потока. Погнали?
Настройка
Подключаемся к серверу IP – АТС Asterisk через консоль (CLI) и открываем следующий файл для редактирования - /etc/dahdi/system.conf . Указываем там следующие параметры:
span=1,1,0,ccs,hdb3
bchan=1-15,17-31
dchan=16
Сохраняем изменения. Открываем файл /etc/asterisk/chan_dahdi.conf и указываем:
group=0
signalling=pri_cpe
switchtype=euroisdn
context=incoming
channel=1-15,17-31
Теперь посмотрим статус карты и ее ошибки следующей командой:
dahdi_tool
Откроется синий экран (схожий на mc). Внимательно прочитайте статус карты. Далее, перейдем в настройки chan_dahdi.conf. Открываем
nano /etc/asterisk/chan_dahdi.conf и добавляем:
[channels]
language=ru
busydetect=yes
busycount=10
usecallerid=yes
callwaiting=yes
usecallingpres=yes
threewaycalling=yes
transfer=yes
cancallforward=yes
callreturn=yes
echocancel=yes
echocancelwhenbridged=no
echotraining=no
immediate=no
faxdetect=no
rxgain=0.0
txgain=0.0
Открываем в консоли файл /etc/asterisk/chan_dahdi_channels_custom.conf и добавляем туда:
;language=ru
;callwaiting=yes
usecallingpres=yes
;pridialplan=unknown
;prilocaldialplan=unknown
resetinterval = 100000000
facilityenable = yes
usecallerid=yes
cidsignalling=bell
cidstart=ring
hidecallerid=no
sendcalleridafter=1
callwaitingcallerid=yes
callerid = asreceived
restrictcid = no
threewaycalling=yes
;transfer=yes
canpark=yes
cancallforward=yes
callreturn=yes
echocancel=yes
echocancelwhenbridged=yes
;echotraining=800
relaxdtmf=no
;switchtype=national
;signalling=pri_cpe
;group=0
;context=from-pstn
;channels=>1-15,17-31
Выходим и сохраняем параметры. Перезагружаем демона Dahdi:
/etc/init.d/dahdi restart
Дело за малым – поправить диалплан. Открываем файл extensions_custom.conf и добавляем правила. Например:
[test_context]
exten => _X.,1,Dial(Dahdi/g0/${EXTEN},60,tT)
Теперь для того чтобы заработали входящие и исходящие нужно добавить в FreePBX транк g0. Ну и сделать исходящую и входящую маршрутизацию.