Skip to content

Recover funds stuck in CLOSING state from Eclair Wallet 0.3.0

Fabrice Drouin edited this page Oct 27, 2020 · 19 revisions

Summary

This tutorial will help you recover funds from Eclair Wallet in case of an unilateral close (Local Commit). Due to a bug in Eclair Wallet 0.3.0, in some cases funds are not returned back to the on-chain wallet and channel is stuck in CLOSING state indefinitely.

The bug is due to Eclair Wallet sending a malformed request to Electrum servers, preventing the refund transaction to be published. This would be very easy to fix if we could update the app, but that is unfortunately not an option.

As a workaround, we have modified an Electrum server so that it understands Eclair Wallet's malformed request, and we use DNS spoofing to make Eclair Wallet use our modified Electrum server instead of the regular ones.

Step-by-step tutorial

  1. Change your phone's main DNS server to 52.87.166.165 using one of the two methods below
  2. Open http://eclair.dns in your browser (use http, not https), you should see this:
Eclair Wallet recovery DNS Configuration OK 
  1. Restart Eclair Wallet and enter your PIN
  2. You should see an incoming transaction shortly
  3. At this point you can switch back to your normal DNS
  4. When the refund transaction reaches 3 confirmations, the corresponding channel will move to state CLOSED and disappear from the list

Method #1 (easier, using a third party app)

  1. Install this app: DNS Changer
  2. Open the app and set DNS1=52.87.166.165

Method #2 (more involved, no third party app)

  • First connect to any Wi-Fi Hotspot (note: some users had to deactivate IPv6 on their network)
  • Navigate to Settings > Wi-Fi from you Android phone
  • Press and hold on the Wi-Fi zone name that you wish to connect to ; then choose Modify Network

Modify Network

  • Scroll down and tap/check Advanced Options ; it will bring two more settings

Advanced Options

  • Tap on DHCP and choose Static
  • Scroll down, and find DNS 1 ; edit the value to 52.87.166.165

Change DNS 1 value

  • You might need to disable and re-enable Wi-Fi to take changes into account
  • Restart your phone to clear the DNS cache