问题标签 [in-addr]

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 回答
2180 浏览

c# - 在 C# 中使用 in_addr

我正在尝试使用 P/Invoke 与本机 DLL 进行交互,但它需要一个in_addr结构参数。我不断看到它的许多不同类型的定义,但哪个是最好用的?

另外,如何将 C#IPAddress对象转换为in_addr结构?

0 投票
1 回答
468 浏览

vb.net - 如何从 in_addr 值中获取端口?

我正在尝试从Windows 中给定的in_addr值中提取端口。

到目前为止,我能够使用inet_ntoa获取 IP 地址,但不能使用端口。

谢谢。

0 投票
9 回答
259665 浏览

c++ - 如何将字符串转换为 IP 地址,反之亦然

如何转换字符串 ipAddress (struct in_addr),反之亦然?以及如何上交无符号长 IP 地址?谢谢

0 投票
1 回答
31930 浏览

c - in_addr_t inet_ntoa 等类型的地址是什么

好的,在发布这个问题之前,我已经检查了这里的线程 in_addr_t 到字符串

我的问题不同。

我了解 inet_ntoa 函数属于以下类型

我想知道的是什么in_addr_t

当它在套接字程序中使用时将是什么表示。

我检查了结构定义<netinet/in.h>

属于上述类型。我不想像 inet_ntoa 那样将 in_addr_t 打印到 char * 上。我想看看 in_addr_t 是什么。那么它怎么做或者 in_addr_t 到底是什么以及为什么它在套接字编程中一次又一次地使用。如果我没记错的话,它被定义为

typedef uint32_t in_addr_t;

所以如果in_addr_tunsigned 32 bitint 我想看看那是什么,而不是char *在标准输出上打印 192.168.1.1 类型的输出。

0 投票
0 回答
493 浏览

sockets - INADDR_ANY 是否关心新接口?

从其他帖子中阅读

了解用于套接字编程的 INADDR_ANY - c

当您不需要将套接字绑定到特定 IP 时使用 INADDR_ANY。当你在调用 bind() 时使用这个值作为地址时,socket 接受到本机所有 IP 的连接

http://trac.pjsip.org/repos/wiki/IPAddressChange

默认情况下,我们将传输绑定到 INADDRANY/0.0.0.0,因此在发送传出 (UDP) 数据包时,我们依赖操作系统根据当前在线的接口和操作系统的内部路由表为我们选择正确的接口。换句话说,我们只需调用 sendto() 并让操作系统“做正确的事”。在 IP 地址更改的情况下,我们还依靠操作系统将接口从一个接口切换到新的接口,以进行 UDP 传输

假设以前我在绑定我的套接字时有 2 个接口 A、B IADDR_ANY。之后我有接口 C 可用(移动设备上就是这种情况,当用户打开 3G、Wifi 时)

  1. 这个套接字会接受来自 C 的连接吗

  2. 如果我关闭A,B,这个套接字会使用C发送数据包吗?

P/S:更感谢针对 iOS 和 Android(SDK 和 NDK 套接字)的答案

0 投票
1 回答
487 浏览

c++ - VS-2019 的编译错误

下面的代码无法编译。我收到两个错误:

1) IN_ADDR --> 错误 C2065: 'AF_INET': 未声明的标识符

2) InetPton(...) --> C3861: 'InetPton': 未找到标识符

我的配置如下:

  • VS-2019 专业版
  • Windows SDK 10.0.18362.0(截至 2019 年 9 月 26 日的最新版本)
  • 当我按 F12(转到定义)时,以下文件会在编辑器中打开(C:\Program Files (x86)\Windows Kits\10\Include\10.0.18362.0\shared\inaddr.h 和 C:\Program Files (x86 )\Windows 工具包\10\Include\10.0.18362.0\um\WS2tcpip.h)。
  • 项目设置“C/C++ | 常规 | 附加包含目录”选中了“从父级或项目默认值继承”复选框。
  • Ws2_32.lib 存在于“链接器|附加依赖项”中(但我的问题不是关于链接问题,或者还没有)
  • 我的程序使用 unicode 并且 InetPton(...) 扩展为 InetPtonW,这是正确的。

要恢复,从编辑器中可以访问符号,但预处理器/编译器似乎没有相同的路径。显然,我遗漏了一些很可能很明显的东西。您的帮助将不胜感激。

谢谢!

0 投票
1 回答
23 浏览

c - 保留 IP 和主机名列表

我正在编写代理服务器,并且我有一个包含子网 (n1.n2.n3.n4/x) 和主机名的过滤器文件。应该忽略它第一个 x MSB 与列表中的一个相同的每个 IP 地址,主机名也是如此。

我最初的想法是阅读文件并保存两个列表;

首先

第二

但我认为使用一些现有的结构(例如in addr)会更好。

我将不胜感激有关该主题的任何建议