Received: from [192.168.1.2] (example.com [220.127.116.11]) by mail.example.com (Postfix) with ESMTPSA id 92CD297DEA;
It is fine that the SMTP server records the public IP (
18.104.22.168) as it is what it sees. But I believe only Thunderbird can get my lan IP (
192.168.1.2 here, as the SMTP server on the Internet can’t find that) and it sent the info to the SMTP server.
How to make Thunderbird hide the lan IP in the header of emails sent out?
The private IP (lan IP) is likely the Extended HELLO (EHLO) or HELLO (HELO).
You can change the HELO message:
Go to Thunderbird’s
about:config page (in Preferences > Advanced > General > Config Editor).
mail.smtpserver.default.hello_argument preference (create it by right-clicking > New > String if it doesn’t exist yet).
localhost as its value. Then that field in the Email header will contains
localhost instead of your private IP.
One example for your reference:
Received: from localhost (example.com [22.214.171.124]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) (Authenticated sender: ...) by ....com (Postfix) with ESMTPSA id 36C...; Wed, 3 Jan 2018 18:22:39 -0800 (PST)