• Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Search
  • Register
  • Login
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.3k 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 Offline
    javcasta
    last edited by Nov 24, 2016, 12:46 PM Nov 24, 2016, 12:25 PM

    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 Offline
      Danixu86
      last edited by Nov 25, 2016, 10:43 AM

      Gracias por el manual. Muy útil.

      Deberían poner PIN a estos manuales.

      1 Reply Last reply Reply Quote 0
      • J Offline
        javcasta
        last edited by Nov 26, 2016, 9:59 AM

        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
        3 out of 3
        • First post
          3/3
          Last post
        Copyright 2025 Rubicon Communications LLC (Netgate). All rights reserved.
          This community forum collects and processes your personal information.
          consent.not_received