According to wiki
The magic packet is a broadcast frame containing anywhere within its payload 6 bytes of all 255 (FF FF FF FF FF FF in hexadecimal), followed by sixteen repetitions of the target computer's 48-bit MAC address, for a total of 102 bytes.
Since the magic packet is only scanned for the string above, and not actually parsed by a full protocol stack, it may be sent as any network- and transport-layer protocol
So, it doesn't matter what kind of packet you send as long as it reaches target device and contains proper sequence.
Now, to send packet across a router, you must assign target IP from the other network. Unfortunately that's not enough yet.
Before IP4 packet is sent, router sends broadcast ARP request asking to what MAC that particular IP is assigned. And here we hit the wall, as no device would respond. To get response, you must target an existing, active device. Unfortunately, in switched network, once IP is assigned to MAC, it is also assigned to a particular socket. Hubs do not perform such sophisticated operations, so in this case it could work
Well, while not completely impossible, it's not a very effective way to handle it. I suppose it would be easier to login into router and trigger magic packet from there. Or, replace router with a switch. (Yes, several physical devices enslaved in a bridge will act as a switch) - obviously it would no longer be a firewall.
However, there is one more thing that MIGHT be worth checking: IPv6
Can anyone give a hint if it's possible to route IPv6 packet into the void?