Разное

Ifconfig command not found debian: команда не найдена» в Debian 9

Содержание

команда не найдена» в Debian 9

Команда ifconfig используется в операционных системах на Linux для настройки сети или просмотра информации о ней. В дистрибутиве Debian 9 она тоже раньше присутствовала, однако позже было принято решение заменить этот инструмент другими, более подходящими для этой процедуры утилитами. Впрочем, сейчас ничто не мешает вам вернуть эту команду в систему и продолжать использовать ее, нужно лишь провести процедуру обычной инсталляции этого компонента.

Исправляем ошибку «ifconfig: команда не найдена»

Если при попытке активировать команду в «Терминале» вы сталкиваетесь с ошибкой «ifconfig: команда не найдена», значит программное обеспечение, отвечающее за эту команду, отсутствует в системе. Сегодня мы бы хотели показать не только метод исправления этой неполадки, но и рассказать о более новом альтернативном варианте, заменяющим ifconfig. Давайте начнем с пошагового разбора первого способа.

Способ 1: Добавление утилиты ifconfig

Тем пользователям, которые привыкли задействовать именно эту команду, данный способ покажется оптимальным. Инструмент ifconfig не был удален вовсе, он просто отсутствует в стандартном наборе приложений системы, а добавить его можно, выполнив следующие инструкции:

  1. Для начала рекомендуем еще раз убедиться в том, что ifconfig недоступна. Запустите классический терминал любым удобным вариантом.
  2. Присвойте постоянные права суперпользователя, написав su -.
  3. Укажите пароль от рут-доступа и ожидайте появления новой строки ввода.
  4. Здесь просто введите ifconfig и нажмите на клавишу Enter.
  5. Если по-прежнему появляется уведомление об отсутствии команды в системе, установите набор компонентов net-tools, введя apt install net-tools.
  6. Ожидайте завершения добавления и настройки новых библиотек.
  7. По завершении инсталляции еще раз выполните ifconfig, чтобы убедиться в успешности операции.
  8. Узнать больше информации о правилах используемой утилиты поможет строка ifconfig --help.

Теперь вы знакомы с методом возвращения ранее стандартной утилиты в операционную систему Debian 9. Однако стоит понимать, что ей на замену пришел более удобный инструмент, из-за чего есть смысл разобраться в управлении с ним и оставить старые привычки.

Способ 2: Использование команды ip

Существует ряд причин, по которым команда ifconfig была заменена на ip в стандартной комплектации ОС на ядре Linux. Во-первых, она не разрешала настраивать систему контроля трафика, некорректно работала с некоторыми устройствами, не отображала их аппаратный адрес и не позволяла генерировать сетевые устройства TUN/TAP. Все эти недочеты были исправлены и доработаны, но уже внесены в функциональность ip. Например, просмотреть основную информацию по интерфейсу можно, введя ip a.

Выдача в «Терминале» после активации указанной выше команды будет соответствовать той, которая была бы показана при ifconfig, но с некоторыми дополнительными данными. Дополнительные сведения по протоколу IPv4 получаются через ip -4 a, а по IPv6 — ip -6 a. Еще присутствует возможность получить данные по конкретному интерфейсу, для этого вводится ip a show wlan0, а список работающих интерфейсов отображается после ip link ls up.

Одной из главных задач при настройке сети всегда считалась процедура присвоения определенного локального адреса конкретному интерфейсу. При использовании старой утилиты выглядела строка ввода так: ifconfig eth0 192.168.1.101, но в новом варианте пользователю потребуется ввести ip a add 192.168.1.101/255.255.255.0 dev eth0, обязательно указав при этом маску подсети. Обратить внимание следует и на возможное сокращение до ip a add 192.168.1.101/24 dev eth0.

Если надобность в присвоении интерфейса для IP-адреса отпала, такая цепь достаточно легко удаляется. Всего-то нужно указать ip a del 192.168.1.101/24 eth0, а в случае необходимости очистки всего списка взаимосвязей лучше использовать сразу ip -s -s a f to 192.168.1.0/24.

Команда ip также определяет управление таблицами маршрутизации. Таблицей маршрутизации называют список сетевых путей, которые предназначены для определения лучшего маршрута передачи сетевого пакета. Ознакомиться со всеми доступными таблицами позволяет строка ip r.

В ситуациях, когда требуется вручную перенаправить трафик, задействовать лучше тоже команду ip с определенными аргументами. Тогда строка обретет вид, например ip route add 192.168.5.0/24 dev eth0. Установленный маршрут также легко удаляется через ip route del 192.168.5.0/24 dev eth0.

Благодаря двум приведенным выше способам вы теперь знаете, как можно не только восстановить работу команды ifconfig в операционной системе Debian 9, но и какая есть достойная альтернатива этой устаревшей утилите. Использовать ли новый инструмент или вернуться к старому — решать только вам.

Мы рады, что смогли помочь Вам в решении проблемы.

