Перейти к содержанию

Изменение скорости порта, скорость автосогласования (10Mb, 100Mb, 1000Mb)

Материал из OpenWrt Wiki

Проблема соединения: необходимо изменить скорость порта с 1000Mb на 100Mb, чтобы прошло согласование с провайдером.

https://github.com/openwrt/openwrt/issues/8930

Чтобы настроить скорость Ethernet , используйте команду в SSH или консоли:

ethtool -s <interface> speed <speed> duplex <duplex> autoneg <on|off>

например ethtool -s wan speed 100 duplex full autoneg off.

Чтобы сделать настройку постоянной, создайте скрипт оболочки, запускаемый при загрузке, или настройте её в /etc/config/network файле, добавив параметры autoneg, speed, и duplexк соответствующему интерфейсу.

Пакет ethtool должен быть установлен через System -> Software или opkg update && opkg install ethtool.

Временная настройка (SSH)

  1. Определите интерфейс: используйте ethtool <interface_name> для просмотра доступных настроек. eth0 - WAN, eth1 - LAN Обратите внимание на режимы работы порта маршрутизатора и сетевого устройства с другой стороны, для выбора дальнейших настроек (Supported link modes, Supported auto-negotiation, Link partner advertised link modes, Link partner advertised auto-negotiation). Выбирайте скорости, которые поддерживает и порт ваше маршрутизатора (Supported lin) и с порт другой стороны (Link partner).
  2. Установите скорость: выполните команду, чтобы установить желаемую скорость, дуплекс и автосогласование.
ethtool -s eth0 speed 100 duplex full autoneg on
 или
ethtool -s eth0 speed 100 duplex full autoneg off
  • Замените eth0 на имя необходимого интерфейса (например, eth1).
  • Замените 100на желаемую скорость (например, 10, 1000).
  • Заменить fullна halfили full.
  • Замените offна on, чтобы снова включить автоматическое согласование.

Постоянная настройка (варант 1, Local Startup)

Если проверили работу временной настройки и она устраивает, то ее можно прописать в автозагрузку:

System -> Startup -> Local Startup

Пропишите команду ethtool с аргументами перед командой exit 0, сохраните и перезагрузите маршрутизатор, чтобы изменения вступили в силу.

Постоянная настройка (варант 2, /etc/config/network)

Измените конфигурацию сети:

  • Откройте файл конфигурации сети: vi /etc/config/network или удаленно через SCP.
  • Найдите строку для нужного вам интерфейса (например, eth0).
  • Добавьте параметры autoneg, speed, и duplexв эту строку:
config device
	option name 'eth0'
        option proto 'dhcp'
        option autoneg '1'     # 1 for on, 0 for off
        option speed '100'     # Example: 1000 for 1000Mbps
        option duplex 'full'   # Example: full for full-duplex
        # Other options...

описание настроек раздела config device: https://openwrt.org/docs/guide-user/network/network_configuration#section_device

  • Сохраните файл и выйдите из редактора.
  • Перезагрузите маршрутизатор, чтобы изменения вступили в силу.

Важные примечания

  • Автоматическое согласование: Отключение автоматического согласования может вызвать проблемы, если устройство на другом конце не настроено аналогичным образом.
  • Совместимость: Проверьте поддерживаемые вашим устройством режимы соединения, ethtool <interface_name> чтобы убедиться, что поддерживаемая вами скорость поддерживается.
  • Скрипт запуска (альтернативный): Вы также можете создать собственный скрипт, который запускается во время загрузки и использует ethtool команду для применения настроек.