Viktigt meddelande

Collapse
No announcement yet.

Wake on Lan (WOL)

Collapse
X
  •  
  • Filter
  • Tid
  • Show
Clear All
new posts

  • Wake on Lan (WOL)

    Jag skulle vilja starta min stationära dator med hjälp att ett pythonskript från min XBOX för att se på filmer via smb. Har testat två olika skript men inte fått till det. Jag vet inte vart jag ska fylla i MAC-adressen. Jag använder en router, om det har någon betydelse.

    Datorn är förberedd för att kunna starta upp med hjälp av WOL. Har provat det med AMD Magic Packet från min laptop och det funkar utmärkt.

    Här är det första skriptet: wolpython.py

    # Wake-On-LAN
    #
    # Copyright (C) 2002 by Micro Systems Marc Balmer
    # Written by Marc Balmer, marc@msys.ch, http://www.msys.ch/
    # This code is free software under the GPL

    import struct, socket

    def WakeOnLan(ethernet_address):

    # Construct a six-byte hardware address

    addr_byte = ethernet_address.split(':')
    hw_addr = struct.pack('BBBBBB', int(addr_byte[0], 16),
    int(addr_byte[1], 16),
    int(addr_byte[2], 16),
    int(addr_byte[3], 16),
    int(addr_byte[4], 16),
    int(addr_byte[5], 16))

    # Build the Wake-On-LAN "Magic Packet"...

    msg = '\xff' * 6 + hw_addr * 16

    # ...and send it to the broadcast address using UDP

    s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
    s.setsockopt(socket.SOL_SOCKET, socket.SO_BROADCAST, 1)
    s.sendto(msg, ('<broadcast>', 9))
    s.close()

    # Example use
    WakeOnLan('0:3:93:81:68:b2')





    Här är det andra skriptet: wol.py


    #!/usr/bin/env python
    # wol.py

    import socket
    import struct

    def wake_on_lan(macaddress):
    """ Switches on remote computers using WOL. """

    # Check macaddress format and try to compensate.
    if len(macaddress) == 12:
    pass
    elif len(macaddress) == 12 + 5:
    sep = macaddress[2]
    macaddress = macaddress.replace(sep, '')
    else:
    raise ValueError('Incorrect MAC address format')

    # Pad the synchronization stream.
    data = ''.join(['FFFFFFFFFFFF', macaddress * 20])
    send_data = ''

    # Split up the hex values and pack.
    for i in range(0, len(data), 2):
    send_data = ''.join([send_data,
    struct.pack('B', int(data[i: i + 2], 16))])

    # Broadcast it to the LAN.
    sock = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
    sock.setsockopt(socket.SOL_SOCKET, socket.SO_BROADCAST, 1)
    sock.sendto(send_data, ('<broadcast>', 7))


    if __name__ == '__main__':00-0D-61-31-D8-DD
    # Use macaddresses with any seperators.
    wake_on_lan('0F:0FF:0F:BF:EF')
    wake_on_lan('0F-0F-DF-0F-BF-EF')
    # or without any seperators.
    wake_on_lan('0F0FDF0FBFEF')
Previously entered content was automatically saved. Restore or Discard.
Auto-Saved
Stick Out Tongue :p Roll Eyes (Sarcastic) :rolleyes: Smilie :) EEK! :eek: Embarrassment :o Wink ;) Cool :cool: Mad :mad: Frown :( Confused :confused: Big Grin :D
x
Insert: Thumbnail Small Medium Large Fullsize Ta Bort  
x
x

Please enter the six letters or digits that appear in the image below.

Registration Image Refresh Image
Working...
X