- ifconfig: команда не найдена. Сообщество Linux расстаётся с Net-Tools
- Некоторые примеры использования ip
- Поднятие сетевого интерфейса и изменение ip адреса
- Управление таблицами маршрутизации
- Комментариев: 5
- Команда ifconfig — синтаксис и примеры
- Установка
- Синтаксис
- Примеры
- [Решено] ifconfig: команда не найдена.
- Исправляем ошибку «ifconfig: команда не найдена»
- Способ 1: Добавление утилиты ifconfig
- Способ 2: Использование команды ip
- ⏭ Как установить недостающую команду ifconfig в Debian
- Исправление отсутствующей команды ifconfig в Debian
- Заключительные мысли
- Решение проблемы «bash: ifconfig: команда не найдена»
- Вместо net-tools теперь iproute2, а вместо ifconfig теперь ip a
- Почему заменили ifconfig
- Примеры использования ip. Аналоги ip для ifconfig
- Сбор информации
- Изменение интерфейса
- Управление таблицей маршрутизации
- ARP протокол
- Связанные статьи:
- Рекомендуемые статьи:
- 11 Комментарии
ifconfig: команда не найдена. Сообщество Linux расстаётся с Net-Tools
Тяжело расставаться с привычными инструментами в Linux, которыми пользовался годами. Так, при установке OpenMediaVault был озадачен отсутствием команд ifconfig, route и netstat. В результате, простейшая задача по смене ip-адреса неожиданно заиграла новыми красками.
Я как-то упустил тот момент, когда пакет Net-Tools признали устаревшим и ему на смену в Linux пришёл другой сетевой инструмент iproute2. По этой причине последние версии многих дистрибутивов Linux больше не содержат привычных команд ifconfig или route.
На самом деле и iproute2 нельзя назвать чем-то принципиально новым, ведь этот пакет известен ещё с начала 2000-х годов и основным его минусом всегда считалось отсутствие актуальной документации (отсылки типа «смотри исходный код» не считаются).
Что делать, придётся избавляться от старых наработанных привычек и заново изучать новые команды и синтаксис пакета iproute2. Из очевидных плюсов нам обещают больший контроль над сетевыми параметрами и функциями Linux.
Я нашёл неплохой мануал Task-centered iproute2 user guide о практическом использовании iproute2, правда на английском языке https://baturin.org/docs/iproute2/.
Некоторые примеры использования ip
Самой востребованной функцией, без чего не обходится ни одна настройка сети, остаётся определение IP адреса, назначенного интерфейсу. Ранее это делалось командой ifconfig без каких-либо дополнительных аргументов. Теперь следует писать так:
Команда выведет список интерфейсов и связанную с ними сопутсвующую информацию:
Если требуется вывести информацию, связанную с конкретным интерфейсом, например по беспроводному соединению, командой приобретает следующий вид:
ip a show wlan0
или ещё более конкретизированный запрос с информацией только о IPv4:
ip -4 a show wlan0
Поднятие сетевого интерфейса и изменение ip адреса
Пример включения сетевого интерфейса (как было и как стало):
Теперь давайте назначим адрес сетевому интерфейсу, пусть это будет eth0. Снова, для сравнения, первый вариант будет с использованием команды ifconfig, а второй с ip:
Управление таблицами маршрутизации
Таблицы маршрутизации также управляются командой ip. Вот как можно посмотреть таблицу маршрутизации:
Добавляем новый маршрут (как и в предыдущих примерах по принципу «было-стало»):
или маршрут по умолчанию:
Я не ставил целью рассказать о всех возможных вариантах использования iproute2, сам только начинаю привыкать к команде ip и её синтаксису. Кому-то хватит даже этих базовых команд, а дальнейшее изучение каждый желающий может продолжить самостоятельно.
Если считаете статью полезной,
не ленитесь ставить лайки и делиться с друзьями.
Комментариев: 5
Ну наконец то пришли к единому виду. А то даже в некоторых скриптах мешанина из ifconfig и ip.
Видимо этому способствует всепомнящий интернет.
Как жизненно. Меня тоже вогнало в ступор отсутствие ifconfig в свежем образе
Жаль, в статье не сказано, чем заменить netstat
Это что, издевательство? То init убирают, заменяют systemd, теперь мне вместо простого ifconfig надо будет писать незапоминаемую простыню опций команды ip?
Спасибо! Эту бы статью неделю назад мне,никак не мог понять,какого лешего сломался ifconfig .Благо в убунте ещё можно поставить старые net tools
Источник
Команда ifconfig — синтаксис и примеры
Для обмена данными между хостами от одного компьютера к другому используется технология, которая называется ethernet. Чтобы обмен данными стал возможен, как минимум необходимо настроить сеть между двумя устройствами.
В операционных системах linux для настройки сети есть сетевая утилита ifconfig, она позволяет смотреть сетевые настройки, а также изменять их, делать свою конфигурацию, назначать IP, шлюз, маску подсети и даже мак-адрес.
Установка
Сейчас все больше дистрибутивов linux отказываются от установки утилиты ifconfig по умолчанию. Поэтому чтобы ее использовать нужно предварительно установить. Это связано с тем что вышла более новая команда «ip» и ifconfig считается устаревшей утилитой, однако пользователи линукс уже привыкли использовать ее и выучили некоторые параметры этой команды.
Чтобы определить установлена ли сетевая утилита достаточно ввести ее название без аргументов.
Утилита не установлена, если оболочка командной строки выдаст одно из сообщений:
- команда не найдена;
- command not found;
- not found.
Сама утилита входит в пакет «net-tools», поэтому устанавливать нужно этот пакет.
ВАЖНО! Не надо писать apt «install ifconfig» программа не установится.
Установка на Centos:
yum install net-tools
На Ubuntu:
apt install net-tools
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.
Примеры
Запустим команду без параметров.
Как видно на скриншоте выше команда без ключей покажет информацию о всех включенных интерфейсах.
- 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 выполним:
Вывести информация о всех интерфейсах, включая отключенные, поможет ключ -a:
Покажем конфигурацию только интерфейса eth0.
Чтобы назначить сетевому адаптеру IP-адрес 192.168.20.2, необходимо написать название команды, interface и сам IP.
Источник
[Решено] ifconfig: команда не найдена.
Исправляем ошибку «ifconfig: команда не найдена»
Если при попытке активировать команду в «Терминале» вы сталкиваетесь с ошибкой «ifconfig: команда не найдена», значит программное обеспечение, отвечающее за эту команду, отсутствует в системе. Сегодня мы бы хотели показать не только метод исправления этой неполадки, но и рассказать о более новом альтернативном варианте, заменяющим ifconfig.
Способ 1: Добавление утилиты ifconfig
Тем пользователям, которые привыкли задействовать именно эту команду, данный способ покажется оптимальным. Инструмент ifconfig не был удален вовсе, он просто отсутствует в стандартном наборе приложений системы, а добавить его можно, выполнив следующие инструкции:
- Для начала рекомендуем еще раз убедиться в том, что ifconfig недоступна. Запустите классический терминал любым удобным вариантом.
- Присвойте постоянные права суперпользователя, написав su — .
- Укажите пароль от рут-доступа и ожидайте появления новой строки ввода.
- Здесь просто введите ifconfig и нажмите на клавишу Enter.
- Если по-прежнему появляется уведомление об отсутствии команды в системе, установите набор компонентов net-tools, введя apt install net-tools .
- Ожидайте завершения добавления и настройки новых библиотек.
- По завершении инсталляции еще раз выполните ifconfig , чтобы убедиться в успешности операции.
- Узнать больше информации о правилах используемой утилиты поможет строка ifconfig —help .
Теперь вы знакомы с методом возвращения ранее стандартной утилиты в операционную систему Debian 9. Однако стоит понимать, что ей на замену пришел более удобный инструмент, из-за чего есть смысл разобраться в управлении с ним и оставить старые привычки.
Способ 2: Использование команды ip
Существует ряд причин, по которым команда ifconfig была заменена на ip в стандартной комплектации ОС на ядре Linux. Во-первых, она не разрешала настраивать систему контроля трафика, некорректно работала с некоторыми устройствами, не отображала их аппаратный адрес и не позволяла генерировать сетевые устройства TUN/TAP. Все эти недочеты были исправлены и доработаны, но уже внесены в функциональность ip. Например, просмотреть основную информацию по интерфейсу можно, введя:
Выдача в «Терминале» после активации указанной выше команды будет соответствовать той, которая была бы показана при ifconfig , но с некоторыми дополнительными данными.
Дополнительные сведения по протоколу IPv4 смотрим командой:
Еще присутствует возможность получить данные по конкретному интерфейсу, для этого вводим
Отобразить список работающих интерфейсов:
Одной из главных задач при настройке сети всегда считалась процедура присвоения определенного локального адреса конкретному интерфейсу. с помощью команды ip это делается так:
Если надобность в присвоении интерфейса для IP-адреса отпала, такая цепь достаточно легко удаляется.
Команда ip также определяет управление таблицами маршрутизации. Таблицей маршрутизации называют список сетевых путей, которые предназначены для определения лучшего маршрута передачи сетевого пакета. Ознакомиться со всеми доступными таблицами позволяет строка
В ситуациях, когда требуется вручную перенаправить трафик, задействовать лучше тоже команду ip с определенными аргументами. Тогда строка обретет вид, например:
Установленный маршрут также легко удаляется через
Благодаря двум приведенным выше способам вы теперь знаете, как можно не только восстановить работу команды ifconfig в Debian подобных системах, но и какая есть достойная альтернатива этой устаревшей утилите. Использовать ли новый инструмент или вернуться к старому — решать только вам.
Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.
Источник
⏭ Как установить недостающую команду ifconfig в Debian
Debian 10 (кодовое название Debian Buster) наконец-то явился миру с удивительными классными функциями и новой темой оформления.
Однако вы, возможно, столкнулись с ошибкой при попытке проверить IP-адрес вашего сетевого интерфейса (ов) при выполнении команды ifconfig, что указывает на то, что «команда ifconfig не найдена».
В Debian 10 (начиная с Debian 9) команда ifconfig устарела.
Вот почему вы получаете сообщение об отсутствующей команде ifconfig.
Обходным путем к этому препятствию является ip addr, который в значительной степени выполняет ту же задачу, что и команда ifconfig, как показано во фрагменте ниже.
Как видно из приведенного выше фрагмента, команда все равно будет отображать IP-адрес и другую статистику всех ваших сетевых интерфейсов.
Если вы все еще настаиваете на использовании старой доброй команды ifconfig, вам необходимо установить пакет net tools.
Пакет net-tools представляет собой инструментарий, который содержит спектр программ, которые составляют основу сетей Linux.
Он включают в себя следующее:
Исправление отсутствующей команды ifconfig в Debian
Чтобы исправить вышеуказанную ошибку, установите пакет net-tools, как показано далее:
Это запускает установку пакетов net-tools вместе с другими программными зависимостями, как показано далее:
После того, как установка завершится и будет успешной, попробуйте снова запустить команду ifconfig, и на этот раз ваша сетевая статистика будет отображаться на терминале, как показано в последнем разделе фрагмента выше.
Заключительные мысли
Это краткое руководство о том, как можно исправить ошибку команды ifconfig в Debian 10.
Мы надеемся, что теперь у вас есть достаточно знаний, необходимых для обхода этой ошибки.
Кроме того, вы можете использовать команду ip addr, чтобы получить статистику интерфейсов без особых хлопот.
Если у вас есть какие-либо вопросы по этой теме, не стесняйтесь оставлять нам комментарии.
Спасибо за ваше время и не забудьте поделиться этим руководством в своих социальных сетях.
Источник
Решение проблемы «bash: ifconfig: команда не найдена»
Вместо net-tools теперь iproute2, а вместо ifconfig теперь ip a
Если вы работаете с командной строкой в Linux, то почти наверняка используете команду ifconfig. Возможно, использовали её уже много лет. Она упоминается во многих инструкциях и книгах. И тем больше, я думаю, вы удивитесь, узнав, что пакет net-tools (которому принадлежит ifconfig) больше не устанавливается по умолчанию, поскольку теперь считается устаревшим.
Его место занял пакет iproute2, а вместо ifconfig нужно использовать команду ip. Запуск ifconfig без аргументов:
или в укороченной форме:
Почему заменили ifconfig
ifconfig – это программа из пакета net-tools, который на протяжении долгого времени не мог в полной мере поддерживать сетевой стек Linux. Он также по-прежнему использует ioctl для настройки сети, что является безобразным и менее продуктивным способом взаимодействия с ядром.
Множество изменений в сетевом коде Linux и множество новых возможностей недоступны при использовании net-tools: многолучеввая маршрутизация, политики маршрутизации (смотрите RPDB). route позволяет делать глупые вещи, такие как добавление множества маршрутов к одному месту назначения с той же метрикой.
- ifconfig не сообщает должный аппаратный адрес для некоторых устройств.
- Вы не можете настроить ipip, sit, gre, l2tp и т.д. во встроенных в ядро статичных туннелях.
- Вы не можете создавать устройства tun или tap.
- Способ добавления множества адресов данному интерфейсу также имеет бедную семантику.
- Вы также не можете настраивать систему контроля трафика Linux используя net-tools.
Примеры использования ip. Аналоги ip для ifconfig
Сбор информации
Первое, что большинство людей изучает с командой ifconfig – это как узнать, какой IP адрес назначен интерфейсу. Это обычно делается командой ifconfig без флагов или аргументов. Чтобы сделать это же самое с командой ip, запустите её так:
Эта команда выведет список интерфейсов и связанную с ними информацию.
Допустим, вы хотите увидеть только информацию по IPv4 (для ясности). Чтобы сделать это, наберите команду:
Или вы хотите увидеть информацию только по IPv6:
Что если вы хотите увидеть информацию, связанную с конкретным интерфейсом? Вы можете вывести список данных по беспроводному соединению командой:
Вы можете задать ещё более конкретные условия этой командой. Если вы хотите увидеть IPv4 по интерфейсу wlan0, наберите команду:
Вы можете составить список только из работающих интерфейсов используя:
Изменение интерфейса
Теперь мы входим в сердце команды… использование её для изменения интерфейса. Допустим вы хотите назначить конкретный адрес первому ethernet интерфейсу eth0. С командой ifconfig это выглядело бы примерно так:
С командой ip это выглядит примерно так:
Вы можете немного сократить её:
Ясно, что вы должны знать маску подсети адреса, который вы назначаете.
Что насчёт того, чтобы удалить адрес из интерфейса? С командой ip вы также можете сделать это. Например, для удаления только что назначенного для eth0 адреса, наберите следующую команду:
Что если вы хотите просто очистить все адреса для всех интерфейсов? Командой ip это делается так:
Другой ключевой аспект команды ip – это возможность поднимать/отключать интерфейс. Чтобы отключить интерфейс eth0 наберите:
Чтобы обратно поднять eth0, используйте
С командой ip вы можете также добавлять и удалять шлюз по умолчанию. Работать с этим примерно так:
Добавление псевдонима (алиаса) интерфейса с ifconfig:
Если вы действительно хотите углубиться в детали, вы можете отредактировать очередь передачи. Вы можете задать низкое значение в очереди передачи для медленных интерфейсов и более высокое значение для быстрых интерфейсов. Чтобы сделать это, команда должна выглядеть примерно так:
Вышеприведённая команда установила бы высокую очередь передачи. Вы можете поиграться с этой величиной, чтобы найти, что лучше всего работает для вашего железа.
Вы также можете установить Maximum Transmission Unit (MTU) вышего сетевого интерфейса командой:
После сделанных изменений, используйте
для проверки, что изменения возымели эффект.
Управление таблицей маршрутизации
С командой ip вы также можете управлять системными таблицами маршрутизации. Это очень мощный элемент команды ip, и вам следует использовать его с осторожностью.
Допустим, вы хотите просмотреть все таблицы маршрутизации. Чтобы сделать это, наберите команду:
Вывод может выглядеть примерно так:
Теперь, допустим, вы хотите переправлять весь трафик через шлюз 192.168.5.0, подключённый через сетевой интерфейс eth0. Чтобы сделать это, наберите команду:
Для удаления этого же маршрута наберите:
ARP протокол
Добавьте любую запись в вашу ARP таблицу:
Отключите преобразование ARP на устройстве с ifconfig:
Цель этой заметки – дать начальное представление о команде ip. Конечно необязательно полностью отказываться от использования ifconfig, но теперь программа не предустановлена по умолчанию во многие дистрибутивы. И нужно быть готовым использовать команду ip.
При написании этой заметки использовались материалы:
Связанные статьи:
- Нерекомендуемые сетевые команды Linux и их замена (99.6%)
- Как использовать команду ip в Linux (61.8%)
- Переход с устаревшей команды iwconfig (wireless_tools) на iw (59.5%)
- Ошибка «Authentication helper program /usr/lib64/squid/basic_ncsa_auth: (2) No such file or directory» (РЕШЕНО) (52.9%)
- Как узнать IP DNS сервера в Linux (52.4%)
- Ошибка «Cannot uninstall . It is a distutils installed project and thus we cannot accurately determine which files belong to it which would lead to only a partial uninstall.» (РЕШЕНО) (RANDOM — 0.5%)
Рекомендуемые статьи:
11 Комментарии
Все прекрасно работает,
ifconfig в debiane прекрасно работает от рута.
И да, он таки от обычного пользавателя пишет, что команда не найдена, но под рутом все прекрасно работает.
За всю историю юзанья, никогlа не сталкивался с невозможностью чего либо соорудить при работе с ifconfig.
Нет чтобы сделать аналог без больших изнений, нет бли =н непонятно для чего все усложнили. Отправилил эту команду туда же куда и NetworkManager
sudo apt-get install net-tools
Есть «философия UNIX». Следуйте ей, если работаете в этой системе.
Как говорится, со своим уставом в чужой монастырь не ходят.
Не превращайтесь в Windows 🙁
Цитаты хорошие, но суть претензий я не понял…
«Unix прост. Но надо быть гением, чтобы понять его простоту» — Деннис Ритчи.
«Unix не предназначен для ограждения своих пользователей от глупостей, поскольку это оградило бы их и от умных вещей» — Дуг Гвин.
«Unix никогда не говорит „пожалуйста“» — Роб Пайк.
Это ни в коем случае не претензия. Вы меня не правильно поняли.
Я про «Вместо net-tools теперь iproute2». iproute2 просто монстр какой-то. Всё может. От чего и предостеригали. Огромному большинству пользователей вполне хватало возможностей net-tools. Не так много как у великолепного и всемогущего iproute2, но… А тут выпиливают проверенный и привычный всем «инструмент» (в Debian 10) и ставят другой с «колосальными возможностями», которыми воспользуются всего-то 2, максимум 5 % ползователей данной «оси». Лично я был неприятно этим удивлён. Пришлось выпиливать эту «заботу» и возвращать старое и проверенное. Возможно я консерватор, но не надо «чинить то, что работает», не надо считать пользователя идиотом и делать ему хорошо. Он сам себе сделает хорошо. А если не сумеет сделать, значит оно ему не надо, не созрел ещё до этого. За чем усложнять-то всё? К примеру — route позволяет делать глупые вещи, такие как добавление множества маршрутов к одному месту назначения с той же метрикой. Да и ладно! Мозги зачем? Этак теперь nix стал win-подобным. Уберегает пользователя от всего! «Unix не предназначен для ограждения своих пользователей от глупостей, поскольку это оградило бы их и от умных вещей» — Дуг Гвин. «Unix никогда не говорит „пожалуйста“» — Роб Пайк. А теперь говорит. А теперь уберегает. Что сказать, превращается в систему для домохозяек, как хотел БГ. Хотя с другой стороны, это ХОРОШО. Лично меня это заставляет гораздо раньше, чем планировал, приняться изучать — Linux from Scratch где можно самому всё под себя. Ну… в общем мысль ясна 🙂
первое и самое важное, linux никогда не был unix, да и вообще linux — это не OS, это оболочка ядра(пакетный менеджер) и рассказывать что debian стал для домохозяек очень смешно, изначально для десктопа — ubuntu ( клон деба) а сам деб инетерсней использовать на серверах, и да , кто использует его на серверах — очень давно отказались от net-tools из-за дырявости данного пакета, + если ты уже так силь хочешь себе, скорее всего на десктоп unix — консервативный , тогда тебе нужно смотреть на FreeBSD и вообще на BSD системы, а насчет LFS какая разниза если ты влюбом варианте будетшь использовать одинаковое ядро ? и какая разница где ты будешь ставить пакеты в gentoo или в debian — хочешь позамарачивать, ставь в дебиане пакеты с исходного кода ))
«улыбнуло», но хотелось бы уточнить 🙂 …..
— «lnux» не nix подобная ли ось?
— более конкретно, не ядро ли этой оси «lnuux»?
— точно ли ubuntu клон debiana? может быть он на нём основан?
— в чём «дырявость» пакета net-tools? только конкретно;
— кто эти мифические парни, «кто использует его на серверах — очень давно отказались от net-tools из-за дырявости данного пакета»? В моём понимании, представлении и по опыту «локальных войн», сервер настроил, запустил, и забыл его ковырять. На сервере «не играются» с пакетами. На нём вообще не играются. Контролируют его работу.
И ещё, LFS и ставить пакеты в Debian из исходного кода, это так же как угол в 100 градусов и температура кипения воды. Цифра одна, а остальное не очень 😉
И кстати, коллега, теперь не eth0, а epn3s0. И полноценный su теперь не su, а su — 😉
Источник