Опишите, что у вас не получилось.
Наши специалисты постараются ответить максимально быстро.

Помогла ли вам эта статья?

ДА НЕТ

Ошибка ifconfig команда не найдена

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

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

Ошибка ifconfig команда не найдена

Первая причина почему вы можете получать эту ошибку, очень проста. Скорее всего, утилита установлена в вашей системе, но интерпретатор bash не может ее найти. Дело в том, что в Linux существует несколько папок для хранения исполняемых файлов. Все утилиты, которые может выполнять только суперпользователь расположены в каталоге /sbin или /usr/sbin.

Соответственно, обычному пользователю не нужно давать доступ к этим файлам, поэтому эти каталоги доступны только root, а в переменную среды PATH, из которой bash берет каталоги для поиска программ для пользователя они даже не добавлены. Проще говоря, вам достаточно только запустить программу от имени суперпользователя:

sudo ifconfig

Если даже после этого вы получаете эту ошибку, то это означает, что программа таки не установлена. Дело в том, что утилита довольно давняя, и некоторым разработчикам показалось, что нужно разработать что-то более совершенное, поэтому была разработана утилита ip. Она имеет больше возможностей и лучше. Но она непривычна и имеет сложный синтаксис. Теперь команда ip используется по умолчанию во многих дистрибутивах, а ifconfig удалена.

Таким образом, чтобы исправить ошибку ifconfig команда не найдена вам понадобиться установить пакет ней. Утилита находится в пакете net-tools. Для установки в Ubuntu выполните:

sudo apt install net-tools

В Fedora:

sudo dnf install net-tools

В CentOS:

sudo yum install net-tools

В ArchLinux:

sudo pacman -S net-tools

После завершения установки пакета, а это будет выполнено очень быстро, вы можете пользоваться утилитой и ошибки ifconfig command not found больше не будет. Только запускайте ее с помощью sudo. Если вы решили больше не использовать ifconfig смотрите статью про утилиту ip linux.

Выводы

В этой статье мы рассмотрели что делать если вы встречаете ошибку bash ifconfig команда не найдена, а также почему она возникает. Это одна из самых простых ошибок, исправить ее очень просто. Надеюсь, эта информация была вам полезной.

Debian 10 (кодовое название Debian Buster) наконец-то явился миру с удивительными классными функциями и новой темой оформления.

Однако вы, возможно, столкнулись с ошибкой при попытке проверить IP-адрес вашего сетевого интерфейса (ов) при выполнении команды ifconfig, что указывает на то, что «команда ifconfig не найдена».

-bash: ifconfig: command not found

В Debian 10 (начиная с Debian 9) команда ifconfig устарела.

Вот почему вы получаете сообщение об отсутствующей команде ifconfig.

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

# ip addr

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

Как видно из приведенного выше фрагмента, команда все равно будет отображать IP-адрес и другую статистику всех ваших сетевых интерфейсов.

Если вы все еще настаиваете на использовании старой доброй команды ifconfig, вам необходимо установить пакет net tools.

Пакет net-tools представляет собой инструментарий, который содержит спектр программ, которые составляют основу сетей Linux.

Он включают в себя следующее:

  • ifconfig
  • netstat
  • dig
  • hostname
  • route
  • arp
  • iptunnel

Исправление отсутствующей команды ifconfig в Debian

Чтобы исправить вышеуказанную ошибку, установите пакет net-tools, как показано далее:

# sudo apt install net-tools -y

Это запускает установку пакетов net-tools вместе с другими программными зависимостями, как показано далее:

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

После того, как установка завершится и будет успешной, попробуйте снова запустить команду ifconfig, и на этот раз ваша сетевая статистика будет отображаться на терминале, как показано в последнем разделе фрагмента выше.

Заключительные мысли

Это краткое руководство о том, как можно исправить ошибку команды ifconfig в Debian 10.

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

Кроме того, вы можете использовать команду ip addr, чтобы получить статистику интерфейсов без особых хлопот.

Если у вас есть какие-либо вопросы по этой теме, не стесняйтесь оставлять нам комментарии.

Спасибо за ваше время и не забудьте поделиться этим руководством в своих социальных сетях.

 

Поделитесь статьей:

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, eth2, eth3, eth4.

Примеры

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

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

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

ifconfig lo 192.168.20.2

Настройка сетевого интерфейса Debian посредством ifconfig

Команда ifconfig позволит сконфигурировать сетевой интерфейс, имеет очень широкие возможности, для подробной информации: man ifconfig.
В этой части настроек вам потребуются права суперпользователя, поэтому далее для изменения параметров сети необходимо использовать sudo.
Если компьютер имеет статический ip-адрес, не имеет доступа к другим сетям (в том числе интернет), то команда настройки сетевого интерфейса будет выглядеть следующим образом:

sudo ifconfig eth0 10.7.9.6 netmask 255.255.0.0 up

Подробности:

sudo ifconfig ethN параметры

