So if I'm understanding DKIM correctly, it basically is a public/private key type of service. However, how does this work if you send emails from multiple servers/sources? For instance, I have a split domain where I send some emails (under the same domain) from a hosted Exchange server and some from a cPanel shared hosting account. And on top of that, I've allowed some emails to be sent by 3rd parties (billing service, marketing emails service, etc.) so they can send using my domain. Even worse, some of these services don't even provide DKIM support. My SPF records are correct, but I want to get DKIM working as well (since Google right now is marking a lot of my emails as spam and apparently you need to enable DKIM to get things to start flowing smoothly at their end). Any help is greatly appreciated. Thanks!
P.S. If I'm able to enable DKIM on some servers I use, will doing so cause emails sent without DKIM signatures to get flagged? For example, will inbound email servers ALWAYS query my domain for DKIM public key, and then if they don't find a DKIM signature in the header then the email will be potentially flagged or discarded?