Найти в Дзене
Обо всём и Linux

Сравнение ifconfig vs ip - ч.1

Оглавление

Во всех дистрибутивах Linux имеются команды, которые обеспечивают простой способ настройки сети через командную строку. Этот набор команд доступен из пакета net-tools и включает такие команды, как: ifconfig, route, nameif, netstat и другие.

Так как ядро Linux быстро развивается, то часть команд из набора становятся не актуальными и устаревшими. Но имеется альтернатива, которая существует достаточно давно и более мощной, чем любая из этих команд.

Эта альтернатива - ifconfig. В статье я так же сравню её с одной из команд из пакета net-tools.

Команда ip – замена для команды ifconfig

ifconfig часто и давно использовался пользователями для настройки, отображения и управления сетевыми интерфейсами. Но сейчас в дистрибутивах Linux есть более мощная команда, на мой взгляд – команда ip из пакета iproute2util.

Команда ip функционально организована на двух уровнях сетевого стека, на уровне 2 (канальный уровень) и на уровне 3 (сетевой уровень). Выполняет работу всех вышеупомянутых команд из пакета net-tools.

Хотя ifconfig в основном отображает или изменяет интерфейсы системы, эта команда может выполнять следующие задачи:

  • Отображение или изменение свойств интерфейса.
  • Добавление, удаление записей ARP Cache вместе с созданием новой записи Static ARP для узла.
  • Отображение MAC-адресов, связанных со всеми интерфейсами.
  • Отображение и изменение таблиц маршрутизации ядра.

Основное отличие команду ip от – ifconfig, является то, что последняя использует ioctl для конфигурации сети, которая является менее ценным способом взаимодействия с ядром, в то время как первая команда использует механизм сокетов netlink, который является гораздо более гибким преемником ioctl для взаимодействия между ядром и пользовательским пространством с использованием rtnetlink (что добавляет возможность манипулирования сетевой средой).

Теперь мы можем обсудить функции ifconfig и их эффективную замену командой ip.

Команды ip и ifconfig

В следующем разделе описаны некоторые команды ifconfig и их замена с помощью команд ip:

1. Отображение всех сетевых интерфейсов в Linux

Здесь одна отличительная особенность между ip и ifconfig заключается в том, что если ifconfig показывает только включенные интерфейсы, ip показывает все интерфейсы, независимо от того, включены они или отключены.

Команда ifconfig

ifconfig

Команда ip

ip a


-2

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

Команда назначает IP-адрес 10.0.10.15
интерфейсу
eth0.

ifconfig – добавление / удаление IP-адреса

ifconfig eth0 add 10.0.10.15

Команда добавления/удаления интерфейса с помощью команды ifconfig:

ifconfig eth0 add 10.0.10.15
ifconfig eth0 del
10.0.10.15

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

ip a add 10.0.10.15 dev eth0

Команда для добавления / удаления интерфейса с помощью команды ip:

ip a add 10.0.10.15 dev eth0
ip a del
10.0.10.15 eth0

3. Настройка иных конфигураций сетевого интерфейса

Помимо настройки IP-адреса или физического адреса, другие конфигурации, которые могут быть применены к интерфейсу, включают в себя:

  • MTU (максимальная единица передачи)
  • Многоадресный флаг
  • Длина очереди передачи
  • Режим Promiscuous
  • Включение или отключение всех режимов многоадресной рассылки

а. Установка значения MTU на 2000.

ifconfig – Сетевые конфигурации MTU

ifconfig eth0 mtu 2000

IP – Сетевые конфигурации MTU

ip link set dev eth0 mtu 2000

б. Включение или отключение флага многоадресной рассылки.

ifconfig – флаг многоадресной рассылки

ifconfig eth0 multicast

IP – флаг многоадресной рассылки

ip link set dev eth0 multicast on

с. Установка длины очереди передачи.

ifconfig – очередь передачи

ifconfig eth0 txqueuelen 1200

IP – очередь передачи

ip link set dev eth0 txqueuelen 1200

d. Включение или отключение режима Promiscuous.

ifconfig – режим Promiscuous

ifconfig eth0 promisc

IP – режим Promiscuous

ip link set dev eth0 promisc on

е. Включение или отключение всех режимов многоадресной рассылки.

ifconfig – многоадресная рассылки

ifconfig eth0 allmulti

IP – многоадресная рассылки

ip link set dev eth0 allmulti on

Продолжение следует...

ПОДДЕРЖАТЬ РАЗВИТИЕ КАНАЛА

#linux #linuxfx #linuxmin #linuxvswindows