web-dev-qa-db-ja.com

ポートはIPv6でどのように機能しますか?

ループバックインターフェイス上のWebサーバーのこの例のように、従来のIPv4ドット付きクワッド表記は、コロンでアドレスをポートから分離します。

127.0.0.1:80

ただし、IPv6表記では、アドレス自体にコロンを含めることができます。たとえば、これはループバックアドレスの短い形式です。

::1

ポート(または機能的に同等)は、IPv6アドレス/ポートエンドポイントのテキスト表現でどのように表現されますか?

127
Peter Wone

彼らは今日とほぼ同じように動作します。ただし、IPの周りに[]を必ず含めてください。

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

ウィキペディアにはIPv6に関する非常に優れた記事があります。 http://en.wikipedia.org/wiki/IPv6#Addressing

170
Nico

IPv6で使用されるプロトコルは、IPv4のプロトコルと同じです。 2つのバージョン間で変更された唯一のことは、アドレス指定スキーム、DHCP [DHCPv6]およびICMP [ICMPv6]です。したがって、基本的に、ポート範囲(0〜65535)を含むTCP/UDPに関連するものは変更されません。

Edit:ポート0は、TCPの予約ポートですが、存在します。 RFC79 を参照してください。 =

30
Andrew Moore

彼らは同じですよね?今、私は自分自身に対する自信を失っていますが、IPv6は単なるアドレス指定の変更であると本当に思っていました。 TCPおよびUDPは、IPv4の下にあるため、引き続きアドレス指定されます。

5
Oli

ポートにはtcpとudpの一部しかないと確信しています。したがって、新しいIPプロトコルを使用してもまったく同じです

5
svrist

ウィキペディア 指摘 IPv6アドレスの構文にはコロンが含まれ、固定長の解析を防ぐ短い形式があるため、アドレス部分を[]で区切る必要があります。これにより、奇妙な解析エラーが完全に回避されます。

(元の質問に対して行われた 編集ピーターウォン から取得)

5
Ajedi32

最良のリファレンスは RLのリテラルIPv6アドレスの形式 で、[]の使用法が定義されていると言えます。

また、プログラミングとコード、特にJavaの場合は、この読み取りをお勧めします Inet6AddressのクラスJava/net/URL定義 Inet6含意でのInet4アドレスの使用とその他のケースについて詳しく説明します。私の場合、形式:: ffff:w.x.y.zのIPv4-mappedアドレスは、IPv6アドレスを使用してIPv4アドレスを表すことでも問題を解決しました。これにより、ネイティブプログラムは、IPv4ノードとIPv6ノードの両方と通信するときに、同じアドレスデータ構造と同じソケットを使用できます。これは、AmazonクラウドLinuxボックスのデフォルト設定の場合です。

4
zhrist

あなたが何を得ているのか分かりません。 TCPおよびUDPレイヤーは同じ構造です。名前が示すようにIPV6は、TCPまたはUDPレイヤーではなく、IPレイヤーが拡張されていることに関するものです。

3
Tall Jeff