Параметры:

down – остановить интерфейс:

sudo ifconfig eth0 down

up – поднять интерфейс:

sudo ifconfig eth0 up

IP-адрес – для его изменения используется следующий формат команды:

sudo ifconfig eth2 10.7.9.6

Маска подсети:

sudo  ifconfig eth2 netmask 255.0.0.0

Иногда администраторы сетей (в том числе и провайдеры) делают привязку к МАС-адресу сетевой карты. В случае смены сетевой карты или всего системного блока в такой сети ничего работать не будет. Можно позвонить и попросить обновить эту информацию, но днем провайдеру можно не дозвониться, а ночью он может спать. В таком случае можно изменить МАС-адрес на тот, что был у предыдущей сетевой карты, вручную.

Но сначала нужно выяснить мак-адрес по умолчанию при помощи уже знакомой вам команды ifconfig без параметров.

После этого дать команду, которая заменит текущий мак-адрес на новый:

sudo ifconfig eth2 hw ether 00:e0:4c:d0:99:28

Все действия можно выполнить одной командой, например так:

sudo ifconfig eth2 down && ifconfig eth2 10.7.9.7 netmask 255.0.0.0 hw ether 00:e0:4c:d0:99:28 up

&& – означает, успешное выполнение предыдущей команды. Т.е. если ifconfig eth2 down будет выполнено, передается на управление следующая команда ifconfig eth2 10.7.9.7 netmask 255.0.0.0 hw ether 00:e0:4c:d0:99:28 up

Все эти настройки действительны лишь до перезагрузки системы. Сделаем их постоянными следующим образом:

Настройка сети редактированием файла /etc/network/interfaces

1. Удалим Network Manager:

sudo apt-get remove network-manager

2. Введите команду ifconfig -a, открывающую перед вами список всех (активных и неактивных) сетевых устройств, которые именуются как eth0eth2eth3 и т.д.
еth0 — первая сетевая карта.
eth2 — вторая сетевая карта.
lo — локальная петля.
У меня локальная сеть подключена к сетевой карте eth2, поэтому и в примерах будет использоваться eth2.

3. Почти вся информация о настройках сети и методах ее активации, хранится в файле /etc/network/interfaces, именно с ним мы и будем работать, используя ваш любимый редактор.

Откройте и посмотрите на его содержание:

sudo gedit /etc/network/interfaces

auto lo – говорит о том, что интерфейс lo поднимается автоматически при загрузке системы.

Добавьте в файл строки:

auto eth2
iface eth2 inet static
address 10.7.9.6
netmask 255.0.0.0
gateway 10.0.0.1

auto eth2 – сетевая карта eth2 поднимается автоматически во время загрузки системы.
iface eth2 inet static – указывает, что интерфейс (iface) сетевой карты (eth2) находится в диапазоне адресов ipv4 (inet) состатическим ip (static).
address 10.7.9.6 – статический ip адрес, тут вы должны записать свой.
netmask — стандартная маска сети.
gateway – ip адрес основного шлюза.

Редактирование закончено. Сохраните и закройте файл.

5. Запросите у вашего провайдера услуг Интернет (Internet Service Provider, ISP) адреса основного и вспомогательного серверов DNS и опишите их в файле /etc/resolv.conf. На примере я укажу адрес своего днс-провайдера, вы должны ввести свои данные. Откройте файл для редактирования:

sudo gedit /etc/resolv.conf

Вставьте свои данные:

nameserver 10.0.0.1
nameserver 172.16.0.1

Сохраните и закройте файл.

6. Для настройки DHCP и получения сетевых параметров автоматически, нужно добавить две строчки (пусть у меня так поднимется карта eth0).

Откройте файл:

sudo gedit /etc/network/interfaces

Вставьте строчки следующего содержания:

auto eth0
iface eth0 inet dhcp

Ваш файл будет выглядеть так:

auto lo
iface lo inet loopback

auto eth2
iface eth2 inet static
address 10.7.9.6
netmask 255.0.0.0
gateway 10.0.0.1

auto eth0
iface eth0 inet dhcp

Если по каким-либо причинам вы хотите чтобы при загрузке у сетевой карты eth2 был другой MAC-адрес, для этого нужно дописать строчку hwaddress ether 00:e0:4c:d0:99:28:

auto eth2
iface eth2 inet static
address 10.7.9.6
netmask 255.0.0.0
gateway 10.0.0.1
hwaddress ether 00:e0:4c:d0:99:28

Вконтакте

Facebook

Twitter

Google+

LiveJournal

LinkedIn

Одноклассники

E-mail

Pinterest

Мой мир

Тяжелое расставание с Net-Tools / Хабр

Не секрет, что Net-Tools пора на почетную отставку. Да, многим админам и мне в том числе, до условного рефлекса Павлова знакомы команды ifconfig, route, netstat. На первый взгляд нет причин что-то менять, а лучшее как всегда враг хорошего.


