Битлента
Сетевые команды и утилиты5 мин чтения·

ethtool eth0: как проверить скорость, дуплекс и счётчики ошибок кабельного подключения

Как с помощью ethtool в Linux узнать согласованную скорость порта, режим дуплекса и состояние линка, а также прочитать счётчики ошибок через ip -s link.

Кратко

Команда ethtool с именем интерфейса показывает согласованную скорость, дуплекс и наличие линка кабельного порта. Скорость ниже ожидаемой и половинный дуплекс обычно указывают на кабель, порт или настройки на другом конце.

Что покажет ethtool и в каких случаях он нужен

Если по кабелю скорость заметно ниже той, что заявлена в договоре, первым делом стоит проверить, на какой скорости вообще работает порт компьютера. Ответ даёт ethtool: он читает параметры сетевой карты и сообщает, что именно согласовано с коммутатором или роутером. Wi-Fi-адаптеры такие сведения выдают ограниченно, поэтому утилита нужна в первую очередь для проводных интерфейсов.

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

Имя интерфейса узнайте командой ip link. В современных системах оно бывает вида eth0, enp3s0 или похожим: в нём закодировано место устройства на шине. Дальше все примеры будут с условным именем eth0, подставьте своё.

Читаем вывод ethtool eth0

Выполните ethtool eth0. Для проверки скорости достаточно нескольких строк, остальное можно пропустить.

ПолеЧто означает
SpeedСогласованная скорость, например 1000Mb/s
DuplexFull или Half, режим передачи
Auto-negotiationon, если стороны договариваются автоматически
Link detectedyes, если кабель подключён и на другом конце есть устройство
Supported link modesРежимы, которые поддерживает карта
Advertised link modesРежимы, которые карта предлагает партнёру

Ожидаемая картина для современной домашней сети: Duplex Full, Auto-negotiation on, Link detected yes. Скорость зависит от оборудования: если порт карты и порт роутера гигабитные, а кабель исправен, согласуется 1000Mb/s. Если же вы видите 100Mb/s на гигабитном оборудовании, причину обычно ищут в кабеле, разъёмах или портах.

Если Speed показывает Unknown! и Link detected no, соединения нет: кабель выдернут, устройство на другом конце выключено либо кабель повреждён.

Типичные находки и что с ними делать

Несколько ситуаций встречаются чаще остальных. Для каждой есть простая последовательность проверок.

  • Скорость 100Mb/s вместо 1000Mb/s. Проверьте кабель: для гигабитной скорости нужны исправные пары по всей длине. Попробуйте другой кабель и другой порт на роутере. Старый или плохо обжатый кабель способен работать на меньшей скорости, но не на гигабитной.
  • Duplex Half. Это почти всегда признак проблемы согласования. Проверьте, что на обоих концах включено автосогласование, и замените кабель.
  • Link detected no при подключённом кабеле. Проверьте индикаторы на разъёме, другой порт и другой кабель, затем перезапустите устройство на другом конце.
  • Скорость периодически меняется. Это сигнал о контакте: гнездо разболталось или кабель повреждён. Если связь то пропадает, то возвращается, посмотрите журнал ядра командой dmesg: там фиксируются события потери и восстановления линка.

Фиксировать скорость вручную ключом -s без необходимости не стоит. Автосогласование для современного оборудования работает штатно, а принудительные значения на одной стороне при автоматике на другой дают как раз половинный дуплекс.

🛡️ Остались проблемы с соединением?
Можно пользоваться постоянно: российские приложения работают, включать и выключать ничего не нужно. Без карты и регистрации, настройка за пару минут.
Попробовать бесплатно

Счётчики ошибок: ip -s link и ethtool -S

Скорость порта не показывает, теряются ли пакеты. Для этого читают счётчики интерфейса. Самая переносимая команда — ip -s link show dev eth0. В выводе два блока, RX для принятого и TX для отправленного, со столбцами bytes, packets, errors, dropped и другими.

Растущие errors на приёме чаще всего указывают на физический уровень: кабель, разъём, помехи. Значение dropped говорит, что пакеты были отброшены системой, и причин у него больше: переполнение очередей, фильтры, нехватка ресурсов. Одно ненулевое значение не повод для тревоги: счётчики копятся с момента загрузки драйвера.

Правильный способ оценки — сравнение во времени. Запишите значения, подождите, понаблюдайте при нагрузке и посмотрите, растут ли ошибки. Если счётчики стоят на месте, проблема не здесь.

Подробный список счётчиков конкретной карты даёт ethtool -S eth0. Их названия зависят от драйвера и у разных моделей отличаются, поэтому ищите строки со словами error, crc, drop. В macOS близкую информацию по числу ошибок выводит netstat -i, а ethtool там отсутствует.

Порядок диагностики проводного подключения

Соберите проверки в одну последовательность, чтобы не искать причину наугад.

  1. ethtool eth0 — есть ли линк и какая скорость согласована.
  2. ip -s link show dev eth0 — растут ли ошибки на приёме и передаче.
  3. Замена кабеля и порта на роутере — меняется ли результат.
  4. ping шлюза с большим числом пакетов — есть ли потери внутри локальной сети.
  5. Тест скорости внутри сети, например iperf3, — проверяет канал без влияния интернета.

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

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

Что ethtool не покажет

Важно понимать границы утилиты. Она отвечает за состояние порта и карты, но не измеряет реальную скорость передачи данных. Согласованная скорость 1000Mb/s означает возможности канала, а не то, что файлы будут копироваться именно с такой скоростью: на результат влияют диск, процессор, нагрузка на сеть и настройки программ.

Не покажет она и качество маршрута до сайтов в интернете. Если медленно открываются только внешние ресурсы, а внутри сети всё быстро, ищите причину дальше роутера. Вообще, не ожидайте от одной команды ответа на все вопросы: ethtool закрывает лишь начальный участок цепочки между компьютером и ближайшим устройством.

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

🛡️ Остались проблемы с соединением?
Можно пользоваться постоянно: российские приложения работают, включать и выключать ничего не нужно. Без карты и регистрации, настройка за пару минут.
Попробовать бесплатно
ethtoolскоростькабельlinux

Часто задаваемые вопросы

Читайте также