I am using a QNAP-NAS which I start via WOL.
I recently created a Bond in the QNAP and ROS (2x 1Gig, XOR via Hash L3+4).
Everything works as expected, the only problem is, if I want now to start the QNAP via WOL (via my AVM-Router), it doesnt work…
After debugging, I found out the Mikrotik sends out the WOL-Frame the “wrong” Interface of the Bond.
The WOL-Frame will arrive the QNAP on the secondary-NIC, which has not the MAC of the primary-NIC/Bond itself.
I assume the result of the XOR-equation results (unfortunately) in the (for the WOL wrong) interface.
Is there a way to define a rule: If a WOL-Packet (0x0842) arrives, send this always out via InterfaceX of the Bond?
No. Bonding just presents an interface - you pass a packet to it, the egress interface is chosen based on the packet header and hash type selected.
If the QNAP doesn’t listen on all interfaces for WoL packets it should leave the ones on which it does not in the down state, the transmitting device will then send all packets to the only active receiving interface on the QNAP.
If you can’t change the behaviour of the QNAP just swap the cables at one end.
This checks if the QNAP is alive (pinging 10.0.0.11 every 30 seconds) and if its down, it will disable the “wrong” eth-interface (in this case ether2). This way the Bond is forced to send out everything via ether1, which is connected to the correct NIC/MAC for WOL.