问题标签 [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 投票
4 回答
212 浏览

database-design - 将 IP 地址保存到数据库

我想将用户的 IP 地址保存到我的数据库中,以防万一出现任何法律问题,我们需要追踪谁执行了哪些操作。由于我非常怀疑我是否真的需要使用这些数据(好吧,也许是为了计算独特的点击量或其他东西)你认为我可以把它转储REMOTE_ADDR到一个字段中吗?如果是这样,该字段的长度应该是多少?39 个字符应该适合 IPv6 地址,不是吗?我不知道我是否会得到这些,但以防万一......

0 投票
2 回答
3513 浏览

c++ - IPV6 链路本地组播

我试图弄清楚如何使用 IPV6 进行相当于 IPV4 广播的操作。

我正在创建一个非阻塞 IPV6 UDP 套接字。

从侧面广播我实际上只是在端口 12346 上发送到“FF02::1”。

在聆听方面,我发现我需要加入该小组,所以我做了以下事情:

但是 setsockopt 总是返回“WSAENOPROTOOPT”。为什么?谁能帮我解决这个问题?我完全不知所措。

编辑:我将级别更改为“IPPROTO_IPV6”,但现在我得到一个“WSAEINVAL”。

0 投票
4 回答
11934 浏览

c++ - 将 getifaddrs 移植到 Win XP

我正在尝试将 MacOSX 应用程序移植到 Windows,但遇到了有关 getifaddrs 的问题。基本上windows不支持它。我试图找到一种重新实现它的方法(对于 AF_INET 和 AF_INET6),但 Windows 上的“等效”功能似乎与 MacOSX 支持完全不同。

以前有人做过这种转换吗?如果是这样,有没有一种好方法可以让 Windows 像 MacOSX 一样向我报告界面信息?

0 投票
5 回答
2043 浏览

c++ - 以编程方式检查是否在 Windows 上启用了 IPv6

有没有办法以编程方式检查是否使用 c++ 在 Windows 上安装/启用了 IPv6?在接口级别或系统范围内。

0 投票
5 回答
22525 浏览

java - 用于接受有效主机名、IPv4 或 IPv6 地址的 Java 正则表达式

任何人都有一个好的(最好是经过测试的)正则表达式来只接受有效的 DNS 主机名、IPv4 或 IPv6 地址?

0 投票
3 回答
36569 浏览

java - 为什么 request.getRemoteAddr() 根据上下文返回 ipv4 或 ipv6(post 查询或 ajax 查询)

我已经使用 Spring/GWT 制作了一个使用 Flash 上传文件的 Web 应用程序。

当我使用 GWT 发送 ajax 请求并尝试获取用户 ip 地址时,我得到一个 ipv4 地址,例如:127.0.0.1

但是当我用 flash 上传文件时(以及同一个 webapp 上的发布请求),我得到一个 ipv6 地址 0:0:0:0:0:0:0:1

我使用相同的代码来获取用户 ip,即:

问题是我使用了一个使用 ip 地址的签名来确保用户可以上传文件(由于使用 flash 上传时会话丢失的错误),并且当我使用 ajax 或通过 flash 发布时,ip 地址会发生变化。

有什么问题,我怎样才能获得相同的 ip 格式?

谢谢

0 投票
1 回答
1605 浏览

command-line - 在命令行中设置 IPV6,Win PE

我可以在命令行中设置 IPv6 ip 地址吗?如果可能的话,请建议我使用的命令。我正在使用与 VISTA 相同但未安装 GUI 功能的 WinPE 环境。

谢谢你。

0 投票
1 回答
2125 浏览

c++ - IPv6 区域索引和 scope_id

区域索引与 sockaddr_in6 结构中的 scope_id 有什么关系?

平台之间的功能似乎有所不同,我很想知道它们之间的关系。例如,Windows 有一个SCOPE_ID 结构(以及一个 32 位值)。Mac OSX 只有 32 位值。显然,32 位值是要走的路,但它究竟是如何布局的呢?仍然是前 4 位是“级别”吗?网络字节顺序如何影响这一点?

我还假设,在 Windows 下,IP 地址中给出的区域索引(例如 FF80::1%1)直接转换为上述结构的底部 28 位。它在使用名称而不是数字的 Mac OSX 下是如何工作的(例如 FF80::1%en0)。我是否将其编码为四个 CC?同样,我似乎记得 linux 使用 4 个字符,这些字符不可能适合 28 位。

那么有人可以向我解释这个烂摊子吗?当我完成后,我真的需要写一篇关于这一切的教程,因为网络上关于 ipv6 的宝贵信息很少。

编辑:scope_id 是否按网络字节顺序排列?我只是在查看从 recvfrom 返回的 scope_id ,它似乎是 little-endian 顺序......这不可能吧?

0 投票
2 回答
9395 浏览

python - 在 Python 中发送和接收 IPv6 链路本地多播 UDP 数据报?

下面是一个简单的 IPv4 UDP 广播,然后监听所有接口。

我想调整它以发送和接收 IPv4 和 IPv6。

我已经四处寻找并尽可能多地阅读,并相信以下大致是我需要采取的路线:

  1. 创建一个 IPv6 套接字。
  2. 将套接字添加到链接或站点本地多播组。
  3. 将 UDP 数据包发送到正在使用的组的多播地址。

我得到的进一步信息是我可能需要绑定到几个接口,并告诉使用它的套接字setsockopt()它也应该接收多播数据包。最后getaddrinfo(),可以全面使用以优雅地“退回”到 IPv6 不可用的 IPv4。

我已经实现了很多,但主要是在多播部分上偶然发现。最好有完整的 Python 代码示例,或对所需常量和地址的生动描述。

0 投票
3 回答
3178 浏览

c - 如何读取 IPv6 地址的 TENTATIVE 标志?

我正在使用 ioctl() 系统调用 prgramtically 分配 ipv6 地址。我想知道是否有办法,我可以找到分配的 ip 是暂定/重复的?

谢谢。