Давайте узнаем почему Net-Tools уже не тот и как безболезненно с него перейти на iproute2 .

Что не так с ifconfig-ом?

Какие есть претензии к Net-Tools и насколько они обоснованны?

  • Использует устаревший ioctl, в то время как iproute2 использует актуальный netlink.
  • ifconfig показывает вторичные IP адреса как отдельные интерфейсы.
root ~ $ ifconfig dummy0:1 1.2.3.4 up
root ~ $ ifconfig dummy0
dummy0    Link encap:Ethernet  HWaddr FE:50:31:E6:14:17
          BROADCAST NOARP  MTU:1500  Metric:1
[...]

  • ifconfig не видит вторичные IP адреса без маркировки. Попробуйте запустить следующую команду и проверьте затем вывод в ifconfig. На интерфейсе eth0 IP адрес уже должен быть сконфигурен.
ip addr add 192.168.1.2/24 brd + dev eth0

  • ifconfig не знает о существовании CIDR. Только традиционные IPv4 адреса.
  • ifconfig не умеет показывать физический адрес туннельных интерфейсов tun, tap, вместо адреса сплошные нули.
root ~ $ ifconfig tun0
root ~ $ tun0      Link encap:UNSPEC  HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00
          inet addr:10.0.254.6  P-t-P:10.0.254.5  Mask:255.255.255.255 

  • ifconfig не позволяет создавать создавать tun, tap устройства и статичные l2tp, ipip, gre тунели.
  • ifconfig не показывает одноранговые IP адреса, (peer IP). Можно сконфигурировать одноранговую сеть на eth0, но ifconfig не покажет удаленный IP.
root ~ $ ip addr add 192.168.13.37/32 peer 192.168.13.38 dev eth0
root ~ $ ifconfig eth0 192.168.13.37

  • netstat, пытается быть дружественным в режиме показа статистики, показывая описание SNMP переменных, но не всегда это оправданно. По ссылке история о том, как понять, что такое timeout in transit. Кроме того такой вывод статистики нелегко скормить обработчику регулярных выражений.
Icmp:
    3327 ICMP messages received
    17 input ICMP message failed
    ICMP input histogram:
        destination unreachable: 3151
        timeout in transit: 56

  • netstat не выдает полную статистику, так как показывает только те SNMP переменные из /proc/net/{snmp,netstat}, которые определены в файле statistics.c.













КатегорияNetstat Nstat Разница
Ip617+11
Ip61432+18
Icmp629+23
Icmp62546+21
Tcp10100
Udp78+1
Udp648+4
UdpLite015+15
UdpLite607+7
TcpExt48116+68
IpExt1117+6

Все перечисленные недостатки обусловлены тем, что проект слишком долго не развивался — последний релиз был в 2011 г, а ядро и сетевой стек за это время ушли далеко вперед. Справедливости ради надо отметить, что в последнее время работа над проектом возобновилась, но вряд ли это приведет к существенным изменениям в кодовой базе.

Переучиваемся на iproute2

С iproute2 можно получить все то же, что с Net-Tools и даже больше, но только синтаксис и вывод команд на терминал будут отличаться. Если честно, читебельность некоторых команд ip наводит на мысль, что новое не всегда лучшее.

Следующие две команды призваны заменить ifconfig без дополнительных ключей.

(5:520)$ ip -c link
1: lo: <LOOPBACK,UP> mtu 16436 qdisc noqueue 
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: eth0: <BROADCAST,MULTICAST,UP> mtu 1500 qdisc pfifo_fast qlen 100
    link/ether 00:80:c8:f8:4a:51 brd ff:ff:ff:ff:ff:ff

С ключем -c вывод будет цветным и более читабельным.

(5:521)$ ip -c addr
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 16436 qdisc noqueue state UNKNOWN
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
    inet6 ::1/128 scope host
       valid_lft forever preferred_lft forever
2: eth0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc
      pfifo_fast state DOWN qlen 1000
    link/ether 00:80:c8:f8:4a:51 brd ff:ff:ff:ff:ff:ff
    inet 192.0.2.1/24 brd 192.0.2.255 scope global eth0

Просмотреть таблицу маршрутизации кратко.

(5:522)$ ip ro

Вся таблица маршрутизации.

