Настройка ethernet в линукс

Network configuration (Русский)/Ethernet (Русский)

Состояние перевода: На этой странице представлен перевод статьи Network configuration/Ethernet. Дата последней синхронизации: 12 июля 2021. Вы можете помочь синхронизировать перевод, если в английской версии произошли изменения.

В статье описана настройка Ethernet; общие вопросы по настройке подключения к сети можно найти в статье Настройка сети.

Драйвер устройства

Проверка состояния

udev должен автоматически определить контроллер сетевого интерфейса и загрузить необходимый модуль ядра во время загрузки системы. Найдите пункт «Ethernet controller» (или похожий) в выводе команды lspci -v . В нём содержится информация о модуле ядра с драйвером интерфейса:

02:00.0 Ethernet controller: Attansic Technology Corp. L1 Gigabit Ethernet Adapter (rev b0) . Kernel driver in use: atl1 Kernel modules: atl1

Выполните dmesg | grep имя-модуля чтобы проверить, был ли драйвер загружен:

. atl1 0000:02:00.0: eth0 link is up 100 Mbps full duplex

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

Загрузка модуля

Найдите в интернете необходимый для вашего чипсета модуль/драйвер. Некоторые распространённые модули — 8139too для чипсетов Realtek, sis900 для чипсетов SiS. Выяснив название модуля, попробуйте загрузить его вручную. Появление сообщения об ошибке «модуль не найден» означает, что данный драйвер не был включён в ядро. Попробуйте найти модуль в AUR.

Если udev не определяет и не загружает нужный модуль автоматически во время запуска системы, изучите к раздел Модули ядра#Автоматическая загрузка модулей с помощью systemd.

Советы и рекомендации

ifplugd для ноутбуков

ifplugd — демон, который автоматически настраивает Ethernet-устройство при подключении кабеля и удаляет конфигурацию при его отключении. Это удобно для ноутбуков со встроенными сетевыми интерфейсами, поскольку последний будет настраиваться лишь при реальном подключении кабеля. Другой вариант использования — когда необходимо перезапустить сеть, но вы не хотите перезагружать компьютер или делать это в оболочке.

Читайте также:  Linux copy drive to drive

По умолчанию ifplugd настроен на работу с устройством eth0 . Эту и другие настройки, такие как время задержки, можно изменить в файле /etc/ifplugd/ifplugd.conf .

Примечание: Пакет netctl предоставляет службу netctl-ifplugd@.service ; также можно воспользоваться службой ifplugd@.service из пакета ifplugd . Например, включите ifplugd@eth0.service .

Решение проблем

Смена компьютера при использовании кабельного модема

Некоторые провайдеры кабельных интернет-услуг (например, videotron) настраивают кабельный модем на работу только с одним клиентом-компьютером по MAC-адресу его сетевого интерфейса. Как только модем запомнит MAC-адрес первого подключенного компьютера или оборудования, он ни при каких обстоятельствах не будет отвечать на запросы, идущие с других MAC-адресов. Таким образом, если вы поменяете один компьютер на другой (или поставите маршрутизатор), новый компьютер (или маршрутизатор) не будет работать с кабельным модемом из-за другого MAC-адреса. Выключите питание кабельного модема и включите его снова, чтобы сбросить настройки. Как только модем загрузится и подключится к сети, перезагрузите новый компьютер, чтобы он выполнил DHCP-запрос, или отправьте запрос DHCP-аренды вручную.

Если это не поможет, попробуйте скопировать MAC-адрес предыдущей машины (см. Подмена MAC-адреса).

Явное уведомление о перегруженности

Явное уведомление о перегруженности (Explicit Congestion Notification, ECN) может стать причиной проблем с передачей информации на старых/плохих маршрутизаторах. Для systemd 239 это касается как входящего, так и исходящего трафика.

Чтобы включать ECN только по требованию входящих соединений (безопасно, настройка ядра по-умолчанию), выполните:

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

Realtek: нет соединения / проблема WOL

Пользователи с сетевыми интерфейсами на основе Realtek 8168 8169 8101 8111(C) (отдельными/встроенными) могут заметить, что карта отключена во время загрузки системы и лампочка-индикатор не горит. Такое часто встречается на машинах с двумя операционными системами, одна из которых — Windows. Похоже, что причиной являются официальные драйверы Realtek (датированные маем 2007 г. и позднее) для Windows. Эти новые драйверы отключают функцию Wake-On-LAN, выключая интерфейс при завершении работы Windows, в результате чего между загрузками Windows он не работает. Пока Windows не загрузится, индикатор соединения не горит; во время завершения её работы индикатор выключается. В нормальном состоянии лампочка должна гореть всё время работы системы, даже во время POST. Проблема затрагивает и другие операционные системы, не имеющие новейших драйверов (например, Live CD). Есть несколько способов решения.

Читайте также:  Dns lookup from linux

Включение сетевого интерфейса в Linux

Откат/замена драйвера для Windows

Вы можете откатить ваш драйвер сетевой платы в Windows на тот, который предоставляет Microsoft (если это возможно), или откатить/установить официальный драйвер Realtek, имеющий дату выпуска ранее мая 2007 г. (может найтись на компакт-диске, идущем в комплекте с вашим аппаратным обеспечением).

Включение WOL в драйвере для Windows

