简体   繁体   English

P2P 网络专有的并行 IP 地址空间?

[英]A Parallel IP address space exlusively for a P2P network?

I would like to do this because it would make peer location much more effective in my p2p network as I would know that all the addresses would be part of this network.我想这样做是因为它会使对等位置在我的 p2p 网络中更加有效,因为我知道所有地址都将成为该网络的一部分。

How could I do this while remaining compatible with current transport layer protocols such as SCTP, and the current hardware used on the big wide Internet?在保持与当前传输层协议(如 SCTP)和当前在大互联网上使用的硬件兼容的同时,我如何才能做到这一点?

Thanks, Andreas谢谢, 安德烈亚斯

I suggest using IPv6.我建议使用 IPv6。

  • There is enough address space that you can create up to 2^40 "unique unicast" ranges, each with 16 bits of subnet and 64 bits of host ID.有足够的地址空间,您可以创建多达 2^40 个“唯一单播”范围,每个范围都有 16 位子网和 64 位主机 ID。

  • Protocols such as UDP, TCP, and SCTP already work on top of it UDP、TCP 和 SCTP 等协议已经在其上运行

  • It already has major operating system support.它已经拥有主要的操作系统支持。

See http://www.rfc-editor.org/rfc/rfc4193.txthttp://www.rfc-editor.org/rfc/rfc4193.txt

Densely filling the 40-bit unique-id is discouraged.不鼓励密集填充 40 位唯一 ID。 Use the random generation method mentioned in the RFC.使用 RFC 中提到的随机生成方法。

Put simply, you can't.简单地说,你不能。 IPv4 IPs are distributed by IANA to the five major IP registries: ARIN (North America), RIPE (Europe), APNIC (Asia/Pacific), LACNIC (Latin America/Carribean), and AfriNIC (Africa). IPv4 IP 由 IANA 分配给五个主要的 IP 注册管理机构:ARIN(北美)、RIPE(欧洲)、APNIC(亚洲/太平洋)、LACNIC(拉丁美洲/加勒比)和 AfriNIC(非洲)。 These registries then distribute those out to ISPs.然后,这些注册中心将这些信息分发给 ISP。

There are blocks reserved for local networks, but those are not routable over the public Internet... they must be encapsulated;为本地网络保留了一些块,但这些块不能在公共 Internet 上路由……它们必须被封装; this is how VPNs work.这就是 VPN 的工作方式。

The best way to have this kind of functionality is probably to use a name lookup service, or even a peer discovery service in the protocol itself.拥有这种功能的最佳方式可能是使用名称查找服务,甚至是协议本身中的对等发现服务。

The fact is, no matter what you do, it is likely that you will have to get your application to perform extra work on top of the IP protocol anyway, because the IP protocol itself supports only 1 address space, you need to add another layer to add an independent address space.事实是,无论你做什么,很可能你必须让你的应用程序在 IP 协议之上执行额外的工作,因为 IP 协议本身只支持 1 个地址空间,你需要添加另一个层添加一个独立的地址空间。

It looks like you're trying to create a network inside of a P2P "world".看起来您正试图在 P2P“世界”内创建一个网络。 So all the users using the P2P app would have a second IP address, say Alice has 10.0.2.40, that could be used by Bob, another user of the app, to get to Alice.因此,所有使用 P2P 应用程序的用户都会有第二个 IP 地址,比如 Alice 有 10.0.2.40,该应用程序的另一个用户 Bob 可以使用它来访问 Alice。 Right?正确的?

With that regards, it looks like you'd want to set up a VPN on each client and use some sort of route table modifications so the VPN is only used for the address-space allocated by the the P2P program (say the 10.xxx network).考虑到这一点,您似乎希望在每个客户端上设置一个 VPN 并使用某种路由表修改,因此 VPN 仅用于 P2P 程序分配的地址空间(比如 10.xxx网络)。

But there are problems with that.. for example you'll never find an address space that everyone has free to use.但是这样做存在问题..例如,您永远找不到每个人都可以免费使用的地址空间。 Home Routers use 192.168.xx, corporate networks or enthusiasts (like myself) use 10.xxx, and the 172.something is used by other sysadmins for stuff I'm sure.家庭路由器使用 192.168.xx,公司网络或爱好者(如我)使用 10.xxx,而 172.something 被其他系统管理员用于我确定的东西。

Disclaimer: Not a networking genius, I'm speculating here.免责声明:不是网络天才,我在这里推测。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM