What happens if a host on the network receives an IP packet with a MAC source address that differs from the MAC address in the local ARP table for that source IP?
The ARP table entry for that IP was and will be filled via an valid ARP response.
Now I have noticed that the receiving host (Ubuntu 18.04) does not send a reply packet (ICMP echo response or TCP SYN/ACK ...etc). No reply packet is leaving the interface.
The question is now for what reasons the host behaves this way. What checks are being made with the packet MAC and IP addresses, the local arp table and routing table etc.?
Edit:
To clearify the scenario:
If host Hb sends a ping request to 10.2.0.5 (host Ha), Ha receives an ICMP packet with source IP 10.1.0.3 and the source MAC address is the MAC address of the router. But the ARP table of host Ha has an entry: 10.1.0.3 -> Hb MAC address. Thus the MAC addresses differ!