Menu

#34 LPD on multiple interfaces

Undecided
open
nobody
None
1
2013-05-14
2013-05-12
Rob Bos
No

I can tell aria2c to listen on a particular interface with --bt-lpd-interface, but it would be helpful to allow it to listen to more than one.

I would like to create three or more seed instances running off a network-mapped drive on localhost discoverable only by aria instances running on that computer, but allow the downloading instance to discover on the external network as well.

The downloading instance should have access to those three guaranteed seeds, plus any that it can discover on the local network segment, thus, LPD discovery on both localhost and on the external interface would be helpful.

Something like --bt-lpd-interface= to listen on all interfaces, perhaps. Then I could tell my local seeds to --interface=127.0.0.1 --bt-lpd-interface=127.0.0.1 and my downloading instance to bind to the external interface and --bt-lpd-interface=.

Discussion

  • Rob Bos

    Rob Bos - 2013-05-12

    As it stands, if I have 10 LAN computers participating in a download, there will be 30 "seeds" and 10 "downloading" instances, seeds that are actually pulling off a network drive. Ideally, I would like each host to see 3 seeds (off localhost) and 9 peers on the LAN segment.

     
  • Rob Bos

    Rob Bos - 2013-05-12

    The better solution would obviously be to have the central filer run a permanent torrent seed, but that is not currently politically expedient.

     
  • Rob Bos

    Rob Bos - 2013-05-12

    Maybe I could turn off LPD broadcast for the local seeds, specify a port number, and then manually point the downloading process to those ports somehow.

     
  • Rob Bos

    Rob Bos - 2013-05-13

    Actually, I tried 0.0.0.0 again, and it .. seems to be working. It didn't before..

     
  • Rob Bos

    Rob Bos - 2013-05-13

    Well, it's working reliably on one machine, but not another. Odd.. I guess this is my problem.

     
  • tujikawa

    tujikawa - 2013-05-14

    I'm not sure --bt-lpt-interface=0.0.0.0 works.
    But I pushed the commit to enable multicast loopback.
    So the multicast packet is going to the selected interface and loopback device.
    For example:

    Localhost seed:
    aria2c --bt-lpd-interface=127.0.0.1 --enable-lpd ...

    Localhost downloader:
    aria2c --enable-lpd

    Seed instance only listens loopback and its packet is sent to the loopback, so it can only be reached at local instance, including local downloader.
    On the other hand, local downloader does not specify LPD interface (you can if it is necessary), so its packet is sent to the default interface and loopback. The packet sent to the loopback can be retrieved by localhost seeder.

     
  • Rob Bos

    Rob Bos - 2013-05-14

    Thank you, I appreciate the patch and will give it a shot as soon as I have some time to set up the build environment.

     

Log in to post a comment.