Netgate Discussion Forum
    • Categories
    • Recent
    • Tags
    • Popular
    • Users
    • Search
    • Register
    • Login

    PfSense – WOL – Wake On Lan

    Scheduled Pinned Locked Moved Español
    3 Posts 2 Posters 2.2k Views
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • J
      javcasta
      last edited by

      Hola.

      pfSense – WOL – Wake On Lan

      Referencia: https://doc.pfsense.org/index.php/Wake_on_LAN

      Hacer un WOL (Wake On Lan) es simplemente enviar a traves de una red local (LAN) un “magic packet” a una dirección mac (de capa 2) de una NIC de un equipo para que se inicie (“se encienda” o power on).

      Esta utilidad está restringida al dominio de broadcast (no trasciende dispositivos de capa 3: routers/firewall), es decir, a las redes localmente conectadas al pfSense.

      La condición necesaria es que el equipo a encenderse, tenga configurada en su BIOS, la opción WOL habilitada (enable).

      Desde la GUI del pfSense, en Services > Wake-on-LAN: Elegimos la interfaz por donde enviar el “magic packet” e indicamos la mac de la tarjeta de red del equipo a encender

      Clikamos en enviar (send) y si está todo correcto, el equipo deberá iniciar su encendido (power on).

      Lo acabo de testear con un pfSense 2.3.2_1 y un portatil Toshiba, y todo OK.

      ¿Su utilidad?. Imagina que das soporte a una red remota, y puedes acceder a la administración del pfsense vía VPN, pero el equipo remoto al que quieres dar soporte esta apagado y no hay nadie que pueda encenderlo … pues si lo tienes ese equipo con la opción en BIOS de WOL habilitada (y conoces su mac) … pues coser y cantar

      Para los que usen scripting:

      La utilidad que envía el magic packet, en pfSense es: /usr/local/bin/wol

      /usr/local/bin/wol –help

      Usage: /usr/local/bin/wol [OPTION] … MAC-ADDRESS ...
      Wake On LAN client - wakes up magic packet compliant machines.

      --help          display this help and exit
      -V, --version      output version information and exit
      -v, --verbose      verbose output
      -w, --wait=NUM      wait NUM millisecs after sending
      -h, --host=HOST    broadcast to this IP address or hostname
      -i, --ipaddr=HOST  same as --host
      -p, --port=NUM      broadcast to this UDP port
      -f, --file=FILE    read addresses from file FILE ("-" reads from stdin)
          --passwd[=PASS] send SecureON password PASS (if no PASS is given, you
                          will be prompted for the password)

      Each MAC-ADDRESS is written as x❌x❌x:x, where x is a hexadecimal number
      between 0 and ff which represents one byte of the address, which is in
      network byte order (big endian).

      PASS is written as x-x-x-x-x-x, where x is a hexadecimal number between 0
      and ff which represents one byte of the password.

      Report bugs to krennwallner@aon.at/krennwallner@aon.at

      Por ejemplo para envíar un wol a la mac 00:50:56:00:01:02 en la red local (LAN), siendo la IP de la interfaz LAN del pfSense 192.168.0.254/24 y la IP de broadcast 192.168.0.255

      
      /usr/local/bin/wol -i 192.168.0.255 00:50:56:00:01:02
      
      

      /usr/local/bin/wol -i 192.168.0.255 00:50:56:00:01:02
      Waking up 00:50:56:00:01:02…

      Salu2

      Javier Castañón
      Técnico de comunicaciones, soporte y sistemas.

      Mi web: https://javcasta.com/

      Soporte scripting/pfSense https://javcasta.com/soporte/

      1 Reply Last reply Reply Quote 0
      • D
        Danixu86
        last edited by

        Gracias por el manual. Muy útil.

        Deberían poner PIN a estos manuales.

        1 Reply Last reply Reply Quote 0
        • J
          javcasta
          last edited by

          Hola

          De nada. :)

          Por cierto, comento un caso que se puede dar.

          ¿Y si no conocemos la mac del equipo a encender, pero sabemos que obtiene su config tcp/ip vía dhcp server del pfSense?
          Pues una manera seria enviar un WOL a todas las macs en las entradas de dhcp leases, que se encuentran en:
          /var/dhcpd/var/db/dhcpd.leases

          Vía scripting seria:

          
          #!/bin/sh
          # wol-dhcpleases.sh
          # wol all dhcp leases
          # by javcasta - 2016 - https://javcasta.com
          
          BROADCAST=192.168.0.255
          DHCPLEASES=$(cat /var/dhcpd/var/db/dhcpd.leases | grep "hardware ethernet" | cut -d ' ' -f 5 | sort -u | sed "s|;||")
          for LAMAC in $DHCPLEASES; do
             echo "wake on lan:  ${LAMAC}"
             /usr/local/bin/wol -i ${BROADCAST} ${LAMAC}
          done
          
          

          Output

          [2.3.2-RELEASE][root@pfSense232a.localdomain]/scripts: sh wol.sh
          wake on lan:  50:01:02:03:04:05
          Waking up 50:01:02:03:04:05…
          wake on lan:  50:01:02:03:04:06
          Waking up 50:01:02:03:04:06...
          wake on lan:  50:01:02:03:04:07
          Waking up 50:01:02:03:04:07...
          ...

          Salu2

          Javier Castañón
          Técnico de comunicaciones, soporte y sistemas.

          Mi web: https://javcasta.com/

          Soporte scripting/pfSense https://javcasta.com/soporte/

          1 Reply Last reply Reply Quote 0
          • First post
            Last post
          Copyright 2025 Rubicon Communications LLC (Netgate). All rights reserved.