Гид по технологиям

Управление сетями и IP в Linux с помощью команды ip

6 min read Linux Обновлено 23 Dec 2025
Команда ip в Linux: управление IP и сетью
Команда ip в Linux: управление IP и сетью

ethernet cables plugged

Краткое определение: команда ip — часть пакета iproute2, предназначенная для управления сетевыми интерфейсами и маршрутами в ядре Linux.

Зачем использовать ip вместо старых утилит

Команда ip заменяет устаревший ifconfig/route/arp. Она предоставляет единый интерфейс для работы с интерфейсами, адресами, маршрутами и таблицами соседей (ARP), поддерживает сложные конфигурации (включая policy routing) и лучше отражает современную сетевую модель Linux.

Важно: на современных дистрибутивах ifconfig может отсутствовать по умолчанию; ip обычно предустановлен.

Найти IP-адрес в Linux

Чтобы просмотреть IP-адреса всех интерфейсов, используйте одну из этих форм команд:

ip address
ip addr
ip a

Вывод показывает все интерфейсы (lo — loopback, и физические/виртуальные интерфейсы). Включена информация по уровням:

  • Уровень 1: состояние физической связи, MTU, qlen и статус (UP/DOWN).
  • Уровень 2: MAC-адрес и параметры канального уровня.
  • Уровень 3: IP-адреса (IPv4/IPv6), префиксы и метки (dynamic/static).

ip addr command

Для краткого вывода используйте флаг –brief:

ip --brief address show

brief display of IP addresses

Только IPv4:

ip -4 addr

IP адрес конкретного интерфейса:

ip address show dev ens33

Совет: если вы работаете на сервере без GUI, комбинируйте ip с grep для быстрого поиска:

ip -4 addr show | grep -w inet -A2

Просмотр и изменение MAC-адреса

Просмотреть MAC-адрес всех интерфейсов:

ip --brief link show

ip link show brief output

Просмотреть MAC конкретного интерфейса:

ip --brief link show dev ens33

Изменение MAC (примерный рабочий порядок):

  1. Опустить интерфейс.
sudo ip link set dev ens33 down
  1. Установить новый MAC:
sudo ip link set dev ens33 address 02:01:02:03:04:08
  1. Поднять интерфейс.
sudo ip link set dev ens33 up

change mac address

Важно: некоторые аппаратные драйверы запрещают изменение MAC; в таких случаях команда завершится ошибкой. Также изменение MAC влияет на DHCP-динамику — сервер может выдать новый адрес.

Статистика сетевых интерфейсов

Показать статистику по всем интерфейсам:

ip -s link

interface statistcis

Показать статистику по конкретному интерфейсу:

ip -s link show dev ens33

Вывод содержит: переданные/полученные байты и пакеты, ошибки, dropped, multicast и прочие счётчики. Эти данные полезны при поиске проблем с качеством канала и ошибок драйвера.

Управление свойствами линка

Поднять интерфейс:

sudo ip link set ens33 up

Опустить интерфейс:

sudo ip link set ens33 down

Изменить MTU:

sudo ip link set mtu 8000 dev ens33

set mtu of interface

Примечание по MTU: увеличение MTU может повысить производительность для больших payload’ов (например, NFS, iSCSI), но требует поддержки на всем пути передачи.

Добавление и удаление IP-адресов

Добавить адрес к интерфейсу:

ip addr add 192.168.42.140/24 dev ens33

add IP address to interface

Удалить адрес:

ip addr del 192.168.42.140/24 dev ens33

Замечание: команды ip добавляют адрес в runtime-конфигурацию ядра. Чтобы изменения сохранились после перезагрузки, нужно прописать их в конфигурации сетевого менеджера (NetworkManager, systemd-networkd, /etc/network/interfaces и т.д.).

Критерии приёмки:

  • Интерфейс имеет ожидаемый IP (ip addr).
  • Шлюз доступен (ping, ip route get).
  • Сетевые службы работают после изменения.

