问题标签 [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.

0 投票
2 回答
3260 浏览

networking - getaddrinfo 中 AI_V4MAPPED 标志的用途是什么?

getaddrinfo 调用有许多有趣的标志。我想知道 AI_V4MAPPED 标志的目的是什么。在任何系统上,我似乎都无法让 getaddrinfo 生成 ::ffff:nnnn 表单地址,正如我在设置此标志时所期望的那样。我期待错了吗?我看到错误了吗?

特别是,如果我询问 AF_INET6 系列地址并指定 AI_V4MAPPED,我希望看到仅具有 DNS A(IPv4 地址)记录的主机的 ::ffff:nnnn 地址。而且我通常还期望,如果我指定 AI_ALL,我将同时获得主机的 DNS AAAA(IPv6 地址)记录和 ::ffff:nnnn 格式的 DNS A 记录。

再说一次,我在这里期待所有错误的事情吗?

我已经在 Fedora 11 - glibc 2.10.1 和 OS X 10.4 上对此进行了测试。

0 投票
1 回答
1351 浏览

macos - IPv6 多播寻址:是否所有“组 ID”都被视为有效/用户可分配?

我在程序的本地链接 IPv6 多播例程中看到了一些“有趣”的行为。似乎如果我设置了 112 位组 ID 字段的高 16 位中的任何一个,那么 MacOS/X 将不再接受这些多播数据包。我的问题是,这是 MacOS/X 网络堆栈中的错误,还是有某些原因设置组 ID 字段的高 16 位会影响路由行为?

更具体的信息如下:

  • 从一台 Mac 多播到另一台 Mac 始终有效(在 10.5 和 10.6 上测试)

  • 从 Linux 到 Windows 的多播始终有效

  • 仅当多播地址中组 ID 的高 16 位设置为零时,从 Mac 到 Windows、Windows 到 Mac 或 Linux 到 Mac 的多播才有效。例如:

  • ff02::666 作品
  • ff02:0:ffff::666 作品
  • ff02:1::666 不起作用
  • ff02:8000::666 不起作用

    • 在“不起作用”的情况下,在 Mac 上运行的 WireShark 显示 Mac 已接收到多播数据包,但这些数据包从未传递到 Mac 上的接收应用程序。这是否意味着 Mac 网络堆栈存在错误,或者是否有一些我不知道的多播寻址更深层次的魔力?
  • 0 投票
    3 回答
    1209 浏览

    php - $_SERVER['REMOTE_ADDR']; 的可能返回值是多少?

    在编写登录模块时,我想记录 IP 作为额外的措施,以验证另一侧的人仍然是另一侧的同一个人。

    我正在使用$_SERVER['REMOTE_ADDR']一种(多种)方法来获取远程机器的 IP 地址。除了 IPv4 或 IPv6 地址之外,我还应该期望它返回任何其他值吗?

    0 投票
    1 回答
    142 浏览

    apache - Mongrel 做 IPv6 好吗?

    我正在使用 mongrel + apache 2.2 + mod_proxy_balancer。

    apache2.2 是 IPv6 很好 http://httpd.apache.org/docs/2.2/en/bind.html#ipv6

    Mongrel 做 IPv6 好吗?

    平台:RHEL 红宝石:1.8.6

    0 投票
    2 回答
    2682 浏览

    python - 如何强制 python httplib 库仅使用 A 请求

    问题是使用 httplib 的 urllib 正在查询 AAAA 记录。

    我想避免这种情况。有没有一个很好的方法来做到这一点?

    0 投票
    6 回答
    58893 浏览

    java - 如何将地址从 IPv4 转换为 IPv6

    这可能吗?如何将 ipv4 转换为 ipv6 地址?

    这里有几个例子:

    我正在用 Java 寻找解决方案。

    谢谢,

    0 投票
    2 回答
    2145 浏览

    ipv6 - 如何确定 ipv6_mreq 结构的 ipv6mr_interface 字段的值

    我正在尝试创建一个 BSD 套接字来侦听来自特定 IPv6 多播地址的消息。我目前创建侦听正确地址 0::0 的套接字没有问题。

    问题是我在具有多个 NIC 的小型嵌入式 linux 服务器上运行;这里 ipv6_mreq 的 ipv6mr_interface 字段很重要。通过反复试验,我确定 0、1 和 3 不起作用,但 2 起作用(它将所有 IPv6 多播消息发送到我的地址 ff05::3,到达正确的接口)。

    我的问题是:在 linux 中,我如何将我的接口、我知道的谁的地址与正确的接口号相关联?

    0 投票
    4 回答
    47093 浏览

    c++ - 如何同时支持 IPv4 和 IPv6 连接

    我目前正在开发一个 UDP 套接字应用程序,我需要构建支持,以便 IPV4 和 IPV6 连接可以将数据包发送到服务器。

    我希望有人可以帮助我并指出正确的方向;我发现的大部分文档都不完整。如果您能指出 Winsock 和 BSD 套接字之间的任何区别,那也会很有帮助。

    提前致谢!

    0 投票
    1 回答
    758 浏览

    ruby-on-rails - Rails 2.0 能很好地处理 IPv6 吗?

    我正在使用 mongrel + apache 2.2 + mod_proxy_balancer。

    apache2.2 是 IPv6 很好http://httpd.apache.org/docs/2.2/en/bind.html#ipv6

    Mongrel 做 IPv6 好吗?

    平台:RHEL 红宝石:1.8.6

    /actionpack-2.0.5/lib/action_controller/request.rb

    这是特别担心的。

    0 投票
    2 回答
    9768 浏览

    network-programming - 如何初始化 struct in6_addr?

    我知道一种方法可以做到这一点,

    但不能这样,

    似乎我可以使用 1/2/3 的括号。为什么?

    谢谢。