Команда ethtool используется для просмотра и изменения параметров устройства Ethernet, таких как скорость и режим работы.
Ethernet карты позволяют вашему компьютеру эффективно общаться по сети. Утилита ethtool предоставляет много информации о устройствах Ethernet, подключенных к вашей системе. Кроме того, вы можете c помощью нее изменить параметры Ethernet карты такие как Auto-Negotiation, скорость, дуплекс и Wake-on LAN.
Голоссарий
- Auto-Negotiation: это функция сетевых устройств, которая позволяет двум устройствам автоматически договориться о наилучших параметрах соединения, таких как скорость передачи данных, дуплексный режим (полудуплекс или полный дуплекс), а также некоторые другие характеристики линии связи.
- Скорость (Speed): По умолчанию используется максимальная скорость, но вы можете изменить ее в соответствии с вашими потребностями.
- Полу-дуплекс ( Half duplex): это способ передачи данных, при котором информация может передаваться и приниматься в двух направлениях, но только в один конкретный момент времени происходит либо передача, либо прием данных.
- Полный дуплекс ( Full duplex) : это способ передачи данных, который позволяет устройству отправлять и принимать пакеты одновременно.
- Wake-on LAN (WoL): это технология, позволяющая удаленно включать компьютер через локальную сеть путем отправки специального пакета данных, известного как «magic packet».
- Link Detection: это процесс обнаружения наличия связи между устройствами в сети.
Поиск доступных сетевых интерфейсов
Во -первых, вам нужно знать имя вашей сетевой интерфейсной карты. Для этого выполните следующую команду:
ip a

Как вы можете видеть в примере выше, у нас есть три сетевых устройства. Таким образом, в зависимости от доступных устройств на вашем компьютере, определим, на каком сетевом устройстве мы будем менять параметры. В моем случае это enp0s3.
Узнать информацию о сетевом интерфейсе
После того, как у вас будет имя сетевого интерфейса, вы можете узнать данные о нем, используя команду ethtool.
Когда вы выполняете команду ethtool с именем устройства, она отображает свойства карт, такие как скорость, Wake-on LAN, дуплекс и статус link detection.
sudo ethtool enp0s3

Поучение информации о драйвере и прошивках
Вы можете проверить сведения о драйвере, прошивке и шине, используя команду Ethtool с опцией -i, как показано ниже.
sudo ethtool -i enp0s3

Изменение настроек сетевой карты
Опция -s используется для изменения текущих настроек путем определения значений для скорости, дуплекса и auto-negotiate в следующем формате:
sudo ethtool -s [device_name] speed [10/100/1000] duplex [half/full] autoneg [on/off]
Например, чтобы установить скорость на 100 МБ/с, режим полного дуплекса и включенным auto-negotiate, можно использовать следующую команду:
sudo ethtool -s enp0s3 speed 100 duplex full autoneg on
Так же, вы можете изменить каждую опцию индивидуально:
sudo ethtool -s enp0s3 speed 100
sudo ethtool -s enp0s3 duplex full
sudo ethtool -s enp0s3 autoneg on
Замечание: после изменения параметров, сетевой интерфейс может быть переведен автоматическив выключенное состояние. И вам необходимо будет его поднять следующей командой:
sudo ifup enp0s3
или
sudo ip link set up enp0s3
Стоит заметить, что все настройки, которые вы измените с помощью команды ethtool не сохранятся после перезагрузки.
Сохранение настроек после перезагрузки.
Чтобы сделать пользовательские настройки постоянными, необходимо внести эти значения в файле сетевой конфигурации. В зависимости от дистрибутива, это могут быть разные файлы.
Для дистрибутивов на базе Red Hat используется файл /etc/sysconfig/network-scripts/ifcfg-eth-id и добавить в него следующую строку:
ETHTOOL_OPTS="speed 100 duplex full autoneg on"
Для дистрибутивов на основе Debian/Ubuntu необходимо отредактировать файл /etc/network/interfaces и добавить в него следующую строку:
post-up ethtool -s enp0s3 speed 100 duplex full autoneg on
Заключение
Ethtool предоставляет много вариантов настройки сетевых интерфейсов и он действительно является одним из необходимых инструментов для работы системного администратора.
Was this helpful?
0 / 0