network-programming相关内容

从套接字获取地址族.Linux

我想为 Linux Socket API 编写一个 C++ 包装器.在 socket() ctor 中,请求地址族 (AF).我不想再次在 connect() 签名中要求 AF,因为它已经在套接字的构造函数中给出.那么如何从现有套接字中获取 AF? 解决方案 该死.找了半个小时左右.现在发布这个问题后,我立即找到了答案. getsockopt([...]) 带有选项 SO_DOMAI ..
发布时间:2022-01-19 16:30:02 服务器开发

TCP URG(紧急数据)是否得到确认?

在带有 URG 标志的 TCP 段中也可能有正常数据.接收主机如何处理紧急数据包?如果它不是数据流的一部分,它如何确认紧急数据?它承认其余部分吗? 我知道它通常不使用,但是如果两个主机都支持相同的关于 URG 标志的 RFC,它们如何处理带外数据? 如果紧急数据是中止消息,接收方将丢弃所有其他数据,但发送方仍需要确认消息已收到. 解决方案 一点背景: TCP 紧急机制允许 ..
发布时间:2022-01-19 16:29:45 其他开发

是否有解决方法:java.lang.RuntimeException:无法生成 DH 密钥对

我正在测试一个 Java 应用程序.我正在尝试使用 DH 密码套件启动 SSL 握手.但我收到以下错误: java.lang.RuntimeException: 无法生成 DH 密钥对 有人推荐BouncyCastle,但是很多人都报错了,所以如果有其他选择,我不鼓励使用它. 有人建议从 http://www.oracle.com/technetwork/java/javase/down ..
发布时间:2022-01-19 16:29:36 Java开发

如何在 Rust 中设置套接字选项 SO_REUSEPORT?

我阅读了 std::net 和 mio 的文档,发现了一些方法,例如 set_nodelay 和 set_keepalive,但我还没有找到在给定套接字上设置其他套接字选项的方法,例如 SO_REUSEPORT 和 SO_REUSEADDR .我该怎么做? 解决方案 因为 SO_REUSEPORT 没有交叉-platform,您将需要深入了解特定于平台的代码.在这种情况下,您可以从套接字获 ..
发布时间:2022-01-19 16:29:16 服务器开发

如何在 TCP 连接上进行硬/中止关闭?

当一个 tcp 客户端与我的 TCP 服务器建立一个 tcp 连接时,它发送了几个数据包后,我想在这个 TCP 连接上进行硬/中止关闭,如何在 linux C 中做到这一点? 这里的硬/中止关闭意味着 tcp 服务器将立即向客户端发送 RST.根本没有 FIN/ACK. 谢谢! 解决方案 来自 Socket 手册页 SO_LINGER设置或获取 SO_LINGER 选项. ..
发布时间:2022-01-19 16:29:00 其他开发

使用 setTrafficClass 和 WireShark 进行 DSCP 标记的问题

