pfSense Support Subscription

Author Topic: Wake on LAN - Can wake from GUI but not from outside  (Read 4556 times)

0 Members and 1 Guest are viewing this topic.

Offline JohnnyBeGood

  • Jr. Member
  • **
  • Posts: 98
  • Karma: +0/-0
    • View Profile
Wake on LAN - Can wake from GUI but not from outside
« on: August 30, 2011, 11:12:15 pm »
Hi all,

I'm running v2.0-RC3 and I have setup port forward from 55940 to port 9 and all works fine when I try to wake up using my cell phone.
Problem is that when I leave computer in standby over night and try in the morning I can't wake it up.
Using Services > Wake On LAN it wakes it up right away. Computer is running Win7 with static IP.

Any suggestions?

Thanks in advance!
I like to fill my tub up with water, then turn the shower on and act like I'm in a submarine that's been hit!

Offline NOYB

  • Sr. Member
  • ****
  • Posts: 440
  • Karma: +0/-0
    • View Profile
Re: Wake on LAN - Can wake from GUI but not from outside
« Reply #1 on: August 31, 2011, 12:55:56 am »
ARP age.

Where is port 9 being forwarded to?
Unless it is a broadcast, it wont work once the target machine has been aged out of the ARP table.  And since it is not on it wont respond to any ARPs.

Is it possible to configure forward target to be 255.255.255.255?  That way the WoL packet will be seen by all machines.  (assuming WoL Magic Packet is being used).

Offline stompro

  • Full Member
  • ***
  • Posts: 135
  • Karma: +0/-0
    • View Profile
Re: Wake on LAN - Can wake from GUI but not from outside
« Reply #2 on: August 31, 2011, 08:18:10 am »
It isn't possible to port forward to broadcast addresses, the OS blocks the attempt for security reasons.  I tried to get this working several years ago, but ran into that wall.  You need to either use the web interface, (which can be scripted with curl,wget, etc) or ssh in and use the wakeonlan command(also can be scripted), or install some sort of proxy that will handle rebroadcasting the wake on lan packets.

I went with the curl + webgui method.  You can create a user that only has access to the WOL page, to reduce the security risk of having your admin password in a script.

Josh


Hardware used: Alix 2D13 X 30, FAbiatech FX5620 X 10, Netgate Hamakua-1U.


Offline stompro

  • Full Member
  • ***
  • Posts: 135
  • Karma: +0/-0
    • View Profile
Re: Wake on LAN - Can wake from GUI but not from outside
« Reply #4 on: August 31, 2011, 02:33:44 pm »
You might want to summarize what your point is, I tried skimming through the first link be couldn't guess what tactic you thought would be useful.  Setting a machines MAC to FF:FF:FF:FF:FF:FF is entertaining, but not really a great strategy.
Josh
Hardware used: Alix 2D13 X 30, FAbiatech FX5620 X 10, Netgate Hamakua-1U.

Offline NOYB

  • Sr. Member
  • ****
  • Posts: 440
  • Karma: +0/-0
    • View Profile
Re: Wake on LAN - Can wake from GUI but not from outside
« Reply #5 on: August 31, 2011, 03:15:41 pm »
Setting a machine's MAC to all FF's is the point.  So you got it.  Then forward WoL to that machine will result in a broadcast.  It works, but would be better to do it all within pfSense rather than having another piece of hardware though.

The last 3 links are methods of configuring a couple of old 'routers' with all FF MAC to turn them in to sort of a "broadcast agent" that could be used with WoL.


A static ARP entry may work too.  That's what we used to do with the Actiontec.
Will need a script to run at start up for the ARP entry to survive a reboot though.

arp -s 192.168.1.254 ff:ff:ff:ff:ff:ff
arp -an to view

Add static host or DNS entry if name resolution desired.
ff:ff:ff:ff:ff:ff 192.168.1.254  Broadcast
« Last Edit: August 31, 2011, 04:29:50 pm by NOYB »

Offline JohnnyBeGood

  • Jr. Member
  • **
  • Posts: 98
  • Karma: +0/-0
    • View Profile
Re: Wake on LAN - Can wake from GUI but not from outside
« Reply #6 on: August 31, 2011, 07:06:12 pm »
ARP age.

Where is port 9 being forwarded to?
Unless it is a broadcast, it wont work once the target machine has been aged out of the ARP table.  And since it is not on it wont respond to any ARPs.

Is it possible to configure forward target to be 255.255.255.255?  That way the WoL packet will be seen by all machines.  (assuming WoL Magic Packet is being used).

Port 9 is forwarded to a computer with static IP.