Наверное, самое лучшее и быстрое решение — изменить эту настройку в драйвере Windows. Тогда это затронет всю систему, в том числе Arch (а также live CD и другие операционные системы). В менеджере устройств Windows найдите ваш сетевой адаптер Realtek и сделайте на нем двойной щелчок мыши. Во вкладке «Дополнительно» измените значение «Wake-on-LAN после завершения работы» (Wake-on-LAN after shutdown) на «Включено».

Кликните правой кнопкой мыши на "Мой компьютер" и зайдите в "Свойства" --> Вкладка "Аппаратное обеспечение" (Hardware) --> Менеджер устройств --> Сетевые адаптеры --> "двойной клик" на Realtek . --> Вкладка "Дополнительно" --> Wake-On-Lan после завершения работы --> Включено

Примечание: В новых драйверах Realtek для Windows (протестировано на Realtek 8111/8169 LAN Driver v5.708.1030.2008, датированном 2009/01/22, от GIGABYTE) доступ к этой опции может быть немного иным, например, Shutdown Wake-On-LAN —> Включено. Похоже, что ее переключение в значение Отключено не дает эффекта (вы увидите, что индикатор соединения по-прежнему выключается при завершении работы Windows). Довольно грязный обходной путь — загрузиться в Windows и просто перезагрузить (reset) систему (плохой restart/shutdown), что не даст драйверу Windows никаких шансов отключить LAN. Лампочка будет по-прежнему гореть, а адаптер LAN останется доступен после POST до тех пор, пока вы опять не запустите Windows и правильно завершите его работу.

Включение LAN Boot ROM в BIOS/CMOS

Похоже, что установка Интегрированная периферия (Integrated Peripherals) —> Встроенный (Onboard) LAN Boot ROM —> Включено в BIOS/CMOS возобновляет работу чипа Realtek LAN при загрузке системы, несмотря на то, что драйвер Windows отключает его при завершении работы ОС.

Примечание: Этот способ был несколько раз протестирован на материнской плате GIGABYTE GA-G31M-ES2L с BIOS версии F8, выпущенным 2009/02/05

Broadcom BCM57780

Этот чипсет Broadcom иногда работает плохо, если не указать порядок загрузки модулей. Необходимые модули — broadcom и tg3 , и загружаться они должны именно в таком порядке.

Если в вашем компьютере используется этот чипсет, сделайте следующее:

02:00.0 Ethernet controller: Broadcom Corporation NetLink BCM57780 Gigabit Ethernet PCIe (rev 01)
# modprobe -r tg3 # modprobe broadcom # modprobe tg3
  • Если это решило проблему, сделайте изменения постоянными, добавив модули broadcom и tg3 (в этом порядке) в массив MODULES :
Читайте также:  Linux which desktop manager

Realtek RTL8111/8168B

03:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168B PCI Express Gigabit Ethernet controller (rev 02)

За распознавание и работу этого сетевого интерфейса отвечает модуль r8169 , однако некоторые ревизии данного драйвера работают с ошибками — происходит постоянное включение/выключение устройства. Для решения проблемы можно установить модуль r8168 . Если r8168 не загружается автоматически менеджером udev, то нужно запретить загрузку модуля r8169 . Подробнее загрузка модулей описана в статье Модули ядра#Автоматическая загрузка модулей с помощью systemd.

Ещё одной проблемой некоторых ревизий драйвера этого адаптера является плохая поддержка IPv6. В случае зависания страниц и низкой скорости подключения может помочь отключение функциональности IPv6.

Материнская плата Gigabyte с интерфейсом Realtek 8111/8168/8411

При загрузке с выключенным (настройка по умолчанию) IOMMU могут возникнуть проблемы с сетевым интерфейсом на материнских платах Gigabyte (например, Gigabyte GA-990FXA-UD3). Сетевое подключение будет неустойчивым, с малой пропускной способностью или отсутствовать вовсе. Сказанное в равной мере касается как встроенных интерфейсов, так и внешних сетевых плат на шине PCI, поскольку настройки IOMMU влияют на все сетевые интерфейсы материнской платы. Если включить IOMMU и загрузиться с установочного устройства, то на секунду появится сообщение об ошибке AMD I-10/xhci, после чего загрузка продолжится обычным образом. В результате сетевой интерфейс будет функционировать нормально (даже с модулем r8169 ).

Если добавить параметр ядра iommu=soft , то при загрузке сообщение об ошибке будет подавляться.

Материнская плата MicroStar с интерфейсом Realtek 8111/8168/8411

В случае некоторых материнских плат вроде «MicroStar B450M MORTAR TITANIUM» отключение/подключение Ethernet-кабеля или перезапуск DHCP-сервера на маршрутизаторе может привести к переходу r8169 в состояние «downshifted», в результате чего гигабитное соединение сократится до 100-мегабитного. В логах ядра появятся следующие записи:

Generic FE-GE Realtek PHY r8169-2200:00: Downshift occurred from negotiated speed 1Gbps to actual speed 100Mbps, check cabling! r8169 0000:22:00.0 enp34s0: Link is Up - 100Mbps/Full (downshifted) - flow control rx/tx

В этом случае необходимо перезапустить интерфейс (выключить и включить снова):

# ip link set dev enp34s0 down # ip link set dev enp34s0 up

Источник

Оцените статью
Adblock
detector