Notices


Reply
Thread Tools
Posts: 36 | Thanked: 44 times | Joined on Jan 2010 @ Belgium
#1
I made my first application for the N900. It will send magic packet to a target system to start it via the LAN.

I developed it because: it currently does not exist for the N900 but, mainly, because I need it.

I made it available as I take profit so many times from open source software that I would like to give my own contribution. It is also a simple application that allows me to understand the full process to develop and release a QT/C++ application.

Hope you will find it useful.

I am still waiting the authorization to upload it on the extra-devel repository but you can already find it at https://garage.maemo.org/frs/?group_...elease_id=3967.

wolan is available in the extra-devel.

Bugs report are more than welcome.

Last edited by mno@8; 2010-08-11 at 10:04. Reason: UPDATE
 

The Following 16 Users Say Thank You to mno@8 For This Useful Post:
Posts: 36 | Thanked: 44 times | Joined on Jan 2010 @ Belgium
#2
WoLAN is now in extra-testing.

It supports multiple targets and is able to test if the host is up and running after a wake on -lan.

There is today only one bug found:
At the startup WoLAN displays an empty target instead of no target at all. Either click "edit" and put your own target or click delete than add.


There is no input validation:
IP or hostname is a free text (and will stay like this)
Mac address must be in the form of XX-XX-XX-XX-XX-XX (however you can put whatever character between the hex values).
Port, tcp port and timeout must be numeric. If you enter something else it will be reset to 0 without an error message.
 

The Following 2 Users Say Thank You to mno@8 For This Useful Post:
Posts: 13 | Thanked: 1 time | Joined on May 2010
#3
Hello,

Thanks for this app.

I haven't figured it out yet.

Under port I put 9, I opened it in the router

What do I enter under TCP Port?

I get this error every time.

Host is not Running.

Please let me know what I'm doing wrong.

I'm trying to wake up the computer via the internet. I can wake it up with other mens, just not via this app.
 

The Following User Says Thank You to siafu For This Useful Post:
Posts: 362 | Thanked: 380 times | Joined on Dec 2009 @ Gothenburg, Sweden
#4
@siafu: This is a little trickier than what you first may think. You don't have to forward any TCP traffic, WOL goes only over UDP (if you can leave it blank, do so). You will also not be able to do any forwarding of traffic to a local computer in the normal manor, it's because the sleeping machine doesn't have an IP (yet). Only mac address'es are typically used for WOL magic packet. What you should do is to forward the packet to your subnet's broadcast address (whatever that is, depends on you subnet's class). For a class C network for instance, the broadcast address is 192.168.1.255. Now, what you should do is:
1. Set up this application to direct the magic packet to your WAN IP, fill in the mac address of your local machine to wake up (that MAC will be the payload of the magic packet, repeated 16 times).
2. Set up your router to forward UDP traffic on port 9 to the broadcast address in your network (which you will have to find out what it is for you subnet).

It does work, if you do it right, but remember you can only wake up one specific machine in your subnet this way, that's it.

I am also working on an WOL application for the N900 (in Qt) since some time ago, but it has then grown into something more than that. It is already functional like this app here, but it is also supposed to be able to set machines in suspend state, hibernate state, reboot them, shut them down and log out the user. This of course requires a daemon/service on the Linux/Windows side, but that's no problem and it already works. I just have a little more work on the PC side with a gui to the daemon/service and also a some security issues, since that becomes important as well.
Here's a screenshot for you I had lying around, in Swedish sorry to say:
Name:  Screenshot-20101109-102801.jpg
Views: 1290
Size:  25.5 KB

Last edited by Larswad; 2010-11-17 at 14:17. Reason: clarify
 

The Following 3 Users Say Thank You to Larswad For This Useful Post:
Posts: 36 | Thanked: 44 times | Joined on Jan 2010 @ Belgium
#5
@siafu: as said, the magic packet are always sent in UDP. The port "9" is only important if you have to open the port on a firewall.
The tCP port is used to test if the target system woke up. So you need to target a service on that system: ssh, http...
The most frequent issue when sending the magic packet in another subnet is the arp request. Your last router will try to send the magic packet in the target subnet but will first make an arp request. This one will not get any answer as the system is power off. To avoid this you must put a static arp in your last router.
@Larswad: You can wake up as many machine you want in the same subnet as the magic packet contains the MAC address of the target machine. I do this everyday...;-)
 

The Following 2 Users Say Thank You to mno@8 For This Useful Post:
Posts: 36 | Thanked: 44 times | Joined on Jan 2010 @ Belgium
#6
I just test WoLAN on ipv6 network. It works pretty well.

I had however to configure my switch accordingly. Strictly speaking inmy case, it is a SSG 5 from Juniper not a true switch. I had to use the command "set ndp ipv6_address Mac_address interface" .
 

The Following 3 Users Say Thank You to mno@8 For This Useful Post:
Posts: 4 | Thanked: 2 times | Joined on Jun 2010 @ Ballarat, Australia
#7
Wow, just got this working - what a neat little application!

Took me a while to figure out that I needed to enter my networks broadcast address, not the IP of the machine I wanted to start up.

Haven't managed to get the TCP port setting to work though so I can detect successful startup. If I set this to 80 it doesn't recognise I have apache running. Doesn't matter too much though!
 

The Following User Says Thank You to stustustu For This Useful Post:
Posts: 36 | Thanked: 44 times | Joined on Jan 2010 @ Belgium
#8
Originally Posted by stustustu View Post
Wow, just got this working - what a neat little application!

Took me a while to figure out that I needed to enter my networks broadcast address, not the IP of the machine I wanted to start up.

Haven't managed to get the TCP port setting to work though so I can detect successful startup. If I set this to 80 it doesn't recognise I have apache running. Doesn't matter too much though!
Thanks for the enthusiasm. Regarding the TCP port, two things could happend:
1) a firewall is blocking the traffic
2) the timeout value is too short
 

The Following User Says Thank You to mno@8 For This Useful Post:
Posts: 11 | Thanked: 1 time | Joined on Feb 2010
#9
Originally Posted by Larswad View Post
1. Set up this application to direct the magic packet to your WAN IP, fill in the mac address of your local machine to wake up (that MAC will be the payload of the magic packet, repeated 16 times).
2. Set up your router to forward UDP traffic on port 9 to the broadcast address in your network (which you will have to find out what it is for you subnet).
I did this and it worked, but I have to fill in the IP address, if I write the dyndns name of my router (blablabla.dyndns.org) this does not work... and I'm just wondering why.
(sorry for digging such an old thread, but I loved this app since I started using it a few weeks ago)
 

The Following User Says Thank You to kattle87 For This Useful Post:
Posts: 36 | Thanked: 44 times | Joined on Jan 2010 @ Belgium
#10
Kattle87,
The advantage of using this thread is that I received an alert for your comment ;-)

This is a bug I already discovered and I correct it. You should be able to get the latest version in extra-devel. You can safely install it from there as this is the only change. The version is 0.2-1.

It is great to learn you love this app ;-)
 

The Following 3 Users Say Thank You to mno@8 For This Useful Post:
Reply

Thread Tools

 
Forum Jump


All times are GMT. The time now is 04:46.