There's another twist I've tried this morning. I have 2nd computer that is HTPC (Win 7 Pro) and when I try to wake it up with cell phone it worked!
Tried same with desktop and it does not work :(
Used pfSense GUI and it woke it up right away.
I went thru and compered all settings that are on the NIC and everything pretty much matches. One difference is that HTPC has Gigabyte GA-H67A-UD3H-B3 MB and desktop has Asus Sabertooth x58 both are using built in NIC.
I like to fill my tub up with water, then turn the shower on and act like I'm in a submarine that's been hit!

Offline wallabybob

  • Hero Member
  • *****
  • Posts: 5262
  • Karma: +0/-0
    • View Profile
Re: Wake on LAN - Can wake from GUI but not from outside
« Reply #7 on: August 31, 2011, 07:47:47 pm »
WOL sometimes needs to be enabled in BIOS.

Offline NOYB

  • Sr. Member
  • ****
  • Posts: 440
  • Karma: +0/-0
    • View Profile
Re: Wake on LAN - Can wake from GUI but not from outside
« Reply #8 on: August 31, 2011, 08:26:58 pm »
JBG,

Before trying to wake them with the cell phone, go to Diagnostics - ARP Table.  Is MAC and IP listed for machine?  If not, that is why it won't wake up.  It has been aged out of the ARP table.  So that being the case the WoL 'Magic Packet' must be forwarded as a broadcast rather than to a specific machine.  Try this...

Drop to a shell ( option 8 )
arp -s 192.168.1.254 ff:ff:ff:ff:ff:ff
arp -an (should see above entry)

Configure Firewall NAT Rule to forward your cell phone WoL to 192.168.1.254

Obviously replace above ip address with one appropriate for your network.  Doesn't really matter what it is so long as it is valid for your subnet, unused and ARP table has it listed with MAC of all FF's.

Now try waking with cell phone.
« Last Edit: August 31, 2011, 08:38:21 pm by NOYB »

Offline JohnnyBeGood

  • Jr. Member
  • **
  • Posts: 98
  • Karma: +0/-0
    • View Profile
Re: Wake on LAN - Can wake from GUI but not from outside
« Reply #9 on: September 01, 2011, 12:35:40 am »
JBG,

Before trying to wake them with the cell phone, go to Diagnostics - ARP Table.  Is MAC and IP listed for machine?  If not, that is why it won't wake up.  It has been aged out of the ARP table.  So that being the case the WoL 'Magic Packet' must be forwarded as a broadcast rather than to a specific machine.  Try this...

Drop to a shell ( option 8 )
arp -s 192.168.1.254 ff:ff:ff:ff:ff:ff
arp -an (should see above entry)

Configure Firewall NAT Rule to forward your cell phone WoL to 192.168.1.254

Obviously replace above ip address with one appropriate for your network.  Doesn't really matter what it is so long as it is valid for your subnet, unused and ARP table has it listed with MAC of all FF's.

Now try waking with cell phone.


NOYB,

I will give it a try in the morning.
I like to fill my tub up with water, then turn the shower on and act like I'm in a submarine that's been hit!

Offline JohnnyBeGood

  • Jr. Member
  • **
  • Posts: 98
  • Karma: +0/-0
    • View Profile
Re: Wake on LAN - Can wake from GUI but not from outside
« Reply #10 on: September 01, 2011, 11:39:21 pm »
JBG,

Before trying to wake them with the cell phone, go to Diagnostics - ARP Table.  Is MAC and IP listed for machine?  If not, that is why it won't wake up.  It has been aged out of the ARP table.  So that being the case the WoL 'Magic Packet' must be forwarded as a broadcast rather than to a specific machine.  Try this...

Drop to a shell ( option 8 )
arp -s 192.168.1.254 ff:ff:ff:ff:ff:ff
arp -an (should see above entry)

Configure Firewall NAT Rule to forward your cell phone WoL to 192.168.1.254

Obviously replace above ip address with one appropriate for your network.  Doesn't really matter what it is so long as it is valid for your subnet, unused and ARP table has it listed with MAC of all FF's.

Now try waking with cell phone.


NOYB,

You are the man! It works great now! Thank you!

Diagnostics - ARP Table shows each ip with all f's. I have not had a chance to check if HTPC was in ARP table before trying to wake it up.

I like to fill my tub up with water, then turn the shower on and act like I'm in a submarine that's been hit!

Offline NOYB

  • Sr. Member
  • ****
  • Posts: 440
  • Karma: +0/-0
    • View Profile
Re: Wake on LAN - Can wake from GUI but not from outside
« Reply #11 on: September 02, 2011, 02:01:41 am »
Diagnostics - ARP Table shows each ip with all f's.

No, no, no.  Each machine IP should not have all F's MAC.  Each machine should still have it's ordinary unique MAC address.

Only a dedicated IP address, that is otherwise unused, should have all F's MAC in ARP Table.
That IP address / MAC pair can then be used to forward WoL packets as an ethernet broadcast.

Such as 192.168.1.254 which is established by command: arp -s 192.168.1.254 ff:ff:ff:ff:ff:ff
And your firewall NAT rule should be config'd to forward the WoL packets to that address.

Hope that is what you actually did and not assign each machine an all F's MAC.

Offline JohnnyBeGood

  • Jr. Member
  • **
  • Posts: 98
  • Karma: +0/-0
    • View Profile
Re: Wake on LAN - Can wake from GUI but not from outside
« Reply #12 on: September 02, 2011, 02:59:23 pm »
Diagnostics - ARP Table shows each ip with all f's.

No, no, no.  Each machine IP should not have all F's MAC.  Each machine should still have it's ordinary unique MAC address.

Only a dedicated IP address, that is otherwise unused, should have all F's MAC in ARP Table.
That IP address / MAC pair can then be used to forward WoL packets as an ethernet broadcast.

Such as 192.168.1.254 which is established by command: arp -s 192.168.1.254 ff:ff:ff:ff:ff:ff
And your firewall NAT rule should be config'd to forward the WoL packets to that address.

Hope that is what you actually did and not assign each machine an all F's MAC.


Thats exactly what I did  :)

