Команда ifconfig – синтаксис и примеры

Для обмена данными между хостами от одного компьютера к другому используется технология, которая называется ethernet.  Чтобы обмен данными стал возможен, как минимум необходимо настроить сеть между двумя устройствами.

В операционных системах linux для настройки сети есть сетевая утилита ifconfig, она позволяет смотреть сетевые настройки, а также изменять их, делать свою конфигурацию, назначать IP, шлюз, маску подсети и даже мак-адрес.

Установка

Сейчас все больше дистрибутивов linux отказываются от установки утилиты ifconfig по умолчанию. Поэтому чтобы ее использовать нужно предварительно установить. Это связано с тем что вышла более новая команда "ip" и ifconfig считается устаревшей утилитой, однако пользователи линукс уже привыкли использовать ее и выучили некоторые параметры этой команды.

Чтобы определить установлена ли сетевая утилита достаточно ввести ее название без аргументов.

ifconfig

Утилита не установлена, если оболочка командной строки выдаст одно из сообщений:

  1. команда не найдена;
  2. command not found;
  3. not found.

Сама утилита входит в пакет "net-tools", поэтому устанавливать нужно этот пакет.

ВАЖНО! Не надо писать apt "install ifconfig" программа не установится.

Установка на Centos:
yum install net-tools

На Ubuntu:
apt install net-tools

На Debian:

apt install net-tools

Синтаксис

Рассмотрим синтаксис.

ifconfig ключи interface параметры команда

Ключи:

  • -a. Показать все интерфейсы, включая отключенные.
  • -s. Краткий список interface.

Основные команды:

  • up - включить интерфейс.
  • down - выключить интерфейс.
  • hw - установить мак-адрес.
  • netmask - назначить маску подсети.
  • broadcast - установить широковещательный адрес
  • del - удалить ip-адрес.
  • mtu - назначить максимальный размер передаваемого пакета. Для Ethernet по умолчанию 1500.
  • arp - включить протокол arp. По умолчанию включен.
  • -arp - отключить arp.
  • irq - назначить номер прерывания.

Под интерфейсом понимается его название. Например eth0, eth1, eth2, eth3.

Примеры

Запустим команду без параметров.

ifconfig

ifconfig без аргументов

Как видно на скриншоте выше команда без ключей покажет информацию о всех включенных интерфейсах.

Здесь:

  • Eth0 и l0 - название интерфейса.
  • RX- cчетчик приема пакетов.
  • TX - счетчик передачи пакетов.
  • inet addr - IP-адрес четветой версии.
  • inet6 addr - IP-адрес версии шесть.
  • Bcast - широковещательный адрес.
  • UP BROADCAST RUNNING MULTICAST - означает, что интерфейс включен.
  • Mask - маска подсети.
  • collisions:0 - коллизия.
  • txqueuelen:1000 - длина очереди.

Выключим interface lo.

ifconfig lo down

Чтобы включить обратно lo выполним:

ifconfig lo up

Вывести информация о всех интерфейсах, включая отключенные, поможет ключ -a:

ifconfig -a

Покажем конфигурацию только интерфейса eth0.

ifconfig eth0

Ifconfig eth0

Чтобы назначить сетевому адаптеру IP-адрес 192.168.20.2, необходимо написать название команды, interface и сам IP.

ifconfig lo 192.168.20.2

Назначение IP-адреса при помощи командной строки линукс