Для обмена данными между хостами от одного компьютера к другому используется технология, которая называется ethernet. Чтобы обмен данными стал возможен, как минимум необходимо настроить сеть между двумя устройствами.
В операционных системах linux для настройки сети есть сетевая утилита ifconfig, она позволяет смотреть сетевые настройки, а также изменять их, делать свою конфигурацию, назначать IP, шлюз, маску подсети и даже мак-адрес.
Содержание
Установка
Сейчас все больше дистрибутивов linux отказываются от установки утилиты ifconfig по умолчанию. Поэтому чтобы ее использовать нужно предварительно установить. Это связано с тем что вышла более новая команда "ip" и ifconfig считается устаревшей утилитой, однако пользователи линукс уже привыкли использовать ее и выучили некоторые параметры этой команды.
Чтобы определить установлена ли сетевая утилита достаточно ввести ее название без аргументов.
ifconfig
Утилита не установлена, если оболочка командной строки выдаст одно из сообщений:
- команда не найдена;
- command not found;
- 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
Как видно на скриншоте выше команда без ключей покажет информацию о всех включенных интерфейсах.
Здесь:
- 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