传统的IPv4点分四元组符号用冒号分隔端口地址,如环回接口上的Web服务器示例所示:

127.0.0.1:80

但使用IPv6表示法时,地址本身可以包含冒号。例如,这是环回地址的简写形式:

::1

端口(或其功能等价物)如何以IPv6地址/端口端点的文本表示形式表示?

有帮助吗?

解决方案

他们的工作方式与今天几乎相同。但是,请确保在您的IP周围包含 []

例如: http:// [1fff:0:a88:85a3 :: ac1f]:8001 / index.html中

维基百科有一篇关于IPv6的非常好的文章: http://en.wikipedia.org/wiki / IPv6的#寻址

其他提示

IPv6中使用的协议与IPv4中的协议相同。两个版本之间唯一改变的是寻址方案,DHCP [DHCPv6]和ICMP [ICMPv6]。所以基本上,TCP / UDP相关的任何东西,包括端口范围(0-65535)都保持不变。

编辑:端口0是TCP中的保留端口,但确实存在。请参见 RFC793

我很确定端口只有tcp和udp的一部分。即使您使用新的IP协议,它也完全相同

维基百科指出 IPv6地址的语法包括冒号并具有短格式防止固定长度解析,因此您必须用[]分隔地址部分。这完全避免了奇怪的解析错误。

(摘自编辑 Peter Wone 提出原始问题。)

他们是一样的,不是吗?现在我对自己失去了信心,但我真的认为IPv6只是一种解决方案。 TCP和UDP仍然在IPv4下进行寻址。

我想说最好的参考是 URL中文字IPv6地址的格式,其中使用方法[]的定义。

另外,如果是编程和代码,特别是Java,我建议读取 Inet6Address的类 java / net / URL定义详细介绍了Inet6内涵和其他情况下Inet4地址的使用情况。对于我的情况,IPv4映射地址的形式:: ffff:w.x.y.z,对于IPv6地址用于表示IPv4地址也解决了我的问题。它允许本机程序在与IPv4和IPv6节点通信时使用相同的地址数据结构和相同的套接字。亚马逊云Linux盒默认设置就是这种情况。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top