(5:523)$ ip ro list table all
broadcast 127.255.255.255 dev lo  proto kernel  scope link  src 127.0.0.1 
local 10.0.0.1 dev eth0  proto kernel  scope host  src 10.0.0.1 
broadcast 10.0.0.0 dev eth0  proto kernel  scope link  src 10.0.0.1 
local 212.64.94.251 dev ppp0  proto kernel  scope host  src 212.64.94.251 
broadcast 10.255.255.255 dev eth0  proto kernel  scope link  src 10.0.0.1 
broadcast 127.0.0.0 dev lo  proto kernel  scope link  src 127.0.0.1 
local 127.0.0.1 dev lo  proto kernel  scope host  src 127.0.0.1 
local 127.0.0.0/8 dev lo  proto kernel  scope host  src 127.0.0.1
local ::1 dev lo  proto none  metric 0  pref medium
local fe80::5166:f6f:fea2:29f dev lo  proto none  metric 0  pref medium
local fe80::fa61:45ff:f1e0:109e dev lo  proto none  metric 0  pref medium
local fe80::f5c4:ff:efbf:0455 dev lo  proto none  metric 0  pref medium
fe80::/64 dev eth0  proto kernel  metric 256  pref medium
fe80::/64 dev ppp0  proto kernel  metric 256 linkdown  pref medium
ff00::/8 dev eth0  metric 256  pref medium
ff00::/8 dev ppp0  metric 256 linkdown  pref medium
ff00::/8 dev lo  metric 256  pref medium

Обратите внимание, что вывод команд из набора iproute2 зачастую не тривиально парсить в скрипте. Это не добавляет популярности мейнтейнерам, которые пытаются выкинуть Net-Tools из дистрибутива.

Просмотреть физические адреса соседних узлов из ARP кэша. Для наглядности варианты с Net-Tools и iproute2 пишем рядом.

(5:524)$ arp -a
(5:525)$ ip neigh show

Перейдем теперь к настройкам. Поднять интерфейс.

(5:501)$ ifconfig eth0 up
(5:502)$ ip link set eth0 up

Выключить интерфейс.

(5:503)$ ifconfig eth0 down
(5:504)$ ip link set eth0 down

Задать IP адрес.

(5:504)$ ifconfig eth0 192.168.0.77 netmask 255.255.255.0 broadcast 192.168.0.255
(5:505)$ ip addr add 192.168.0.77/24 broadcast 192.168.0.255 dev eth0

В отличии от Net-Tools, iproute2 позволяет также удалить IP адрес.

(5:506)$ ip addr del 192.168.0.77/24 dev eth0

Добавить вторичный адрес.

(5:507)$ ifconfig eth0:1 10.0.0.1/8
(5:508)$ ip addr add 10.0.0.1/8 dev eth0 label eth0:1

Добавляем маршрут.

(5:509)$ route add -net 192.168.4.0/24 dev eth3
(5:510)$ ip route add 192.168.4.0/24 dev eth3

И удаляем его же.

(5:511)$ route del -net 192.168.4.0/24 dev eth3
(5:512)$ ip route del 192.168.4.0/24 dev eth3

Добавляем маршрут по умолчанию (a. k. a. gateway).

(5:513)$ route add default gw 192.0.2.1
(5:514)$ ip route add default via 192.0.2.1

Мы рассмотрели только базовые команды мониторинга и настройки, чуть менее чем полный список команд iproute2 по ссылке.

Nstat вместо netstat

Nstat в отличие от своего более старого аналога выдает только SNMP метрики в строго определенном порядке и выдает их все.

(5:526)$ nstat -a
#kernel
IpInReceives            69783          0.0
IpInDelivers            69469          0.0
IpOutRequests           68643          0.0
...

Еще одно отличие состоит в том, что netstat показывает кумулятивное значение метрик с момента запуска ОС, в то время как nstat по умолчанию показывает дельту значений и поэтому при первом запуске обеих команд значения будут одинаковы. Для того, чтобы nstat повел себя привычно, надо запускать его с ключем -s.

(5:527)$ nstat -sa #кумулятивные значения

С ключем --zero получаем только нулевые значения.

(5:528)$ nstat --zero
#kernel
IpInReceives                0              0.0
IpInHdrErrors               0              0.0
IpInAddrErrors              2              0.0
IpForwDatagrams             0              0.0
IpInUnknownProtos           0              0.0
IpInDiscards                0              0.0
(...)

Не знаю, хорошо ли это или плохо, но еще nstat умеет выдавать результат в формате json.

(5:528)$ nstat --json
{"kernel":{"TcpInSegs":2,"TcpOutSegs":4,"Ip6InReceives":2,"Ip6InDelivers":2,"Ip6OutRequests":4,"Ip6InOctets":776,"Ip6OutOctets":770,"Ip6InNoECTPkts":2,"TcpExtTCPHPHits":1,"TcpExtTCPHPAcks":1,"TcpExtTCPOrigDataSent":2}}

Ss вместо netstat

Команда ss с лихвой перекрывает функционал Netstat, по части вывода информации о сетевых подключениях, делает это быстрее и копает глубже. Пока netstat за каждым чихом лезет в /proc и теряя темп, ss через Netlink интерфейс быстро качает информацию из ядра.

(5:529)$ sudo ss --summary
Total: 348 (kernel 352)
TCP:   15 (estab 9, closed 1, orphaned 0, synrecv 0, timewait 1/0), ports 0

Transport Total     IP        IPv6
*         352       -         -        
RAW       1         0         1        
UDP       3         3         0        
TCP       14        12        2        
INET      18        15        3        
FRAG      0         0         0 

