私の理解は
tcp6 は IPv6 経由の接続に使用され、tcp は IPv4 経由の接続に使用されます。
そして
::ffff:127.0.0.1 は、IPv4 アドレスにマップされた IPv6 アドレスを表します。
ただし、netstatを使用してポートで開いている接続を見つけると、次のようになります。
netstat -anp | grep 31210
私が得た結果は次のとおりです。
tcp 0 0 ::ffff:127.0.0.1:64876 ::ffff:127.0.0.1:31210 ESTABLISHED 23755/java
これは、IPv6通信がTCPを使用して行われることを意味します。
どうやってこれができますか?
ベストアンサー1
TCP4またはTCP6プロトコルは存在しません。これは、それぞれIPv4を含むTCPとIPv6を含むTCPを意味する略語として使用できますが、これは言語を誤用することです。使用されるプロトコルは常にTCPです。
ISO / OSIモデルの階層分離のため、TCPセグメント(レベル4)がIPv4またはIPv6パケット(レベル3)を伴うかどうかは常に同じです。
TCPセグメントで変更される唯一のことチェックサムフィールド、計算に応じてRFC 793IPv4とRFC 2460これは、IPv6の場合、2つのバージョンのプロトコル間でIPアドレスのサイズが異なるためです。 (どうかはわかりませんが、オプションフィールドも異なります。 )しかし、まだ同じTCPです。
はい、::ffff:127.0.0.1
IPv6アドレスにマップされたIPv4アドレスを意味します(この場合はループバック)。