- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
我有一个程序可以监听连接并处理它们。我知道许多网络堆栈支持通过同一套接字/端口接受 IPv4 和 IPv6 连接,但我也听说 Windows XP 不是其中之一。为了让相同的代码在所有平台上运行良好,我是否应该只在单独的端口上监听 IPv6 连接?
最佳答案
Windows XP SP2+ 实现了双栈 IP
架构。这意味着您可以有两个绑定(bind)到相同端口号的套接字(一个用于 AF_INET,另一个用于 AF_INET6 系列)。这工作得很好。
注意:如果您打算用一个套接字来处理 IPv4 和 IPv6 连接,那么您将依赖于 Windows 中实现的所谓的双 IP 层堆栈
架构Vista 及更高版本(在这种情况下,您必须禁用该套接字上的 IPV6_V6ONLY
选项)。
引用Microsoft's Objectives for IP Version 6
另请查看 Application Aspects of IPv6 Transition (RFC 4038) 中的一般建议.
PS:BiggsTRC 目前接受的答案通常不准确,如相应评论中所述。但是,如果您可以使用两个端口号 - 那么这个答案仍然很有意义。
PS2:我使用了链接文章中的术语。不确定是否有任何其他平台在 dual-stack
和 dual-layer
术语之间使用这种分离。
关于c - 我应该在与 IPv4 不同的端口上监听 IPv6 连接吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6374914/
目前部署在 Kubernetes 中的服务,通过 Calico BGP 将 Service 与集群外网络打通,并在外部的 nginx 中配置 Service 地址对外进行服务暴露。经过一段时间的观察
如发现here , 有一种新的 kube 服务是 IPVS 并且有很多负载均衡算法。 唯一的问题是我没有找到指定这些算法的位置。 我的理解: rr:循环法->循环调用后端pod lc:最少连接-> 将
我想尝试这种新的代理模式以及它为我们的一些应用程序提供的各种调度程序。到目前为止,我一直无法找到更改默认模式的方法 iptables至 ipvs在 GKE 节点上。 每个人都说通过--proxy-mo
我想在现有集群中为 IPVS 启用 Kube-proxy 模式。目前,它在 IPtables 上运行。如何在不影响现有工作负载的情况下将其更改为 IPVS? 我已经安装了所有必需的模块来启用它。另外,
我正在开发的应用程序作为 Kubernetes 集群中的部署运行。为此部署创建的 Pod 分布在集群中的各个节点上。我们的应用程序一次只能处理一个 TCP 连接,并且会拒绝进一步的连接。目前,我们使用
我是一名优秀的程序员,十分优秀!