ifconfig или ip: в чем разница и их сравнение

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

 

 

Этих команд вполне достаточно для настройки сети так, как это необходимо любому новичку или опытному пользователю Linux, но из-за прогресса в ядре Linux за последние годы и невозможности использования этого набора команд они становятся устаревшими и уступают своё место более мощным командам. Появилась альтернатива, которая может заменить все эти команды.

Эта альтернатива также существует уже довольно давно и является гораздо более мощной, чем любая из этих команд. Во всех разделах этой статьи мы расскажем вам об этой альтернативе и сравним её с одной из команд из пакета net-tools, то есть ifconfig.

 

 

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

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

Хотя эта команда может показаться немного сложной с первого взгляда, но она намного шире по функциональности, чем ifconfig. Команда 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

 

 

Команда ip

 

 

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

Приведенная ниже команда назначает IP-адрес 192.168.80.174 интерфейсу eth0.

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

 

 

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

 

 

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

 

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

 

 

4. Добавление физического адрес (MAC) в сетевой интерфейс

Команда ниже устанавливает аппаратный адрес для интерфейса eth0 в значение, указанное в команде. Это можно проверить, проверив значение HWaddr в выходных данных команды ifconfig.

 

 

ifconfig — добавление MAC-адреса

Здесь показан синтаксис для добавления MAC-адреса с помощью команды ifconfig:

 

 

ip — добавление MAC-адреса

Здесь показан синтаксис для добавления MAC-адреса с помощью команды ip:

 

 

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

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

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

 

 

а. Установка значения MTU на 2000.
ifconfig — Сетевые конфигурации MTU

 

 

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

 

 

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

 

 

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

 

 

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

 

 

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

 

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

 

 

IP — режим Promiscuous

 

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

 

 

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

 

 

5. Включение или отключение сетевого интерфейса

Приведенные ниже команды включают или отключают определенный сетевой интерфейс.

 

ifconfig — отключение / включение сетевого интерфейса

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

 

Чтобы снова включить интерфейс, просто замените down на up:

 

ip — отключение / включение сетевого интерфейса

Приведенная ниже команда ip является альтернативой для ifconfig для отключения определенного интерфейса. Это может быть подтверждено выводом команды «ip a», которая по умолчанию показывает все интерфейсы, down или up, но выводит их статус вместе с описанием:

 

Чтобы снова включить интерфейс, просто замените down на up:

 

 

6. Включение или отключение использования протокола ARP

Приведенные ниже команды включают или отключают протокол ARP для определенного сетевого интерфейса.

ifconfig — включение / отключение протокола ARP

Команда позволяет использовать протокол ARP с интерфейсом eth0. Чтобы отключить эту опцию, просто замените arp на -arp.

 

ip — включение / отключение протокола ARP

Эта команда является альтернативой ifconfig для включения ARP для интерфейса eth0. Чтобы отключить, просто замените on на off:

 

Итоги

Таким образом, мы выделили особенности команды ifconfig и то, как их можно выполнить с помощью команды ip. В настоящее время дистрибутивы Linux предоставляют пользователю обе команды, которые он может использовать по своему усмотрению. Итак, какая команда удобна для вас, какую из них вы бы предпочли использовать? Напишите это в наших комментариях.

Если вы хотите узнать больше об этих двух командах, то вам следует ознакомиться с нашими предыдущими статьями, в которых более подробно представлены некоторые практические примеры команд ifconfig и ip:

 

Не пропустите«15 полезных команд ifconfig для настройки сетевого интерфейса в Linux»

Не пропустите«10 полезных «IP» команд для настройки сетевых интерфейсов»

 

 

Спасибо за уделенное время на прочтение статьи!

Если возникли вопросы, задавайте их в комментариях.

Подписывайтесь на обновления нашего блога и оставайтесь в курсе новостей мира инфокоммуникаций!

Чтобы знать больше и выделяться знаниями среди толпы IT-шников, записывайтесь на курсы Ciscoкурсы по кибербезопасности,  полный курс по кибербезопасностикурсы DevNet (программируемые сети) от Академии Ciscoкурсы Linux от Linux Professional Institute на платформе SEDICOMM University (Университет СЭДИКОММ).

Курсы Cisco, Linux, кибербезопасность, DevOps / DevNet, Python с трудоустройством!

Спешите подать заявку! Группы стартуют 25 января, 26 февраля, 22 марта, 26 апреля, 24 мая, 21 июня, 26 июля, 23 августа, 20 сентября, 25 октября, 22 ноября, 20 декабря.
Что Вы получите?
  • Поможем стать экспертом по сетевой инженерии, кибербезопасности, программируемым сетям и системам и получить международные сертификаты Cisco, Linux LPI, Python Institute.
  • Предлагаем проверенную программу с лучшими учебниками от экспертов из Cisco Networking Academy, Linux Professional Institute и Python Institute, помощь сертифицированных инструкторов и личного куратора.
  • Поможем с трудоустройством и стартом карьеры в сфере IT — 100% наших выпускников трудоустраиваются.
Как проходит обучение?
  • Проведем вечерние онлайн-лекции на нашей платформе.
  • Согласуем с вами удобное время для практик.
  • Если хотите индивидуальный график — обсудим и реализуем.
  • Личный куратор будет на связи, чтобы ответить на вопросы, проконсультировать и мотивировать придерживаться сроков сдачи экзаменов.
  • Всем, кто боится потерять мотивацию и не закончить обучение, предложим общение с профессиональным коучем.
А еще поможем Вам:
  • отредактировать или создать с нуля резюме;
  • подготовиться к техническим интервью;
  • подготовиться к конкурсу на понравившуюся вакансию;
  • устроиться на работу в Cisco по специальной программе. Наши студенты, которые уже работают там: жмите на #НашиВCisco Вконтакте, #НашиВCisco Facebook.
Чтобы учиться на курсах Cisco, Linux LPI, кибербезопасность, DevOps / DevNet, Python, подайте заявку или получите бесплатную консультацию.

Больше похожих постов

1 комментарий. Оставить новый

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Заполните поле
Заполните поле
Пожалуйста, введите корректный адрес email.
Вы должны согласиться с условиями для продолжения


Поиск по сайту
Лучшее
Популярное
Рубрики
Меню