lbry-sdk/lbrynet/core
Antonio Quartulli d827b4d5af platform ip: ensure daemon retrieves IPv4 address only
When contacting jsonip.com to retrieve the node external IP,
the connection might be established with IPv6 and thus return
an address belonging to that family.

This address is then used to initialize the external_ip member of
Daemon session, but unfortunately IPv6 is not yet handled well.

Using an IPv6 as external IP is currently breaking parts of the
Daemon resulting in no peer connectivity at all.

We should stick to IPv4 for time being.

http://jsonip.com/about says "ipv4-only":"https://ipv4.jsonip.com"

therefore, change the IP retrieval URL to ipv4.jsonip.com to
make sure the connection is established only using an IPv4 address.

Closes: https://github.com/lbryio/lbry/issues/971
Signed-off-by: Antonio Quartulli <antonio@mandelbit.com>
2017-10-31 06:59:40 -04:00
..
client fix uncaught CancelledError in peer_list 2017-10-11 14:05:03 -04:00
server Merge remote-tracking branch 'origin/fix_blob_reader_closing' 2017-09-29 12:37:15 -04:00
__init__.py pylint: add check for missing-final-newline 2016-12-14 19:21:59 -06:00
BlobAvailability.py fixed shutdown messages 2017-08-09 19:10:11 -04:00
BlobInfo.py pylint: add check for missing-final-newline 2016-12-14 19:21:59 -06:00
BlobManager.py add blob announcement information to session_status 2017-10-05 13:59:27 -04:00
cryptoutils.py use hashlib 2017-09-20 13:59:17 -04:00
DownloadOption.py pylint: add check for missing-final-newline 2016-12-14 19:21:59 -06:00
Error.py better download errors 2017-09-28 14:04:02 -04:00
file_utils.py remove start and reveal from file_utils 2017-03-07 21:17:06 -05:00
HashAnnouncer.py dummy hash announcer requires hash_queue_size() function 2017-02-20 16:48:22 -05:00
log_support.py increase third party logger levels 2017-07-14 14:29:12 -04:00
looping_call_manager.py replace some strings 2016-10-20 11:30:38 -07:00
Offer.py pylint: add check for missing-final-newline 2016-12-14 19:21:59 -06:00
PaymentRateManager.py remove lbrynet.metadata 2017-06-02 11:50:50 -04:00
Peer.py Adding connection manager tests, and modifying connection manager to be testeable, fix bug where failed connection was not marked as down 2017-02-13 12:17:27 -05:00
PeerFinder.py pylint: add check for missing-final-newline 2016-12-14 19:21:59 -06:00
PeerManager.py pylint: add check for missing-final-newline 2016-12-14 19:21:59 -06:00
PriceModel.py add only-free payment rate manager for testing 2017-02-16 11:17:37 -05:00
PTCWallet.py fixup long lines 2016-12-07 09:38:34 -05:00
RateLimiter.py fixed shutdown messages 2017-08-09 19:10:11 -04:00
Session.py better upnp redirect 2017-10-24 19:11:19 -04:00
sqlite_helpers.py pylint: add check for missing-final-newline 2016-12-14 19:21:59 -06:00
Strategy.py add only-free payment rate manager for testing 2017-02-16 11:17:37 -05:00
StreamDescriptor.py close the reader directly instead of calling close_read_handle() 2017-09-27 17:30:20 -04:00
system_info.py platform ip: ensure daemon retrieves IPv4 address only 2017-10-31 06:59:40 -04:00
utils.py use LoopingCall in SingleProgressManager to simplify it 2017-07-05 16:33:02 -04:00
Wallet.py changes that jack pointed out 2017-10-25 12:36:54 -04:00