ѕодпишитесь на наш Telegram-канал Ѕудьте в курсе последних новостей 👇 😉 ѕодписатьс€
ѕоддержим в трудное врем€ —пециальное предложение на техническую поддержку вашей »“ - инфраструктуры силами наших экспертов ѕодобрать тариф
ѕоставка оборудовани€ √аранти€ и помощь с настройкой. —кидка дл€ наших читателей по промокоду WIKIMERIONET  упить
»нтерфейс статистики Merion Mertics показывает ключевые диаграммы и графики по звонкам, а также историю звонков в формате, который легко поймет менеджер ѕопробовать бесплатно
¬недрение
офисной телефонии
Ўаг на пути к созданию доступных унифицированных коммуникаций в вашей компании ¬недрить
»нтеграци€ с CRM ѕомогаем навести пор€док с данными
и хранить их в единой экосистеме
ѕодключить
»“ Ѕезопасность ”мна€ информационна€ безопасность дл€ вашего бизнеса «аказать
ћерион Ќетворкс

6 минут чтени€

 оманда ip - это сетевой инструмент Linux дл€ системных и сетевых администраторов. IP означает »нтернет-протокол и, как следует из названи€, инструмент используетс€ дл€ настройки сетевых интерфейсов. ¬ старых дистрибутивах Linux использовалась команда ifconfig, котора€ работает аналогично. ќднако ifconfig имеет ограниченный диапазон возможностей по сравнению с командой ip.

¬ этом руководстве мы рассмотрим все важные операции, которые команда ip может выполн€ть в Linux.

 оманда IP в Linux

 ак использовать команду ip

 оманда ip имеет следующий синтаксис:

ip [OPTION] OBJECT {COMMAND | help}

  объектам OBJECT (или подкомандам), которые вы будете использовать чаще всего, относ€тс€:

  1. link (l) - используетс€ дл€ отображени€ и изменени€ сетевых интерфейсов
  2. address (addr/a) - используетс€ дл€ отображени€ и изменени€ адресов протокола (IP, IPv6)
  3. route (r) - используетс€ дл€ отображени€ и изменени€ таблицы маршрутизации
  4. neigh (n) - используетс€ дл€ отображени€ и управлени€ соседними объектами (таблица ARP)

ќни могут использоватьс€ как в полной, так и сокращенной форме.

≈сть много других доступных объектов и команд. „тобы увидеть полный список, введите следующую команду:

ip help
ip help

ƒл€ выполнени€ команд вы можете использовать либо полную, либо сокращенную формы. Ќапример, ip link и ip l будут давать одинаковые результаты.

ѕри настройке сетевых интерфейсов вы должны запускать команды как пользователь root или пользователь с привилеги€ми sudo. ¬ противном случае вы увидите сообщение RTNETLINK answers: Operation not permitted

ѕредупреждение: по умолчанию система не сохран€ет изменени€ перманентно. ѕосле перезапуска Linux-сервера вновь измененное состо€ние будет потер€но. ≈сть два способа сделать ваши настройки посто€нными: добавить команды в сценарий запуска или отредактировать дистрибутивные файлы конфигурации.

”правление и отображение сетевых интерфейсов

¬ы можете получить список всех параметров команды link, набрав:

ip link help
ip link

ѕолучить информацию о сетевом интерфейсе

„тобы увидеть информацию канального уровн€ обо всех доступных устройствах (у которых загружен драйвер), используйте команду:

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 link

ћониторинг и управление IP-адресами

”знайте все команды address, набрав следующее:

ip addr help
ip addr

ћониторинг 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 route

ѕоказать таблицу маршрутизации 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 neigh

ќтображение 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]