- Network configuration (Русский)/Ethernet (Русский)
- Драйвер устройства
- Проверка состояния
- Загрузка модуля
- Советы и рекомендации
- ifplugd для ноутбуков
- Решение проблем
- Смена компьютера при использовании кабельного модема
- Явное уведомление о перегруженности
- Realtek: нет соединения / проблема WOL
- Включение сетевого интерфейса в Linux
- Откат/замена драйвера для Windows
- Включение WOL в драйвере для Windows
- Включение LAN Boot ROM в BIOS/CMOS
- Broadcom BCM57780
- Realtek RTL8111/8168B
- Материнская плата Gigabyte с интерфейсом Realtek 8111/8168/8411
- Материнская плата MicroStar с интерфейсом Realtek 8111/8168/8411
- Arch Linux installation — no internet connection and can’t ping gateway
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-устройство при подключении кабеля и удаляет конфигурацию при его отключении. Это удобно для ноутбуков со встроенными сетевыми интерфейсами, поскольку последний будет настраиваться лишь при реальном подключении кабеля. Другой вариант использования — когда необходимо перезапустить сеть, но вы не хотите перезагружать компьютер или делать это в оболочке.
По умолчанию 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). Есть несколько способов решения.
Включение сетевого интерфейса в 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 :
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
Arch Linux installation — no internet connection and can’t ping gateway
I’m doing a clean install of 32-bit Arch Linux from a CD on a very old Panasonic CF-29 Toughbook. Trying to connect to the Internet from the terminal on the installation ISO is not working. I’m using an Ethernet cable. My interface is called enp2s2 :
# ip link 1: lo: . 2: enp2s: mtu 1500 qdisc fq-codel state UNKNOWN mode DEFAULT group default qlen 1000 link/ether 00:0b:97:2b:e7:2e brd ff:ff:ff:ff:ff:ff
# ping -c 3 www.google.com ping: www.google.com: Name or service not known
# ping 192.168.1.1 connect: Network is unreachable
# route add default gw 192.168.1.1 SIOCADDRT: Network is unreachable
# dhcpcd enp2s2 DUID 00:01:00:01:1f:8a:90:98:00:0b:97:2b:e7:2e enp2s2: IAID 97:2b:e7:2e enp2s2: soliciting an IPv6 router enp2s2: soliciting a DHCP lease enp2s2: no IPv6 routers available timed out dhcpcd exited
# ip link set enp2s2 up # systemctl enable dhcpcd@enp2s2.service
Neither have any effect. Before reading Enabling wired internet connection with dhcp during Arch Linux Installation? I hadn’t considered it being a router problem but how likely is this? My netconfig file is as follows:
udp tpi_clts v inet udp - - tcp tpi_cots_ord v inet tcp - - udp6 tpi_clts v inet6 udp - - tcp6 tpi_cots_ord v inet6 tcp - - rawip tpi_raw - inet - - - local tpi_cots_ord - loopback - - - unix tpi_cots_ord - loopback - - -