Включение Wake-on-LAN: различия между версиями

Материал из ALT Linux Wiki
Нет описания правки
Строка 4: Строка 4:
#Выявить интерфейсы, поддерживающие технологию Wake-on-LAN:
#Выявить интерфейсы, поддерживающие технологию Wake-on-LAN:
#:<source language="bash">
#:<source language="bash">
for NET in `ip li | awk '{gsub(":","");print $2}' | grep en`; do
# for NET in `ip li | awk '{gsub(":","");print $2}' | grep en`; do
     printf "\n$NET "
     printf "\n$NET "
     ethtool $NET | awk '/Supports Wake-on/{print $3}'
     ethtool $NET | awk '/Supports Wake-on/{print $3}'
Строка 25: Строка 25:
#:{{cmd|# ethtool -s eno1np0 wol g}}
#:{{cmd|# ethtool -s eno1np0 wol g}}
#Обеспечить присутствие этого интерфейса в локалке, даже если он никак не задействован в обмене данными.
#Обеспечить присутствие этого интерфейса в локалке, даже если он никак не задействован в обмене данными.
=Собственно включение=
=Собственно включение=
*'''Через SystemD'''
*'''Через SystemD'''

Версия от 08:29, 12 декабря 2024

Проверка возможностей интерфейса

  1. Установить в случае отсутствия нужный инструмент:
    # apt-get install -y ethtool
  2. Выявить интерфейсы, поддерживающие технологию Wake-on-LAN:
     # for NET in `ip li | awk '{gsub(":","");print $2}' | grep en`; do
        printf "\n$NET "
        ethtool $NET | awk '/Supports Wake-on/{print $3}'
    done | sort
    Пример вывода:
    enp5s0f0 d
    enp5s0f1 d
    enp8s0f0 pumbg
    enp8s0f1 d
    Или:
    eno1np0 g
    eno2np1 g
    Интересуют содержащие в выводе букву g — для приведённых примеров это enp8s0f0, eno1np0 и eno2np1.
  3. Включить Wake-on-LAN на нужном интерфейсе, к примеру:
    # ethtool -s eno1np0 wol g
  4. Обеспечить присутствие этого интерфейса в локалке, даже если он никак не задействован в обмене данными.

Собственно включение

  • Через SystemD
    1. Получить МАС-адрес нужного интерфейса:
      {{cmd|ip -o li sh eno1np0 | sed 's|.*link/ether ||;s| brd .*||'
      (если интерфейс не входит в объединение с общим МАС-ом для всех оъединённых)
      ip -o li sh enp1np0
      (если входит)
      3c:ec:ef:97:a5:2c
    2. Создать файл /etc/systemd/network/wired.link с этим МАС-ом:
      [Match]
      MACAddress = 3c:ec:ef:97:a5:2c
      
      [Link]
      NamePolicy = Kernel database onboard slot path
      MACAddressPolicy = persistent
      WakeOnLan = magic
  • Через /etc/network/interfaces
    (актуально для ProxMox и прочих дебианов)