Ive assigned all Fs to each machine and it still worked. I was able to wake each machine individually but I was not able to browse that machine
Shared folder. Then I used
Arp d 192.168.1.101
And deleted arp record then I added it again but this time with real IP and MAC.
I did not used this arp -s 192.168.1.254 ff:ff:ff:ff:ff:ff command and it still worked!
Ill test in the morning to see if works after being in standby over night.
It should because when I do arp an each ip has this ? (192.168.1.101) at 1c:6f:65:ab:xx:xx on em0 permanent [ethernet]
I like to fill my tub up with water, then turn the shower on and act like I'm in a submarine that's been hit!

Offline NOYB

  • Sr. Member
  • ****
  • Posts: 440
  • Karma: +0/-0
    • View Profile
Re: Wake on LAN - Can wake from GUI but not from outside
« Reply #13 on: September 02, 2011, 11:29:12 pm »
 
Those ARP table entries will not survive a router reboot nor some router config changes.
 
To make static ARP table entries and have them survive a router reboot and interfaces config changes, try this little attached patch.  It's very small and simple enough to do by hand if desired.
 
Then just put ARP entries (IP MAC pairs) in /var/etc/Static_ARPs.conf and the ARP entries will be created at boot up or when an interface change is made.
 
I'd dedicate an IP address to being an ethernet broadcast (all F's MAC) rather than making a permanent ARP entry for each machine.  Then just forward WoL to that IP address and the WoL Magic Packet is broadcast on the LAN as it should be, and the machine whos MAC is in the Magic Packet payload wakes up.
 
« Last Edit: September 13, 2011, 08:50:05 pm by NOYB »

Offline JohnnyBeGood

  • Jr. Member
  • **
  • Posts: 98
  • Karma: +0/-0
    • View Profile
Re: Wake on LAN - Can wake from GUI but not from outside
« Reply #14 on: September 03, 2011, 02:12:22 pm »

Those ARP table entries will not survive a router reboot nor some router config changes.
 
To make static ARP table entries and have them survive a router reboot and interfaces config changes, try this little attached patch.  It's very small and simple enough to do by hand if desired.
 
Then just put ARP entries (IP MAC pairs) in /var/etc/Static_ARPs.conf and the ARP entries will be created at boot up or when an interface change is made.
 
I'd dedicate an IP address to being an ethernet broadcast (all F's MAC) rather than making a permanent ARP entry for each machine.  Then just forward WoL to that IP address and the WoL Magic Packet is broadcast on the LAN as it should be, and the machine whos MAC is in the Magic Packet payload wakes up.
 


You were right. It did not survive reboot.

I've tried to follow your instructions but after reboot I don't get any permanent arp tables with command: arp an
I've placed attached file Static.ARP.Entries.patch in /var/etc
then I created new file Static_ARPs.conf in /var/etc with following entries (last four have been masked for the security)
arp -s 192.168.1.101 1c:6f:65:ab:xx:xx
arp -s 192.168.1.100 bc:ae:c5:18:xx:xx
arp -s 192.168.1.102 00:18:f3:76:xx:xx

Appreciate your help!

 
I like to fill my tub up with water, then turn the shower on and act like I'm in a submarine that's been hit!