Просмотр таблицы маршрутизации

Показать таблицу маршрутов:

ip route

ip route command

Строка маршрута содержит: сеть назначения, next hop (шлюз), интерфейс и метрику. Поле proto показывает, как маршрут был установлен (dhcp, kernel, static).

APIPA (169.254.0.0/16) — автоконфигурация при отсутствии DHCP. Хосты с адресами APIPA видят друг друга в локальной сети, но не могут выйти в роутер.

ip route get 8.8.8.8

Команда показывает, через какой интерфейс и шлюз пойдёт трафик к указанному адресу.

Изменение маршрутов

Добавить маршрут к сети через шлюз:

sudo ip route add 192.168.20.0/24 via 192.168.10.16

Добавить маршрут по умолчанию:

sudo ip route add default via 192.168.10.1 dev ens33

Удалить маршрут:

sudo ip route delete 192.168.20.0/24 via 192.168.10.16

Проверка: после добавления маршрута выполните traceroute или curl для целевого адреса, чтобы убедиться в корректном следовании пакетов.

ip route command

Управление таблицей соседей (ARP)

Посмотреть ARP/neighbor-таблицу:

ip neigh show

ip neighbour command

Добавить статическую запись:

sudo ip neigh add 192.168.10.50 lladdr aa:bb:cc:dd:ee:ff dev ens33

Удалить запись:

sudo ip neigh del 192.168.10.50 dev ens33

Статические записи полезны при проблемах с ARP-spoofing или когда нужно принудительно назначить MAC для сервиса.

Подсветка вывода

Чтобы добавить цвета в вывод и быстрее различать поля, используйте:

ip -c a

add color to ip command

Цвета помогают быстро идентифицировать UP/DOWN, адреса и типы интерфейсов в интерактивной работе.

Быстрый набор команд (cheat sheet)

ЗадачаКоманда
Показать все адресаip a
Краткий список интерфейсовip -br a
Показать маршрутыip route
Добавить IPip addr add 192.168.1.10/24 dev eth0
Удалить IPip addr del 192.168.1.10/24 dev eth0
Поднять интерфейсsudo ip link set eth0 up
Опустить интерфейсsudo ip link set eth0 down
Изменить MACsudo ip link set dev eth0 address 02:01:02:03:04:05
Показать ARPip neigh show
Добавить статический ARPsudo ip neigh add 192.168.1.5 lladdr aa:bb:cc:dd:ee:ff dev eth0

Типичные ошибки и как их избежать

  • Изменил IP, потерял доступ по SSH — всегда имей второй канал управления (консоль, KVM, физический доступ) или настройте временный второй IP перед изменением основного.
  • Изменил MTU и потерял связь с некоторыми хостами — верните MTU прежним значением и проверьте PMTUD (Path MTU Discovery).
  • Добавил маршрут без указания dev — система может выбрать неверный интерфейс; лучше указывать dev явно.
  • Ожидал сохранения после reboot — ip команды изменяют runtime; сохраняйте конфигурацию в системном сетевом менеджере.

Альтернативные инструменты и когда их использовать

  • ifconfig/route/arp — устарел, оставлен для совместимости.
  • nmcli — удобен при работе с NetworkManager и для сохранения конфигураций.
  • ss/netstat — для просмотра сокетов и связей.
  • iptables/nftables — управление фильтрацией трафика (не для просмотра адресов).

Рекомендуемая модель: используйте ip для runtime-диагностики и nmcli/systemd-networkd для декларативной (постоянной) конфигурации.

Ментальные модели и эвристики

  • Разделяйте уровни: link (L2) — ip (L3) — route (L3+). Изменения на одном уровне могут влиять на другие.
  • Всегда проверяйте источник (proto) маршрута — это подскажет, откуда он появился (dhcp/kernel/static).
  • Префикс /32 означает один хост, /24 — сеть с 256 адресами и т.д.

