We have all seen it where it appears that either yourself or someone internally (user@mydomain.com) within your exchange organisation appears to be spamming users in the internal address book.
This can be annoying as you cannot block these users you just need to find a way of stopping them being “spoofed”, this is how to stop from from your own domain in Exchange 2013 and Exchange 2016.
First we set a filter for your domain name with the following command in Exchange Power shell.
Set-SenderFilterConfig -BlockedDomains mydomain.com
We then make sure that we accept email still for the domain internally with the following.
Set-SenderFilterConfig -InternalMailEnabled $true
The make sure you restart the Exchange Transport Service.
With the above we are removing the capability to receive email from your own domain externally but still allowing internally. The only issue this may cause is if you have SPF records that allow external resources to send email or relay internally on your behalf.
For a more in depth look into Exchange 2013 and Exchange 2016 Spam configuration then look at this article.