I'm hoping someone can help me trouble shoot a problem I'm having.
I have two private channels with lots of inbound liquidity on my Alby Hub node, but I'm not receiving sats to the wallet through them.
I opened a public channel to Stacker News, which has been receiving sats. The problem is that I run out of inbound liquidity on that channel pretty fast.
What might be going on with my private channels that prevents routes from being found? How do I troubleshoot this sort of thing? And, what can I do to fix it?
However you're generating an invoice, there should be a route hint included in the result. This tells the payer how to get sats to your node if it will need to use private channels.
Try generating an invoice and decode it. If a route hint is not included for your private channel(s) with inbound liquidity, it could be impossible for a sender to complete the payment. Generally your node should know that payment will be impossible without a route hint (if that's indeed the case) and it should include one without prompting.
reply
Thanks
reply
Here's a lightning invoice decoder
reply
This is an invoice of mine, I also have a private channel that's receiving sats from SN just fine.
The Public Key and short channel ID are the routing hints, correct?
reply
Yes, here it's telling the sender to get to the provided node, then ask it to use that channel. The channel is using an alias, because it's not public, but that node will know which one you're talking about. Then, the sender can compute the route and factor in how much this peer charges to use this channel.
Your node can add multiple of these hints and each hint can even have multiple hops. It should be smart enough to figure out which hints it needs depending on the size of the payment and how much inbound liquidity you need.
reply
yes, the routing info node should be your LSP nodeID, you can check it in any LN explorer
reply
I've also sometimes had trouble finding routes through SN's node. Sometimes I can only find a route if I increase the max fee to something like 100+.
One thing I noticed about SN is that sats are always flowing out of it.
On my public LN node, as soon as I put sats on the SN side of the channel, it almost immediately gets routed back to my side and onto some other destination.
My hypothesis is that there's a huge demand for liquidity to move sats out of or through SN. Thus, channels are setting high fees for the usage of those channels. The low fee ones quickly get exhausted (as my public channel always does.)
Maybe @k00b or @ek can comment. It's definitely a pattern that i've noticed.
reply
Thanks, that's sort of what I imagined was happening, but I'm still new to managing a lightning node.
reply
57 sats \ 1 reply \ @ek 17h
soon you will teach @grayruby
reply
21 sats \ 0 replies \ @grayruby 16h
Definitely. I have no clue.
reply
32 sats \ 1 reply \ @k00b 17h
If you don't want other pushing around your liquidity in a direct channel you have with SN you have two options:
  1. make the channel private
  2. make the channel expensive (you won't pay routing fees from SN to you and vice versa)
reply
I am certainly thinking of raising the fee, and i imagine many other channels have done so after noticing how quickly their liquidity gets used.
reply
280 sats \ 18 replies \ @ek 17h
Cool to see your foray into the lightning network!
I opened a public channel to Stacker News, which has been receiving sats. The problem is that I run out of inbound liquidity on that channel pretty fast.
The issue is that you created a public channel to Stacker News which anyone can use for routing payments (and paying you for it).
You only need a private channel to SN to send and receive from/to SN. You can also use that channel to pay invoices from other nodes but receiving will require to add "route hints" which probably requires manual configuration.
reply
As far as I can tell, I'm only receiving my own sats on that channel. Since I don't have any other public channels, I wasn't expecting any routing through it.
Why would creating a public channel to SN make it so SN can no longer route to my Alby wallet?
reply
27 sats \ 16 replies \ @ek 16h
Since I don't have any other public channels, I wasn't expecting any routing through it.
Mhh, good question! I had to check and I found conflicting information. Using a public + private channel for routing might be called "shadow liquidity" according to this source:
  • does not route payments (unless used in parallel with a public channel to the same node - aka shadow liquidity)
but the docs from Lightning Labs say this:
Private Channel
A private channel is a channel that is not announced to the network. As such it cannot be used for routing, and when receiving payments through a private channel its information needs to be included in the invoice.

Why would creating a public channel to SN make it so SN can no longer route to my Alby wallet?
It could still but your problem sounded like your inbound liquidity gets drained very quickly.
reply
It's only my inbound liquidity on the channel with SN that runs out. There's plenty on the private channels, which I had set up previously and which used to receive payments from SN.
reply
39 sats \ 14 replies \ @ek 16h
Oh, mhh. Is it possible that you withdrew as much as the channel is big, so all liquidity is on your side now in that public channel?
reply
Not according to the information Alby provides. The receiving capacity on those channels is sufficiently large for anything I've been doing.
Edit: Yes, that's exactly the situation wrt the public channel. I'm wondering why payments aren't going to the channels with receiving capacity.
reply
132 sats \ 10 replies \ @ek 16h
Ok, let me summarize your current setup and problem:
You have 3 channels. Two are private and to LSPs recommended by Alby Hub. One is public to SN.
Your problem is that you can't receive payments from SN.
You analyzed the problem a little yourself and noticed that you run out of inbound liquidity on that public channel fast:
I opened a public channel to Stacker News, which has been receiving sats. The problem is that I run out of inbound liquidity on that channel pretty fast.
but this sounds contradictory to this statement:
The receiving capacity on those channels is sufficiently large for anything I've been doing.
So I am confused. Am I right to assume that you attached your Alby Hub node via NWC to SN and see a lot of ERROR autowithdrawal failed: no route found in your logs which is the problem you're trying to solve?
Increasing the max fee might help. Is it at 1%? And how much is it trying to withdraw? It's roughly the difference between your current and desired balance.
reply
You analyzed the problem a little yourself and noticed that you run out of inbound liquidity on that public channel fast:
There we go...
It's roughly the difference between your current and desired balance.
users must also keep in mind a 1% of the channel at least to leave it for reserves, on both sides not just on your side.
For example:
  • you have a channel of 1M with only 10k sats inbound space available, you cannot receive more than 9k sats.
But... if you send 9k sats and after that another 100 sats, you can receive, until it fills out that channel.
The channels with lots of receiving capacity are the other two private channels.
On the public channel, I generally haven't had enough receiving capacity for the daily rewards. Then I get the error "no route found". I had tried increasing the default fee (perhaps not enough though). I'd rather just withdraw to another wallet than pay a hundred sat fee.
What's confusing to me is that the two private channels had been receiving transactions and now they aren't.
24 sats \ 1 reply \ @ek 16h
I'm wondering why payments aren't going to the channels with receiving capacity.
I see. Could be related to your max fee setting. Maybe the route through these LSPs is too expensive for your withdrawal amount and max fee setting?
reply
That's certainly something I was wondering. SimpleStacker mentioned needing to raise his max fee to 100 for some transactions to go through.
101 sats \ 24 replies \ @k00b 17h
The only person that can send you money on a private channel is your private channel partner.
Lightning payments are "source routed" meaning that the sender constructs the route. Because those channels are private, if the sender isn't your private channel partner, they can't route to you using those channels.
reply
That's confusing, because I've been able to send and receive sats on these channels before (including from SN).
reply
39 sats \ 1 reply \ @k00b 17h
You can send using your private channels to anywhere else, but the only one who can pay you on a private channel is your private channel partner (at least afaik ... given your private channel is with an LSP there might be something else going on).
reply
150 sats \ 0 replies \ @ek 17h
unless you add route hints like Phoenix does but I think that requires manual configuration
reply
Is possible that your peers disable them.
reply
Is there a way for me to see this?
reply
In Alby? No. Not yet, they do not have those features. I hope someday. In a public explorer? No. Are private, you will never see them there. If you run a LND node install Thunderhub next to it and you can see them if are disabled or not. Or through CLI.
Let's be clear. Disabled it doesn't mean closed. Just that payments are not allowed through them. Temporary and can be re-enabled anytime.
reply
If that's what happened, what's the cleanest workaround?
reply
Close them and open new ones with proper LSPs.
reply
Alright. That raises my next question: How do you determine who proper LSPs are?
I chose the first two suggested by Alby.
How does this interact with the concept of an "attached wallet"?
User A and User B both have direct private channels to SN with plenty of liquidity both ways. They have no other channels. They both have attached wallets.
Are they able to zap each other directly through SN?
reply
244 sats \ 4 replies \ @k00b 17h
Yes, because SN proxies the invoice. The sender pushes money to SN (SN can't yet settle it without a "cryptographic proof" it only gets when the receiver is paid), SN pays the receiver, then SN settles with the sender.
Both the sender and receiver only need to know about SN and be able to route to/from. Neither lightning node knows who the other node is.
reply
Are you worried this makes SN a money transmittal organization? 😵‍💫
reply
251 sats \ 0 replies \ @ek 17h
we're moving towards this to not be a money transmitter
reply
21 sats \ 1 reply \ @k00b 17h
This is what every lightning routing node does.
SN never has custody which, to date at least, has been what determines whether an entity is a money transmitter.
reply
I see.... there is still much I need to learn about the details of how lightning works.
reply
71 sats \ 0 replies \ @Golu 8h
reply
Learning a ton reading through this, thanks. Trying to figure out Lightning makes me feel like I have a -100 IQ debuff on.
I opened two private channels the other day in AlbyHub, one to SN, one to an LSP. I think I'm best off making some room liquidity-wise on the SN private channel and just using that one.
Going forward I'll probably keep Alby Hub for SN zaps and nostr, and maybe the occasional small incoming payment. Then use Zeus for larger transactions.
reply
From what I can tell, the easiest solution for me is going to be to send a bunch of sats out to one of my other wallets, which should free up as much space as I need, and then just rely on my channel with SN.
reply
Be careful with who you are opening private channels. Open with good LSPs that are not blocking routes to those channels. Usually 90% public routing nodes just want to assmilk others and "earn passive income". Yes, instead of fucking the banksters we are fucking each others.
Yes, these private channels are a pain in the ass for them and many routing nodes don't even know how to deal with private channels and they treat them as public dead channels (because they do not see them always online).
So I suggest to open channels with well known LSPs that know how to treat private channels. Also that will keep open and enabled (not disabled) your channel as long as you keep a certain amount of balance on your side.
Do not keep a channel almost empty on your side! That means a cost for your peer and eventually they will close that channel. If you empty it more often, try to put back the balance on your side. Keep it busy. Remember: the LSP wants you to USE that channel not keeping it empty, dead.
It is a long way to understand this economics of channels, private and public.
reply
Thanks. I've tried to keep in mind some of this advice from previous posts and comments you've made.
I would be using these channels more if the transactions weren't failing.
reply
I use many private nodes, and my payments never fail. But I choose very carefully my peers and sometimes I avoid direct routes with my final destinations.
My only p2p channel I have with a bar where I experiment paying my beers with keysend, through that private channel with bar owner's node. All the rest are using 2-3-4 hops.
reply
When you want to receive payments to a private channel, invoices need to contain a routing hint telling the sender which node the last hop of the payment should go through. Without the routing hint the sender has no idea where to route the payment.
reply
That seems like a pretty big problem, then, since Alby encouraged all of their custodial users to switch to Alby Hub and open private channels.
reply
37 sats \ 1 reply \ @ek 16h
Maybe Alby Hub includes the routing hint. Else the LSPs wouldn't work properly I think.
reply
One way to find out: create an invoice from Alby Hub and paste it into https://lightningdecoder.com/ See if it contain one of your peers with private channels.
reply
Yes but their software MUST include those route hints.
reply
And this is only one simple problem that many newbies stackers will have using external wallets with SN.
AS I WARNED SO MANY TIMES HERE. This is just the beginning of a long journey full of troubles. SN pushed too early this "self-custodial" way of zapping, without teaching stackers and preparing them properly!
But nobody seems to pay attention to my warnings. You can hate all you want for warning you... You can't push clueless newbies that until now are just barely using WoS or Blink to a full self-custodial way on LN. THEY MUST LEARN A LOT OF THINGS.
reply
That's fair, but dummies like me can trip over a bunch of these landmines, so that later stackers don't have to.
reply
You are not dumb / dummy, you are a smart guy that knows what he's doing. Only that you jumped too early into this and hit your forehead to the door.
Is ok, you will learn a lot from this. And maybe more stackers if they read this thread.
reply
reply
hahaha something like that, you were looking around and step on that thing and hit you :)
reply
20 sats \ 4 replies \ @ek 14h
When is it too early to jump into LN?
reply
Jumping from WoS (SN) to Zeus is a long way... and will skip a lot of useful things to learn. And many will break their necks trying to skip those steps.
reply
I should have tried coinos first.
reply
20 sats \ 1 reply \ @DarthCoin 14h
No, that meme is not about what you should've tried for SN, but what a normal new user should do in LN realm before doing the move from SN custodial to self-custodial.
Is about learning all the LN tricks and managing LN channels in many different ways. Then you will navigate through any LN node as the best navigator no matter how many storms you will encounter.
Like this guy
Now just stick with that Alby Hub and try to learn more on the fly. Coinos could fix temporary your problem and continue using SN with it until you fix your issues with Alby. Yes, is always good to have alternative options. As I said many times: use multiple LN wallets. Be prepared for any case.
reply
I'm planning on using coinos for SN on my phone. I wasn't saying it as a solution for the other problem.
It's like I jumped into the deep end first and waded around the shallow end later.
Sorry but im asking you a different question. Why are you running a node only for personal usage?
reply