常规IPv4点四符号从与结肠的端口的地址分开,如在回送接口上一个网络服务器的该实施例中:端口如何与IPv6协同工作?
127.0.0.1:80
但与IPv6表示法本身可以包含冒号地址。例如,这是在回送地址的缩写形式:
::1
如何端口(或它们的功能等价物)的IPv6地址/端口端点的文本表示形式表示的?
常规IPv4点四符号从与结肠的端口的地址分开,如在回送接口上一个网络服务器的该实施例中:端口如何与IPv6协同工作?
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#Addressing
他们是一样的,不是吗?现在我对自己失去信心,但我真的认为IPv6只是一个寻址改变。 TCP和UDP仍然是在IPv4下处理的。
IPv6中使用的协议与IPv4中的协议相同。这两个版本之间唯一改变的是寻址方案,即DHCP [DHCPv6]和ICMP [ICMPv6]。所以基本上,TCP/UDP相关的任何东西,包括端口范围(0-65535)都保持不变。
编辑:端口0是TCP中的保留端口,但它确实存在。见RFC793
我很确定,端口只有在tcp和udp的一部分。因此,即使您使用新的IP协议,也完全一样。
DCCP和SCTP也有端口,但由于附加的关联标识符,SCTP中的端口稍有不同。 – 2009-11-21 23:10:37
我不知道你做了什么。 TCP和UDP层是相同的结构。顾名思义,IPV6是关于增强的IP层,而不是TCP或UDP层。
Wikipeida points out IPv6地址的语法包含冒号,并且具有防止固定长度解析的短格式,因此您必须用[]分隔地址部分。这完全解释了奇怪的解析错误。
(从an editPeter Wone到原来的问题所采取。)
我认为最好的参考是Format for Literal IPv6 Addresses in URL's其中[]使用被定义。另外,如果是编程和代码,特别是Java,我会建议这读取Class for Inet6Addressjava/net/URL definition其中Inet4地址在Inet6内涵和其他情况下的使用详细介绍。就我而言,IPv4映射地址的形式:: ffff:w.x.y.z,对于IPv6地址来说,用来表示IPv4地址也解决了我的问题。它允许本地程序在与IPv4和IPv6节点通信时使用相同的地址数据结构和相同的套接字。亚马逊云Linux框默认设置就是这种情况。
这不仅仅是一个地址变更。它应该带来一些很酷的功能(例如全局多播)。 但是,它对上层是透明的。 – 2009-01-18 05:34:50
这只是一个地址变更。你在谈论的是寻址:) 但它关注/混淆人的原因是,网络设计将“寻址”视为地址,“服务”视为端口号。但是如果没有两者,你不能在TCP或UDP上做任何事情,所以大多数人都试图让套接字级别的地址工作,并且不明白为什么人们不断补足或改变分隔符: 空格,然后点,然后冒号,然后英镑的迹象? 所以,是的,我可以看到IPv6让人担心。 – benc 2009-07-26 20:18:06