问题标签 [ipv6]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
ipv6 - IPv6 地址范围
继这篇文章之后,我对搜索 IPv6 地址范围很感兴趣。
在 IPv4 下,我将能够确定 ISP 提供的开始和结束 IP 地址,并使用这些整数值作为范围边界快速搜索数据库以查看数据库中是否有任何条目落入该范围。
IPv6 将如何影响这一点?ISP 是否仍会像现在一样在范围内拥有 IPv6 地址?如果您将 IPv6 地址作为两个 bigint 存储在 SQL Server DB 中,您将如何有效地搜索这些范围?
c++ - ipv6 向后兼容 ipv4 吗?
我有一个使用 ipv4 编写的小 udp 示例程序。如果我将代码更改为 ipv6,我是否仍然能够与使用具有 ipv4 地址的侦听器的任何人通信?我正在查看移植示例
http://ou800doc.caldera.com/en/SDK_netapi/sockC.PortIPv4appIPv6.html
我不确定简单地更改代码是否可以确保它工作,或者我是否必须以决斗堆栈模式编写它。
c++ - 测试 ipv6 应用程序
我有一个需要转换的网络应用程序,以便它适用于 ipv6 网络。您能否让我知道我需要做什么(替换套接字 API)?
还有一件事,我如何测试我的应用程序?
谢谢。
visual-studio - Visual Studio:如何让 Cassini 在 ::1 上监听?
Visual Studio 的内部开发 Web 服务器仅侦听来自本地计算机的连接。
不幸的是,网络服务器只绑定到IPv4环回地址:
在启用了 IPv6 的机器上(即 Windows Vista、Window 7),它不会绑定到IPv6环回地址:
当您在 Visual Studio 中推送播放,或从通知区域图标打开网站时,浏览器会启动并尝试连接到“ localhost ”:
localhost 不是真实地址,而是别名。在 Vista 及更高版本上,它被定义为:
因此,您无法通过尝试连接到localhost来浏览在本地主机上运行的网站,您必须将其更改为 127.0.0.1
我怎样才能让 Visual Studio 的内部网络服务器也监听
此外
?
c# - 从 Dns.GetHostEntry() 获取 IPv4 地址
我这里有一些代码在 IPv4 机器上运行良好,但在我们的构建服务器(IPv6)上它失败了。简而言之:
GetHostEntry 的文档说传入 string.Empty 将为您提供本地主机的 IPv4 地址。这就是我要的。问题是它在我们的 IPv6 机器上返回字符串“::1:”,我相信它是 IPv6 地址。
从任何其他 IPv4 机器 ping 机器会得到一个好的 IPv4 地址……并且从它自己执行“ping -4 machinename”会给出正确的 IPv4 地址……但是从它自己定期 ping 它会得到“::1:”。
我怎样才能从它本身获得这台机器的 IPv4?
networking - 开始使用 IPv4/IPv6 基础知识和开发的资源
我正在寻找可用于开始 IPv4 和 IPv6 网络开发的资源和书籍。到目前为止,我遇到的最相关的书是“ Unix Network Programming, Volume 1: The Sockets Networking API (3rd Edition) ”,它涵盖了这两种协议,但除此之外我没有找到太多。
我正在寻找的信息是这两种协议的详细工作方式、IPv6 及其处理方式与 IPv4 的不同之处以及如何使用 API(Windows 或 *nix)来设置跨两种协议的应用程序之间的基本通信。
上面提到的书已经是正确的起点,还是有其他资源和书籍可以用来开始这个主题?
php - 如何将 IPv6 从二进制转换为 MySQL 中的存储
我正在尝试以有效的方式将 IPv6 地址存储在 MySQL 5.0 中。我已经阅读了与此相关的其他问题,例如这个。该问题的作者最终选择了两个 BIGINT 字段。我的搜索还发现了另一种常用的机制:使用 DECIMAL(39,0) 来存储 IPv6 地址。我对此有两个问题。
- 与 2*BIGINT 等其他方法相比,使用 DECIMAL(39,0) 的优点和缺点是什么?
- 如何(在 PHP 中)将inet_pton()返回的二进制格式转换为MySQL 可用的十进制字符串格式,以及如何转换回来以便可以使用 inet_ntop() 进行漂亮打印?
geolocation - 使用 IPv6 进行地理定位?
我正在开发一个 IP 地理定位库,它使用 IPv4 地址的前三个八位字节来确定用户的国家、城市、纬度、经度等。就像一个魅力。
但它不处理 IPv6 地址,我希望它这样做。
有什么方法可以转换 IPv6 地址以获得相当于 IPv4 地址的前三个八位字节的地址,还是它们使用完全不同的编号方案,需要完全不同的 ipgeo 映射?
.net - IPv6 和 SoapTcpTransport.GetInputChannel (WSE)
我在获取 IPv6 地址以与 .NET WSE SoapTcpTransport.GetInputChannel 或更具体地说是 SoapReceivers.Add 一起使用时遇到问题,后者在后台使用 GetInputChannel。由于地球上似乎没有其他人遇到这个问题,我认为我做错了什么。
如果我使用 IPv4 地址和端口 (soap.tcp://192.168.0.198:9063) 创建 SOAP 输入通道,那么一切似乎都很好。当我将 IPv6 地址用于同一个网络适配器时(soap.tcp://[fe80::c450:7142:67f5:ad66%11]:9063),SoapTcpTransport.GetInputChannel 会引发异常:“System.ArgumentException: WSE813:以下传输地址无法映射到本地网络接口:soap.tcp://[FE80:0000:0000:0000:C450:7142:67F5:AD66]:9063/..”</p>
两者之间的唯一区别是 Uri 是使用 IPv4 或 IPv6 地址创建的。两个地址都响应 ping。Microsoft.Web.Services2 和 3 的这种行为是相同的。我有一个重现问题的 MS 单元测试:
networking - IPv6 区域解析
首先,我对 IPv6 的细节不熟悉,所以如果这只是对 IPv6 路由的误解,我不会感到惊讶。考虑我正在运行 P2P 覆盖网络的情况,其中一部分位于单个 LAN 的边界内。该 LAN 内的节点具有以下链路本地地址(由它们自己查看):
- 对等体 1 fe80::225:4bff:fea8:e200%en0
- 对等体 2 fe80::225:4bff:fea8:e201%eth1
- 对等体 3 fe80::225:4bff:fea8:e202%en1
现在,假设每个对等点都能够通过某种方式发现其他对等点,并拥有彼此的地址。每个对等点都在监听一个端口,比如 12345。如果对等点 1 想与对等点 2 通信,他们可能会尝试使用 URI:
tcp://[fe80:225:4bff:fea8:e201%eth1]:12345
这是我遇到问题的地方。对等体 1 没有名为“eth1”的适配器,因此它不知道这个 IPv6 区域标识符。如果区域 ID 被从地址中剥离,对等体 1 无法确定它必须使用哪个适配器来联系主机。
那么问题来了:是否有可能以标准方式解析 IPv6 地址的区域标识符?如果不是,我是否必须向系统查询所有区域标识符,并尝试使用每个区域标识符依次连接到地址,直到成功?还是一开始就尝试使用链接本地地址进行通信是一个愚蠢的想法?