lightning
lightning copied to clipboard
announce-addr: address 'dns:port' is not announceable
Trying to update c-lightning from 0.10.2
to 0.12.1
Get this error during start:
lightningd: /root/.lightning/config line 9: announce-addr: address 'btcpay763334.lndyn.com:9735' is not announceable
My config is the following
bitcoin-datadir=/etc/bitcoin
bitcoin-rpcconnect=bitcoind
experimental-offers
proxy=tor:9050
bind-addr=0.0.0.0:9735
network=bitcoin
announce-addr=btcpay763334.lndyn.com:9735
announce-addr=uewlcjmuuwcgs43lpcc7d64k2pf4xs7yyer7ztsq6cblyjxue3bc35qd.onion:9735
rpc-file=/root/.lightning/lightning-rpc
What should I do instead?
In our unit tests, clightning doesn't work either /root/.lightning/config line 4: announce-addr: address 'lightningd_dest' is not announceable
Indeed, they broke it at some point. I used to have DNS names in my announce-addr=
config lines, but they stopped working, and I had to start hard-coding IP addresses there, which is brittle.
Supposedly there's been defined a new node announcement type that allows gossiping DNS names in addition to IP addresses. Looking forward to that.
That's nice feature, but for the time being that would be nice to have a work around as we can't update :(
Any ideas, @rustyrussell?
That is correct, we had to disable automatic resolution, to allow non-resolved hostnames to be added and announced. If we were to resolve on our end we'd replace what is supposed to be a dynamic address that changes with DNS into a static IP that'll not work when the address changes (ISP renewing lease).
I'm sure @m-schmoock can explain it in detail, but the tldr is that some implementations didn't like us announcing the new address type (DNS symbolic names) and were dropping our node_announcements
so we had to temporarily disable it.
This is a regression, I had not appreciated that we would now treat names as literals to announce.
Until DNS-name address records become widely supported, we should always turn it to IP address unless overridden somehow!
Before DNS name gossip, if I remember, the DNS name were resolved into IP and those were what got gossiped.
I understand the problem with ISP dynamic ip, so I am happy about DNS announcement, it's shame it can't be enabled because of other implementations for now. But rather than disabling it, you should probably fallback to IP announcement for those hosts like before.
If there is a patch to restore previous behavior, I would be happy to just take it and use it on our distrib, so at least we can up to date with latest clightning versions.
I'm sure @m-schmoock can explain it in detail, but the tldr is that some implementations didn't like us announcing the new address type (DNS symbolic names) and were dropping our
node_announcements
so we had to temporarily disable it.
This LND issue has been resolved, and on current master the gossip announcement of type DNS is already non-experimental anymore. ( e0d6f3ceb connectd: DNS Bolt7 #911 no longer EXPERIMENTAL )