Памятка по IP-командам

Просмотр категорий

Памятка по IP-командам

7 min read

Линукс ip command — мощная утилита для управления сетью. Она заменяет старые сетевые команды, такие как ifconfig, route и arp, предоставляя унифицированный набор инструментов для настройки, мониторинга и устранения неполадок сетевых параметров в системах Linux. Он обычно используется для настройки и управления IP-адресами, маршрутами и сетевыми интерфейсами.

Использование ключа и синтаксис ip Command #

ip Команда имеет структурированный синтаксис:

ip [OPTIONS] OBJECT COMMAND

  • ДОПОЛНИТЕЛЬНЫЕ ОПЦИИ включить флаги для дальнейшей настройки, например -4 для IPv4 или -6 для IPv6.
  • ОБЪЕКТ представляет собой сетевой элемент, которым вы хотите управлять, например ссылка. (интерфейс), адр (адрес), маршрут, и т.д.
  • КОМАНДА это действие, которое вы хотите выполнить, например добавить, по оценкам, , удалять или набор.

ip Таблица командных шпаргалок #

Command Описание
ip link show Список всех сетевых интерфейсов
ip addr show Показать IP-адреса для всех интерфейсов
ip addr add <IP>/<subnet> dev <iface> Добавить IP-адрес к интерфейсу
ip addr del <IP>/<subnet> dev <iface> Удалить IP-адрес из интерфейса
ip route show Показать все записи таблицы маршрутизации
ip route add <dest> via <gateway> Добавить новый маршрут
ip route del <dest> Удалить существующий маршрут
ip neigh show Отображение кэша соседей (таблица ARP)
ip rule show Показать все правила маршрутизации
ip rule add from <IP>/<prefix> table <table-id> Добавьте правило для маршрутизации из определенного источника с помощью таблицы
ip rule del from <IP>/<prefix> table <table-id> Удалить правило на основе исходного IP

ip addr Подкоманда #

ip addr команда отображает и управляет IP-адресами сетевых интерфейсов.

Показать #

ip addr show

Пример вывода #

Эта команда выводит список каждого сетевого интерфейса с подробностями, такими как IP-адрес, маска подсети, широковещательный адрес и состояние канала. Вот пример:

2: enp0s3: mtu 1500 qdisc pfifo_fast state UP group default qlen 1000 link/ether 08:00:27:1a:02:50 brd ff:ff:ff:ff:ff:ff inet 192.168.1.10/24 brd 192.168.1.255 scope global dynamic enp0s3 valid_lft 86320sec preferred_lft 86320sec inet6 fe80::a00:27ff:fe1a:250/64 scope link valid_lft forever preferred_lft forever

Объяснение вывода #

  • Информация об интерфейсе: Строка, начинающаяся с 2: enp0s3 показывает имя сетевого интерфейса (enp0s3), вместе с такими флагами, как BROADCAST, MULTICAST, UP, LOWER_UP, что указывает на то, что интерфейс поддерживает широковещательную и многоадресную передачу и работает.
  • MAC-адрес: link/ether строка отображает MAC-адрес (08:00:27:1a:02:50) интерфейса.
  • Адрес IPv4: inet строка предоставляет адрес IPv4 (192.168.1.10/24) назначенный интерфейсу, с /24 указание маски подсети.
  • Адрес IPv6: inet6 строка содержит адрес IPv6 (fe80::a00:27ff:fe1a:250), если таковые имеются.

Эта команда необходима для проверки IP-адресов сетевых интерфейсов и их состояния.

Добавить #

Назначить IP-адрес сетевому интерфейсу

ip addr add 192.168.1.100/24 dev enp0s3

Результат

Эта команда не выводит данные в случае успеха, что является обычным явлением в Linux для команд конфигурации. Если есть проблема (например, конфликт IP), она выведет сообщение об ошибке.

Удалить #

Удалить IP-адрес из интерфейса

ip addr del 192.168.1.100/24 dev enp0s3

Результат
Похожий на что add, эта команда не выдает сообщение об успешном выполнении. Вы увидите вывод только в том случае, если IP-адрес не назначен указанному интерфейсу или если возникла другая ошибка.

Флэш #

Удалить все IP-адреса из интерфейса
ip addr flush dev enp0s3

