Hi !
After putting phones on a specific wifi ap, they are on a different ip range (and DNS, DHCP...)
As I use my phone to control Kodi, and I don't want it on all the time, I use the WOL feature on Kodi Remote (Google Play).
Thinking it wasn't going to work as they are on different subnet, I was surprised that it did, but for a short time.
It work actually for about 30s, until the ARP Flags for my Kodi laptop switch to 0x0:
- Working:
192.168.51.31 0x1 0x2 xx:xx:xx:b9:7c:37 * br-main
- Not working:
192.168.51.31 0x1 0x0 xx:xx:xx:b9:7c:37 * br-main
First of all, how can it works ? As it's a broadcast packet, it's not supposed to work, right ?
After investigating, I noticed that on Wireshark:
- Working:
- Not working:
So it sends a packet to a specific destination, not on broadcast, but I still can't figure out why it works.
I still can WOL with a PC located on the same subnet, but not from my phone.
Not knowing how to keep the flag at 0x2 , I started reading the forum for similar issued, and I found a post where they suggest to install udp-broadcast-relay, but I haven't been able to find it in the repos...
They also suggest to add a rule like that:
ip neigh change 192.168.1.254 lladdr ff:ff:ff:ff:ff:ff nud permanent dev br-lan
but it doesn't work either.
I found finally a website where they suggest to add something like this (I modified the interface/destination/gateway to match my case):
iptables -t mangle -A INPUT -i wlan1-1 -d 192.168.69.255 -j TEE --gateway 192.168.51.255
and it works.
But I don't know what are the caveats with a rule like that (DHCP?). Is there another way ? Maybe with the /etc/ethers
file ? Or a tips to have the flag always at 0x2 ?
Thank you !
EDIT:
maybe a more specific rule:
iptables -t mangle -A INPUT -i wlan1-1 -s 192.168.69.10 -d 192.168.69.255 -p udp --dport 9 -j TEE --gateway 192.168.51.255