题 如何确定IP地址是单播还是任播? [关闭]


我搜索了互联网,无法找到答案。有人可以帮忙吗?


6
2018-02-20 12:25




你必须在哪里确定它是一个还是另一个? - NickW
我问你需要在哪里确定它,因为在这种情况下,上下文就是一切。从住宅ADSL线路,无法真正告诉您,从ISP边缘/核心路由器,您可能会看到它在多个前缀中广告。 - NickW
cdnjs.cloudflare.com的IP地址之一是198.41.212.162当我从香港ping 98.41.212.162时,我得到了~8ms。但我发现IP应该在美国芝加哥分配。如果该IP的机器在美国,则ping应远远高于8ms。所以我想要一个更好的方法来了解IP是单播还是任播,而不是traceroute或ping。 - John Wong
这实际上是一种相当准确的猜测方式,尽管实际的确认仍然很困难。 - NickW
也许你可以从多个地理位置运行traceroutes,并在它们之间进行比较,尽管如此,我认为你无论如何都不能做出100%自信的声明。 - NickW


答案:


如果您无法访问运行EBGP的计算机上的路由表(例如ISP的边缘路由器),则确定地址是单播还是完全置信的任播是不容易的。从最终用户的角度来看,使用特定路由到地址的决定,甚至是否有可能了解是否存在多条路由都无法使用常规网络工具来确定。

但是,通过多个地理位置的连接,您可以将traceroutes运行到相关的IP地址,并在它们之间进行比较,以确定它们是否在查找结束附近通过完全不同的目标。这可能只是多归属,因此它不是一种可以提供完全信心的方法。


5
2018-02-20 13:32





0.0.0.0和223.255.255.255之间的地址是单播。 224.0.0.0和239.255.255.255之间的地址是多播的。保留240.0.0.0及更高版本的地址。

使用多个地址的路由表中的单播地址完成任播。它似乎比多播更容易实现。如果不查看这些路由表,就无法区分任播地址和单播地址。这是设计中固有的。 Anycasting严格依赖于路由表,并且不像多播那样需要特殊的地址范围。 RFC 4768 隐藏Anycast Services的操作可以帮助您了解它的工作原理。

作为问题注释ping和traceroutes上的评论主题,可以指示地址和地址在本地进行。现在,IPv4地址范围已经完全分配,对于向地理上分散的客户提供内容的组织来说,任意广播都会变得更受欢迎。在这种规模上,它需要与ISP和网络提供商合作。

检查IP位置上的网络块分配提示的地址,但实际上只是告诉您联系已分配地址的组织的位置。该 IANA IPv4地址空间注册表 或其他GeoIP地址数据库指示预期将IP地址路由到的大陆或国家/地区。如果它似乎在不同的大陆内路由,那么它很可能在那里被发现。

IANA维持着 多播地址空间注册表 以及其他几个重要的互联网号码注册表。 RFC 6890 包含特殊用途IP地址的规范。


6
2018-02-20 12:47



@MikeScott我的评论是在他刚拿到第一段时添加的。 - NickW