Результат
Эта команда не выдает никаких выходных данных при успешном выполнении. Обычно она используется для сброса конфигурации IP интерфейса.

ip route Подкоманда #

ip route Команда управляет записями маршрутизации в таблице IP-маршрутизации ядра, указывая, куда следует пересылать пакеты.

Показать #

Отобразить таблицу маршрутизации

ip route show

Пример вывода

по умолчанию через 192.168.1.1 dev enp0s3 proto статический 192.168.1.0/24 dev enp0s3 proto ядро ​​область ссылка src 192.168.1.10

Объяснение вывода

  • по умолчанию через: Указывает маршрут по умолчанию, указывающий на IP-адрес шлюза (192.168.1.1) для исходящего трафика.
  • 192.168.1.0/24 dev enp0s3: Показывает маршрут к локальной подсети, обрабатываемый enp0s3 интерфейс с 192.168.1.10 в качестве исходного адреса.

Добавить #

Создать новый маршрут
ip route add 10.0.0.0/24 via 192.168.1.1 dev enp0s3

Результат
Эта команда добавляет маршрут к 10.0.0.0/24 подсеть, маршрутизирующая трафик через 192.168.1.1 с помощью enp0s3. В случае успешного выполнения вывод не отображается.

Удалить #

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

ip route del 10.0.0.0/24

Результат
Удаляет указанный маршрут, в случае успеха не выводит никаких данных.

Флэш #

Очистить записи таблицы маршрутизации
ip route flush dev enp0s3

Результат
Очищает все маршруты для enp0s3, обычно используется для реконфигурации или устранения неполадок.

ip rule Подкоманда #

Показать #

Список всех правил маршрутизации
ip rule show

Пример вывода

0: из всех локальных поисков 32766: из всех основных поисков 32767: из всех поисков по умолчанию

Объяснение вывода
Каждая строка показывает правило с номером приоритета (например, 0, 32766). Эти правила определяют, какая таблица маршрутизации (local, main или default) для использования в различных типах трафика.

Добавить #

Определить новое правило маршрутизации

ip rule add from 192.168.1.100/32 table 100

Результат
Это правило направляет трафик, исходящий из 192.168.1.100 сверяться с таблицей 100 для маршрутизации. Если команда выполнена успешно, вывода нет.

Удалить #

Удалить определенное правило
ip rule del from 192.168.1.100/32 table 100

Результат
Удаляет указанное правило, в случае успеха не выводит никаких данных.

ip link Подкоманда #

Показать #

Отображение информации о канальном уровне
ip link show

Пример вывода

2: enp0s3: mtu 1500 qdisc pfifo_fast state UP mode DEFAULT group default qlen 1000 link/ether 08:00:27:1a:02:50 brd ff:ff:ff:ff:ff:ff

Объяснение вывода

  • Информация об интерфейсе: Показывает имя интерфейса (enp0s3), флаги (например UP) и другие параметры, такие как MTU (1500).
  • ссылка/эфир: Отображает MAC-адрес (08:00:27:1a:02:50).

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

ip link set dev enp0s3 up

Результат

Устанавливает интерфейс enp0s3 в up, активируя его без отображения каких-либо выходных данных в случае успеха.

Добавить #

Создать виртуальный канал (например, VLAN)
ip link add link enp0s3 name enp0s3.10 type vlan id 10

Результат

Создает VLAN с идентификатором 10 связанные с enp0s3. Отсутствие выходных данных указывает на успешное выполнение команды.

Удалить: Удалить виртуальную ссылку #

ip link del dev enp0s3.10

Результат
Удаляет указанную виртуальную ссылку (enp0s3.10) без вывода, если операция прошла успешно.

Примеры использования ip Command #

Отображение подробной информации об интерфейсе #

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

ip addr show

Это отображает информацию, такую ​​как IP-адрес, маска подсети, широковещательный адрес и состояние интерфейса. Вы можете указать конкретный интерфейс, например ip addr show eth0, чтобы просмотреть подробную информацию об одном интерфейсе.

Добавить и удалить IP-адреса #

Чтобы назначить IP-адрес сетевому интерфейсу:

ip addr add 192.168.1.10/24 dev eth0

Эта команда назначает IP 192.168.1.10 с маской подсети /24 в eth0. Это полезно для настройки интерфейсов или добавления виртуальных IP-адресов на балансировщик нагрузки для обеспечения высокой доступности.

Чтобы удалить IP-адрес из интерфейса:
ip addr del 192.168.1.10/24 dev eth0

Настройка статического маршрута #

Чтобы добавить статический маршрут, необходимый для направления трафика в определенные сети:

ip route add 192.168.2.0/24 via 192.168.1.1

Это задает маршрут для 192.168.2.0/24 сеть, направляющая пакеты через 192.168.1.1 шлюз.

Настройка записей IP-соседства (таблица ARP) #

Чтобы добавить постоянную запись в таблицу ARP:

ip neigh add 192.168.1.5 lladdr 00:11:22:33:44:55 dev eth0

Это вручную сопоставляет IP-адрес 192.168.1.5 на MAC-адрес 00:11:22:33:44:55 on eth0.

Чтобы удалить запись ARP:

ip neigh del 192.168.1.5 dev eth0

. ip rule для расширенной маршрутизации #

ip rule объект в ip Команда используется для маршрутизации на основе политик, позволяя вам устанавливать правила, которые направляют пакеты по-разному в зависимости от источника, назначения или других атрибутов пакета. Это особенно полезно в расширенных сетевых настройках, где требуется несколько таблиц маршрутизации, например, многосетевые настройки или особые политики маршрутизации для определенных диапазонов IP-адресов.

Например, чтобы добавить правило, которое маршрутизирует все пакеты с определенного исходного IP-адреса (192.168.1.100) с использованием пользовательской таблицы маршрутизации (table 100):

ip rule add from 192.168.1.100/32 table 100

Чтобы направить трафик в определенный пункт назначения с использованием другой таблицы:
ip rule add to 10.10.0.0/24 table 100

Чтобы просмотреть все правила:
ip rule show

Посмотрите на график ip Команда с RELIANOID Балансировщик нагрузки #

In RELIANOIDСреда балансировки нагрузки, ip Команда может быть полезной для настройки и оптимизации сети. Вот как можно эффективно ее использовать:

Назначение виртуальных IP-адресов #

На RELIANOID балансировщик нагрузки, виртуальные IP-адреса имеют решающее значение для распределения нагрузки и высокой доступности. Используйте следующее для назначения VIP:

ip addr add 10.10.10.1/24 dev eth0

Это создает виртуальный IP-адрес на основном интерфейсе, помогая распределять клиентские запросы по нескольким внутренним серверам.

Управление маршрутами для внутренней коммуникации #

Чтобы гарантировать, что балансировщик нагрузки перенаправляет трафик на внутренние серверы в определенной подсети, настройте статический маршрут:

ip route add 10.10.20.0/24 via 10.10.10.2

Эта конфигурация обеспечивает трафик, предназначенный для 10.10.20.0/24 правильно маршрутизируется через указанный шлюз.

Статистика сетевого интерфейса мониторинга #

Проверка статистики интерфейса полезна для мониторинга нагрузки трафика и устранения неполадок. Например:

ip -s link show eth0
Эта команда предоставляет статистику в реальном времени по передаче пакетов, ошибкам и потерям на eth0 интерфейс, который может помочь контролировать нагрузку и при необходимости корректировать настройки балансировки.

Посмотрите на график ip команда, RELIANOIDБалансировщик нагрузки может поддерживать эффективную конфигурацию сети, динамически управлять IP-адресами и маршрутами, а также обеспечивать надежную основу для безопасной и оптимизированной обработки трафика.

Резюме #

Подводя итог, можно сказать, что Linux ip command — универсальный и важный инструмент для настройки и управления сетью, позволяющий осуществлять детальный контроль над интерфейсами, маршрутами и политиками. Его гибкость позволяет эффективно обрабатывать сложные сетевые настройки, например, в средах балансировки нагрузки, позволяя администраторам управлять IP-адресами, определять маршруты и внедрять правила на основе политик. Для RELIANOID Балансировщики нагрузки, использующие ip command обеспечивает надежное управление трафиком, оптимизированную маршрутизацию и отказоустойчивую архитектуру, готовую к высокой доступности и эффективному распределению нагрузки.

📄 Загрузите этот документ в формате PDF #

    EMAIL: *

    Powered by BetterDocs