我正在尝试使用 setTrafficClass 标记 DSCP 值.我在两台不同的机器上设置了服务器和客户端,我可以打印 DSCP 的值,但我在 WireShark 中看不到它.我在网上浏览了一些帖子,但没有任何帮助.我正在使用 Windows 7 专业版.任何帮助,将不胜感激.谢谢! 我正在进行更多测试,看看如何做到这一点.这是客户端代码: 试试{ Socket socket = ..
发布时间:2022-01-19 16:28:53 Java开发

在 C# 中查找接口索引

如何在 C# 中获取连接的接口索引? 如果索引不是一个标准术语,我指的是与接口关联的数字,例如当您使用命令“netsh int ipv4 show int"在左侧按索引列出您的连接时.也用于“route add [gateway] mask [index] if [interface index]"中. 我知道接口的名称和描述,因此使用 NetworkInterface.GetAllN ..
发布时间:2022-01-19 16:28:42 C#/.NET

确认scapy中数据的确认号

我在玩 scapy,尝试做一个类似 nmap 的东西,我成功地进行了三次握手,如果我连接到 smtp 服务器,我会自动接收数据,但我无法确认. 我已经通过 netcat 连接到它,看看为什么它不起作用,并且 nc 实际上发送了一个 ACK​​ 数据包,其中 TCP ack 字段设置为接收到的数据段长度 + 1.所以我试图对 scapy 做同样的事情,但我不知道在哪里可以找到 TCP 段的长度 ..
发布时间:2022-01-19 16:28:36 Python

从套接字描述符获取IP地址?

我打开了一个 TCP 套接字服务器(我省略了一些东西,它取自 这里 sockfd = socket(p->ai_family, p->ai_socktype,p->ai_protocol)) 是否可以从 sockfd 获取服务器的 IP 地址?如果不是,我应该去哪里看? 编辑:我想知道服务器的地址(这是在任何客户端连接之前). 解决方案 如果你想知道套接字的另一端是谁,你可以使用 ..
发布时间:2022-01-19 16:28:28 其他开发

为什么 JSON 文档没有被完全消费?

我正在尝试从外部来源检索 JSON 数据以进行练习.我已经准备好所有代码,但由于某种原因,我收到一条错误消息,指出文档未完全使用.我已经观看并阅读了多个教程和指南,但似乎仍然无法正确理解.我也搜索了堆栈以寻找答案,但由于我不知道出了什么问题,我真的不知道要寻找什么. 所有代码都到位,没有明显的错误.JSON 数据已经过验证,可以作为原始 JSON 数据进行检索,如日志中所示.当数据应传输到 ..
发布时间:2022-01-19 16:28:19 Java开发

socket.error: [Errno 32] 管道损坏

我写了一个客户端-服务器python程序,客户端向服务器发送一个列表,服务器接收数组,删除列表的前两个元素并将其发送回客户端.服务器接收列表没有问题.但是当服务器想要发回编辑后的列表时,它会显示错误:socket.error: [Errno 32] 损坏的管道.client.py 和 server.py 运行在具有不同 ip 的不同机器上.我在下面发布了 client.py 和 server.py ..
发布时间:2022-01-19 16:28:14 Python

如何在 .Net 中创建 Ntlm Type 1 和 Type 3 消息

我需要为 NTLM 握手创建类型 1 消息和类型 3 消息.是否有任何.Net API ? 本质上,应用程序是基于 WPF 的,但使用 Socket 来从服务器传输数据.使用套接字是一项技术要求,但问题是当用户需要使用代理服务器连接到服务器时.此外,如果代理授权基于 Ntlm,客户端应用程序需要创建 Type 1 和 Type 3 消息才能与代理服务器握手. 我的问题是:.NET 库中 ..
发布时间:2022-01-19 16:27:56 C#/.NET

无法在 Xamarin.Forms 应用中接收 UDP 广播

我创建了一个测试 Xamarin.Forms 项目,即选项卡式应用,支持 iOS、Android 和 UWP.带有样板启动代码的应用程序可以在所有 3 个平台上正确构建和运行. 我正在尝试测试在应用中接收 UDP 广播.UDP 广播是从同一子网上的另一台机器发送的(已经测试了从另一台机器和同一台机器的广播,结果是一样的).如果我在这台机器上运行一个独立的、非托管的 UDP 监听器测试工具(我 ..
发布时间:2022-01-19 16:27:46 其他开发

“算法协商失败"尝试连接到 Symantec NetBackup 时出现 JSch 错误 - 远程获取报告

我一直在网上搜索并找到类似的帖子,但无法找到解决方案. 我正在尝试使用 ssh 从我的计算机连接到 NetBackup 服务器并运行报告并基于它们创建图表.我正在使用 java 和 JSch 库执行此操作.问题是我得到: “算法协商失败"在 com.jcraft.JSch.Session.recieve_kexinit(... 我对谈判和密钥以及 diffie-hellman 等 ..
发布时间:2022-01-19 16:27:38 Java开发

iPhone 在 3G 上的典型 UDP 延迟 - 我的数字对吗?

为了在 iPhone 上评估 TCP 与 UDP,我在我的计算机上编写了一个小型回显服务器,并在 iPhone 上使用了 AsyncUdpSocket 库,但是延迟出乎意料地大,我想知道我的实现是否有问题不知何故. 我的设置有一个 wifi 路由器(Apple Airport),它有一个外部静态 IP.回显服务器使用的端口被转发到我的开发计算机. 我使用了两种不同的设置: iPh ..
发布时间:2022-01-19 16:27:31 移动开发

通过 URL 获取 IP 地址

这行得通 target.sin_addr.s_addr = inet_addr("127.0.0.1"); 但我想从网站 URL 中输入 IP 我试过了 const char host[] = "http://www.google.com/";结构主机 *host_ip;host_ip = gethostbyaddr(host, strlen(host), 0); 我在使用 geth ..
发布时间:2022-01-19 16:27:23 其他开发