我正在寻找在Ruby中构建一个bittorrent客户端(尽管语言在这里并不重要).
我读了一个BEP规范,它说查询/announce(没有DHT支持)跟踪器会给出一个当前为给定信息哈希连接的对等列表.
检查一下.我创建了一个torrent文件,我发现跟踪器返回我的机器的IP以及端口(我确认是我的机器上的Bittorrent客户端的运行端口,即Utorrent)
但是问题是Peers信息返回了我的ISP的IP即111.125.209.41(面向IP的公众,因为我在NAT后面).
现在我无法通过我的ISP 连接(通过TCP)到我的机器上运行的进程.
任何人都可以建议bitorrent如何在这方面工作,我该怎么做才能解决这个问题.
它可能会通过UDP Bittorrent使用UDP保持打孔不确定TCP上发生了什么.
有两个不同的问题。
第一个是通过各种nat穿越方法来实现,包括与nat设备协商或手动配置它。
第二个问题要么需要路由器能够结合转发端口进行发夹路由,要么需要本地对等点通过其他方式(例如LSD)发现内部地址。
| 归档时间: |
|
| 查看次数: |
559 次 |
| 最近记录: |