Рекомендации по безопасности

  • Не меняйте MAC и IP на производственных системах без подтверждённого плана отката.
  • Ограничьте доступ по SSH через firewall и используйте ключи, а не пароли.
  • Для критичных хостов используйте статические ARP-записи и мониторинг ARP-анализов на предмет spoofing.

Ролевые чеклисты

Сисадмин — быстрый чек перед изменением IP:

  1. Иметь доступ на консоль.
  2. Сохранить текущую конфигурацию (выписать ip addr, ip route, ip neigh).
  3. Оповестить заинтересованных (если сервер в production).
  4. Применить изменение, проверить локально и удалённо.
  5. Откатить при ошибке.

DevOps — деплой сетевых изменений в автоматизации:

  1. Описать изменения в коде конфигурации (Ansible/Cloud-Init).
  2. Прогнать в staging.
  3. Наблюдать SLI после результата (доступность, задержка).
  4. Автоматический откат при ошибках.

SOP: добавление IP с возможностью отката

  1. Сохранить текущие состояния:
ip addr show > /tmp/ip-addr-before.txt
ip route show > /tmp/ip-route-before.txt
ip neigh show > /tmp/ip-neigh-before.txt
  1. Добавить IP:
sudo ip addr add 192.168.42.140/24 dev ens33
  1. Проверить доступность шлюза и внешних ресурсов:
ping -c3 192.168.42.1
ip route get 8.8.8.8
  1. Если всё в порядке, внести изменение в persistent-конфиг. Если нет — откат:
sudo ip addr del 192.168.42.140/24 dev ens33

Примеры тест-кейсов

  • Добавление IP: после добавления интерфейс должен отвечать на ICMP для нового адреса.
  • Удаление IP: после удаления адрес не должен присутствовать в ip addr и не должен отвечать.
  • Добавление маршрута: пакеты до подсети проходят через указанный шлюз (traceroute).

Краткий глоссарий

  • IP: адрес сетевого уровня (L3).
  • MTU: максимальный размер полезной нагрузки кадра.
  • ARP/neighbor: таблица соответствий IP ↔ MAC в локальной сети.
  • proto: источник маршрута (dhcp/kernel/static).

Когда команда ip не подходит

  • Если нужен графический интерфейс для настройки (используйте NetworkManager GUI).
  • Если требуется декларативная постоянная конфигурация — применяйте системные файлы конфигурации или инструменты управления конфигурацией.

Заключение

Команда ip — базовый и мощный инструмент для любой сетевой работы в Linux. Она покрывает все основные сценарии от простой диагностики до сложной ручной настройки маршрутизации и таблиц соседей. Всегда планируйте изменения, тестируйте в test-среде и обеспечивайте путь отката.

Короткий список действий для быстрого старта:

  • ip a — посмотреть адреса;
  • ip link set dev up/down — управление интерфейсом;
  • ip addr add/del — добавление/удаление адреса;
  • ip route — просмотр/добавление/удаление маршрутов;
  • ip neigh — управление ARP.

И помните: чтобы изменения сохранились после перезагрузки, редактируйте системные конфигурационные файлы или используйте менеджер сети (NetworkManager, systemd-networkd).

Поделиться: X/Twitter Facebook LinkedIn Telegram
Автор
Редакция

Похожие материалы

Компенсация экспозиции на iPhone — как использовать
Фотография

Компенсация экспозиции на iPhone — как использовать

Отключить звонки iPhone на iPad
Инструкции

Отключить звонки iPhone на iPad

Отключить звук iPhone без рабочего переключателя
iPhone

Отключить звук iPhone без рабочего переключателя

Shot on iPhone Macro — конкурс макро‑фото 2022
Фотография

Shot on iPhone Macro — конкурс макро‑фото 2022

Оптический зум на iPhone: как пользоваться
Фотография

Оптический зум на iPhone: как пользоваться

Подготовка Kindle к продаже или передаче
Гаджеты

Подготовка Kindle к продаже или передаче