I want to know which node the invoice is coming from.
A BOLT11 does not have to necessarily reveal this with certainty. Phantom node payments allow lightning nodes to generate invoices that can be paid to one of multiple nodes.
This is a feature in LDK that is marketed towards enterprise load-balancers, but it also can be used to get some deniability that you received a transaction. Other implementations could add this phantom invoice feature trivially (but they won't), or you can DIY it today with one LLM prompt.
Would a lightning address be better?
Lightning address is just a protocol to request BOLT11 invoices (which could be phantoms BOLT11 invoices)
Using lightning address requires DNS, but it doesn't have to be your IP-address hosting it. Likewise with BOLT11 phantoms, you can loadbalance/distribute the lightning address server itself.
Nothing stops you from hosting the lightning address server over a .onion (well, except that none of the wallets will actually query it correctly) Be the change you want to see!
A BOLT11 does not have to necessarily reveal this with certainty. Phantom node payments allow lightning nodes to generate invoices that can be paid to one of multiple nodes.
This is a feature in LDK that is marketed towards enterprise load-balancers, but it also can be used to get some deniability that you received a transaction. Other implementations could add this phantom invoice feature trivially (but they won't), or you can DIY it today with one LLM prompt.
Lightning address is just a protocol to request BOLT11 invoices (which could be phantoms BOLT11 invoices)
Using lightning address requires DNS, but it doesn't have to be your IP-address hosting it. Likewise with BOLT11 phantoms, you can loadbalance/distribute the lightning address server itself.
Nothing stops you from hosting the lightning address server over a .onion (well, except that none of the wallets will actually query it correctly) Be the change you want to see!