Отрадно, что синтаксис у обеих команд схожий, поэтому привыкать долго не придется.

(5:530)$ ss -t
State      Recv-Q Send-Q    Local Address:Port        Peer Address:Port   
ESTAB      0      0           192.168.1.2:43839     108.160.162.37:http    
ESTAB      0      0           192.168.1.2:43622     199.59.149.201:https   
ESTAB      0      0           192.168.1.2:33141      83.170.73.249:ircd    
ESTAB      0      0           192.168.1.2:54028     74.125.135.125:xmpp-client

Однако ss позволяет залезть буквально под капот tcp соединениям.

(5:531)$ sudo ss --tcp --info |tail -n 1
         cubic wscale:4,7 rto:280 rtt:71.541/13.487 ato:40 mss:1460 cwnd:100 bytes_acked:465157 bytes_received:513194 segs_out:604 
segs_in:937 send 16.3Mbps lastsnd:86100 lastrcv:85680 lastack:5050 pacing_rate 32.7Mbps rcv_rtt:12120 rcv_space:186376

Тут есть все: таймеры подтверждения доставки, дорога туда-обратно, механизм контроля перегрузки канала cubic и много чего еще.

Тяни-толкай вокруг Net-Tools

По этому вопросу консенсуса в Linux сообществе пока нет. В OpenSuse в 2009 г. состоялся пленум завязалась дискуссия по этому вопросу, но на жесткие меры не пошли, а вот RedHat и Fedora в 2011 г. решили, что с них хватит, и уже начиная с 7-й версии RHEL не ставит Net-Tools. В 7.1 была безуспешная попытка его вернуть, что показывает неизбывную популярность Net-Tools. В Debian Linux после неудачной попытки в 2009 г. объявить Net-Tools устаревшим и начать процесс его замены, несколько лет об этом не вспоминали, и вот недавно спор возобновился с новой силой. Дело в том, что в Debian до сих пор значительное количество пакетов от него зависит. В Gentoo как всегда решаешь ты, ставить или нет, однако зависимостей по сабжу нет.

(5:532)$ equery depends net-tools
 * These packages depend on net-tools:
net-misc/openvpn-2.3.12 (!iproute2 ? sys-apps/net-tools)

Мне лично кажется, что пока нет причин отказываться от Net-Tools там, где это возможно. Если у вас два с половиной сетевых интерфейса на локалхосте, включая loopback, вы спокойно можете продолжать использовать эти программы, но на приличном боевом или даже на тестовом сервере iproute2 все же будет предпочтительнее, как бы пальцы ни дергались набрать привычные старые команды. Рано или поздно все Linux дистрибутивы и даже Debian перестанут ставить этот пакет по умолчанию, и тогда знание команд из набора iproute2 вполне пригодится, хотя этот момент может наступить еще не скоро.

Использованные материалы

Команда ifconfig — примеры использования

Команда ifconfig очень долго использовалась для настройки сети в операционных системах семейства Linux. С помощью нее вы можете включать или выключать сетевые интерфейсы, настраивать их параметры, переключать режимы и многое другое. Потом была разработана утилита ip, которая содержит больше функций, и имеет совсем другой синтаксис.

Но многие пользователи привыкли использовать ifconfig, тем более, что ее синтаксис более просто. Прочитать про утилиту ip вы можете в статье утилита ip в Linux. В этой же статье мы рассмотрим как используется ее более старый аналог — утилита ifconfig linux.

Содержание статьи:

Установка ifconfig

С появлением утилиты ip, ifconfig была удалена из многих дистрибутивов. Но в большинстве она все еще поставляется по умолчанию. Установка ifconfig в Ubutnu выполняется командой:

sudo apt install net-tools

В Arch Linux:

sudo pacman -S net-tools

Синтаксис ifconfig

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

$ ifconfig опции интерфейс команда параметры адрес

Интерфейс — это сетевой интерфейс, о котором вы хотите посмотреть информацию или изменить его параметры. Все это можно сделать с помощью команд. Давайте рассмотрим основные из них:

  • up — включить интерфейс;
  • down — выключить интерфейс;
  • (-)arp — включить или выключить использование протокола ARP для интерфейса;
  • (-)promisc — включить или выключить неразборчивый режим для интерфейса;
  • (-)allmulti — включить или выключить режим multicast;
  • metric — изменить параметр metric;
  • mtu — изменить максимальный размер пакета;
  • netmask — установить маску сети;
  • add — добавить ip адрес для интерфейса;
  • del — удалить ip адрес интерфейса;
  • media — установить тип внешнего протокола;
  • [-]broadcast — установить широковещательный адрес или отключить эту функцию;
  • hw — установить MAC адрес для интерфейса;
  • txqueuelen — размер очереди интерфейса;

