问题标签 [ipv4]
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.
java - 铸造原语与按字节方式修剪它
我想就我的算法的一部分征求意见/建议。
对比
基本上我想知道转换是否存在性能差异,或者使用更大的 ByteBuffer 是否更好。
感谢和问候,
马立克
bind - 如何在特定接口上打开套接字并接收 IPv4 和 IPv6 流量
使用 IPv4,我可以 bind() 到特定地址以选择将用于接收数据包的接口(在某些情况下,也可以发送,但这不是重点)。
在双栈 IPv6/IPV4 机器上我有这个问题:我可以创建一个 6 个套接字并使用它来接收 4 个流量,但是如果我想绑定到特定接口,我必须选择一个 IP 地址来绑定。
如果我绑定到 IPv6 地址,我将过滤掉所有 IPv4 流量,反之亦然。
如何从特定接口接收 IPv4 和 IPv6 流量?
java - 如何确定小程序是否通过 IPv6 加载
我有一个小程序连接回在同一主机上运行的服务。托管小程序的网络服务器同时监听 IPv4 和 IPv6,小程序想要连接的服务也是如此。
问题是,从小程序中的 with 中,我只能得到页面 URL 或代码库 URL。从 URL 我无法检测浏览器是否将其解析为 IPv4 或 IPv6,因此当通过 IPv6 加载小程序时,我使用 URL 告诉小程序在哪个服务器上查找服务失败沙箱规则,因为它默认解析为 IPv4 地址。
想到的唯一解决方案是签署小程序,以便它可以请求连接到任意服务器,但我希望有一个更简单的解决方案(不涉及购买证书或将我的自定义 CA 添加到所有系统访问的信任库网站)。
任何人都有更好的解决方案。
.net - 是否有用于 ipv4 和 ipv6 地址的标准 .NET 解码器?
我想编写一个相当简单的客户端-服务器网络应用程序。我只使用纯 IPv4 网络,但如果我的代码能够适应未来,那就太好了。我可能会使用 TcpListener/TcpClient,因为对 WCF 的初步调查显示它的设置过于复杂且难以理解。
对于客户端,.NET 是否提供了一种工具来自动解码包含 IPv4 或 IPv6 地址(其中 IPv4 地址包括端口号)的字符串?如果它可以解析域名,则可以加分。
对于服务器端,我听说 IPv6 不使用端口号,那么侦听端口的等效项是什么,是否有一种标准方法可以将 IPv4 端口号字符串与 IPv6 等效项区分开来?没关系,IPv6 服务与 IPv4 服务一样具有 16 位端口号。
python - 仅使用 proc 获取本地网络接口地址?
如何仅使用proc获取所有网络接口的(IPv4)地址?经过一些广泛的调查,我发现了以下内容:
ifconfig
使用SIOCGIFADDR
,这需要打开套接字并提前了解所有接口名称。它也没有记录在 Linux 的任何手册页中。proc
包含/proc/net/dev
,但这是一个接口统计信息列表。proc
contains/proc/net/if_inet6
,这正是我需要的,但对于 IPv6。- 通常,接口很容易在 中找到
proc
,但很少使用实际地址,除非是某些连接的明确部分。 - 有一个名为 的系统调用
getifaddrs
,这是您希望在 Windows 中看到的非常“神奇”的功能。它也在 BSD 上实现。然而,它不是非常面向文本的,这使得它很难在非 C 语言中使用。
linux - 获取接收到的UDP数据包的目的地址
收到 UDP 数据包后,我需要用他用来发送我要回复的数据包的地址来回复发件人。
该recvfrom
调用让我获得了发送者的地址,但我如何获得接收到的数据包的目标地址,该地址应该与本地主机接口之一的地址匹配?
regex - 使用正则表达式验证 IPv4 地址
我一直在尝试为 IPv4 验证获取有效的正则表达式,但运气不佳。似乎在某一时刻我已经有了它(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?(\.|$)){4}
,但它产生了一些奇怪的结果:
我进行了搜索以查看是否已经提出并回答了这个问题,但其他答案似乎只是显示了如何确定 4 组 1-3 数字,或者对我不起作用。
python - Creating a IPv4 packet header in python
For my larger project i need to start with creating a IPv4 network packet ( for simulation )
for the same I need to write a function that creates a header out of the passed data which has the source ip , dest ip and all the necessary fields
For this I need you to guide me in the right direction.
Firstly I need to store the IP in 32 bits so for that if I have a string "192.168.2.1" what is the most efficient way to convert it into bytes and that too a size of 32 ??
Also if I create first a normal class with stuff like version = 4 and sourceip and dest ip then is there a way to convert it directly into a byte array with the position of objects just like the following header
Please tell how should i proceed....
networking - cidr 表示法的子网划分
我只是在 CIDR notaion 中对网络地址进行子网划分有问题,有人可以为我解释一下吗?例如我该如何解决这个问题:
如果网络地址 197.23.37.128/25 被划分为 4 个子网,请以 CIDR 表示法给出子网地址(您可以同时使用第一个和最后一个子网)
任何帮助,将不胜感激
python - 从 Python 原始套接字接收到的数据包中交换了两个字节
我的 Python 程序正在从原始套接字接收 ICMP 目标不可达消息。使用以下代码创建套接字:
ICMP 目标不可达消息包括原始数据包的一部分的副本。我遇到的问题是嵌入式 IPv4 标头中的 2 字节总长度字段在从套接字接收时交换了它的字节。因此,我的程序中的校验和检查失败。使用以下代码接收数据包:
当我注意到校验和测试失败时,我用 tcpdump 检查了数据包。这是一个例子:
然后我从我的 Python 代码中打印出数据包。这是来自 tcpdump 示例的相同数据包:
嵌入标头的总长度字段是第 2 行的最后两个字节。0054 来自 tcpdump 和 5400 来自我的程序。外部 IP 标头的总长度字段也是错误的(5c00 与 tcpdump 中的 0070)。
我在跑步...
达尔文上的 Python 2.6.1 (r261:67515, Jun 24 2010, 21:47:49) [GCC 4.2.1 (Apple Inc. build 5646)]
来自 tcpdump 的 ICMP 目标不可达数据包中的校验和字段是正确的。它的值为 fcfe。这是没有输出 IP 标头的数据包。
让我感到困惑的是,只有总长度字段针对网络字节顺序进行了更正。其他多字节字段没有改变,打印出来的和我的 Python 程序一样。例如,总长度后面的两个字节组成了标识字段,在 tcpdump 和我的打印输出中都具有 c2ea 的值。为了检查校验和,我如何确定应该交换哪些字段?