My workstation is connected to one of the corporate ethernet switches. There are multiple VLANs. ipv4 broadcast and ipv6 FF02::1
only work within current VLAN.
I have enabled wake on lan and waking it with a magic packet from another workstation, which is in another VLAN/subnet. Therefore I cannot use a broadcast address. Instead I have to use a unicast address.
However, this only works if I put an intermediate 5-port domestic switch between my workstation and the corporate switch. Can somebody explain that?
It is obviously not a timeout, because I send the packet right after I put my workstation to sleep. It looks like that side somehow notices my actions and instantly erases the ARP and ipv6 neighbor cache. With a domestic switch WOL works, at least for several minutes.
My network card is old and does not support ARP offload (I never saw one).
Upd:
I was able to simulate a sleeping workstation by running this command on Linux:
iptables -I OUTPUT -j DROP
...and then launched tcpdump. Initially a lot of packages come. If I replug the cable between my switch and the PC, packages are still coming, but if I replug the cable between my switch and the corporate switch, they stop coming. There are rare CDPv2
packets.
I think that when I put my workstation to sleep, a short disconnect occurs, possibly due to the card lowering the network speed. My card has no "WOL speed" setting.