Параметры и адрес необязательны и зависят от используемой команды. А опции влияют на поведение утилиты более глобально. Опций всего несколько, рассмотрим их:

  • -a — применять команду ко всем интерфейсам, например, полезно, если вы хотите отключить или включить все сетевые интерфейсы;
  • -s — вывести краткий список интерфейсов.

Обратите внимание, что для использования утилиты вам понадобятся права суперпользователя. А теперь давайте рассмотрим несколько примеров.

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

Для начала давайте просмотрим список интерфейсов, подключенных к вашей системе и активированных в данный момент. Для этого достаточно выполнить команду без параметров:

sudo ifconfig

Вы можете вывести только информацию про определенный интерфейс, например, про eth0:

sudo ifconfig eth0

Чтобы посмотреть список интерфейсов с минимальной информацией о них используйте опцию -s:

sudo ifconfig -s

С помощью опции -a вы можете вывести все интерфейсы, даже те, которые сейчас отключены:

sudo ifconfig -a

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

sudo ifconfig eth0 up

Чтобы отключить — down:

sudo ifconfig eth0 down

Вы можете получить более подробную информацию об ошибках с помощью опции -v:

sudo ifconfig -v

Включить поддержку протокола ARP для интерфейса:

sudo ifconfig eth0 arp

Отключить поддержку ARP:

sudo ifconfig eth0 -arp

Включить неразборчивый режим, в котором интерфейс принимает все, проходящие через него пакеты:

sudo ifconfig eth0 promisc

А чтобы отключить:

sudo ifconfig eth0 -promisc

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

sudo ifconfig eth0 netmask 255.255.255.0

Чтобы добавить ip адрес для интерфейса используйте просто укажите его после интерфейса:

sudo ifconfig eth0 192.168.1.11

Команда broadcast позволяет установить широковещательный адрес:

sudo ifconfig eth0 broadcast 192.168.1.255

 

С помощью команды hw вы можете установить аппаратный адрес или так называемый, MAC адрес. Здесь, кроме самого адреса нужно указать тип сети. Это ether для проводного подключения Ethernet, ax25 (AMPR AX.25), ARCnet и netrom (AMPR NET/ROM). Например:

sudo ifconfig eth0 hw ether BC:AE:C5:BE:8B:B7

С помощью mtu вы можете изменить максимальный размер пакета:

sudo ifconfig eth0 mtu 1000

Это были все основные примеры. В отличие от ip, команда ifconfig не содержит всех необходимых возможностей для полноценной настройки сети и поэтому вам еще придется использовать такие утилиты, как route или arp.

Фактически, настройка ifconfig сети будет выполняться в несколько команд. Допустим, мы будем настраивать интерфейс eth0:

sudo ifconfig eth0 up
$ sudo ifconfig eth0 add 192.168.1.10
$ sudo ifconfig eth0 netmask 255.255.255.0
$ sudo ifconfig eth0 broadcast 192.168.1.255
$ sudo route add default gw 192.168.1.1

Здесь мы используем ip адрес для компьютера 192.168.1.10, сетевую маску 255.255.255.0 и шлюз для выхода в сеть 192.168.1.1. После этих настроек осталось указать сервер DNS и интернет должен работать.

Выводы

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

Команда Debian ifconfig не найдена Решено

Команда Debian ifconfig не найдена. Не можете найти ifconfig в Debian? Вероятно, вы установили минимальную установку без установки стандартных системных утилит. Но действительно ли вам нужен ifconfig? Если это просто проверка IP-адресов, ознакомьтесь с альтернативой Debian ifconfig ниже.

Debian ifconfig

Сначала давайте установим команду ifconfig. В конце концов, я полагаю, именно так вы нашли эту статью.Я предполагаю, что у вас есть права суперпользователя или администратора на компьютере. Без установленных стандартных системных утилит практически все необходимое придется устанавливать самостоятельно. Пакет, который вам нужно установить, — это net-tools.

apt-get install net-tools

Теперь у вас есть команда ifconfig. Если вы не возражаете против отсутствия Debian ifconfig, есть встроенная опция. Команда IP должна находиться в папке sbin независимо от того, установлены ли системные инструменты или нет. Полная команда для отображения той же информации в ifconfig:

ip addr show

Эту команду можно сократить до:

ip a

Это точно так же, как команда ip addr show.Поэтому, если в Debian нет ifconfig, попробуйте вместо этого использовать команду ip. Установка не требуется. Он будет во всей установке. Однако размер пакета net-tools составляет всего около 500-600 КБ. Таким образом, он вряд ли займет место на вашем жестком диске. И я думаю, все сводится к предпочтениям, если вы хотите использовать ifconfig или ip.

Некоторые предпочитают не устанавливать стандартные системные утилиты. Если вы решили не устанавливать его, ваши обновления безопасности в конфигурации apt (репозиторий) могут быть не установлены. И я бы проверил, добавлен ли репозиторий безопасности в список репозиториев.

Это моя статья о Debian ifconfig not found. Если вы испытываете медленный вход по SSH, проверьте медленный вход по SSH в системах на основе Debian.

Продолжить чтение

.Ошибка команды

не найдена в Linux (решено)

Сегодня я настраивал новый облачный сервер, и мне нужно было использовать классическую команду ifconfig. Я не смог это сделать из-за этой ошибки:

 ifconfig: command not found 

Кажется, CentOS 7.x не предлагает ifconfig, установленный по умолчанию на минимальном ISO-образе, который я использовал.

Команда ifconfig больше не устанавливается по умолчанию в CentOS, поскольку она была заменена командой ip и помечена как устаревшая.

Как исправить ошибку ifconfig: command not found?

Даже если это официально не рекомендуется, если вы выросли с помощью команды ifconfig, как я, здесь вы найдете руководство по ее установке в CentOS 7.x и последних версиях Ubuntu.

Установите ifconfig на CentOS 7.x

Перво-наперво. Как узнать, в каком пакете есть команда ifconfig?

Используя команду yum provides, вы можете легко узнать точное имя пакета, который предоставляет системная утилита ifconfig.

 [[email protected] ~] # yum whatprovides ifconfig 
net-tools-2.0-0.24.20131004git.el7.x86_64: Основные сетевые инструменты
Репозиторий: @base
Результат получен из:
Имя файла: / usr / sbin / ifconfig

Как видите, в CentOS Linux команду ifconfig можно найти внутри RPM-пакета net-tools, доступного в базовом репозитории CentOS по умолчанию. С помощью yum это можно легко установить за секунды:

  yum install net-tools -y  

Вот и все, теперь вы можете использовать команду ifconfig.

Установить ifconfig в Ubuntu и других дистрибутивах на основе Debian.

В последних версиях Ubuntu и других дистрибутивах на основе Debian эта команда также устарела. В том же случае, что и CentOS, это легко исправить с помощью команды apt-get:

 apt-get install net-tools 

Вот и все.

Заключение

Я показал простой и эффективный способ установки команды ifconfig в большинстве популярных дистрибутивов Linux.

Для этого не требуется никаких специальных технических знаний, только умение использовать yum или apt-get из вашего терминала.

ifconfig: command not found — распространенная ошибка в наши дни для тех, кто привык к команде ifconfig.

Однако новой заменой команды является команда ip, поэтому, если вы не задумывались о том, чтобы начать ее использовать, вам следует.

.

Fix Ifconfig Команда не найдена в операционных системах Linux

Это простое руководство по исправлению команды ifconfig, отсутствующей в операционной системе Linux. Независимо от того, какую операционную систему Linux вы используете, эти советы помогут вам решить эту проблему.

ifconfig — это утилита системного администрирования в Unix и Linux подобных операционных системах для настройки сетевого интерфейса. Утилита представляет собой инструмент интерфейса командной строки, который также используется в сценариях запуска многих операционных систем.Он имеет функции для настройки, управления и запроса параметров сетевого интерфейса TCP / IP. Ifconfig изначально появился в 4.2BSD как часть пакета BSD TCP / IP.

Как вы знаете, ifconfig означает «конфигурация интерфейса». Он используется для просмотра и изменения конфигурации сетевых интерфейсов в вашей системе. Поэтому я рекомендую вам прочитать эту информативную статью о команде ifconfig. Автор попытался объяснить 15 важных команд ifconfig для пользователей Linux.

Связанные : 15 полезных команд «ifconfig» для настройки сетевого интерфейса в Linux Благодаря Ravi Saive , автору этой публикации

Когда вы вводите ifconfig для проверки сетевой конфигурации вашей системы, появляется сообщение о том, что программа ifconfig в настоящее время не установлена. Чтобы исправить ошибку ifconfig, просто установите пакет net-tools в вашей системе.

Команда Fix Ifconfig не найдена в Linux Ubuntu

1. Чтобы установить net-tools, откройте терминал и введите « sudo apt-get install net-tools » в Ubuntu Linux.Затем введите пароль администратора, чтобы начать процесс установки net-tools.

Примечание: Ваша система должна иметь сетевое соединение с выходом в Интернет. Без интернета он не может загрузить пакет net-tools из онлайн-репозитория linux.

Как установить отсутствующую команду ifconfig в Linux — Technig

2. После успешного завершения установки net-tools введите ifconfig, чтобы проверить, работает она или нет. Теперь он должен работать без проблем.

Связанные вопросы:

  • Команда ifconfig не найдена RedHat
  • установить ifconfig Debian
  • команда ifconfig не найдена kali

Да, работает отлично. Теперь вы можете увидеть конфигурацию сетевого интерфейса Linux.

Программа ifconfig в настоящее время не установлена ​​- Конфигурация сетевого интерфейса Linux — Technig

Вот и все, надеюсь, вы быстро исправите ошибку команды ifocnfig. Попробуйте прокомментировать нас в случае возникновения проблем.Мы поможем вам исправить это в кратчайшие сроки.

.

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

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