簡體   English   中英

ipv6向后兼容ipv4嗎?

[英]is ipv6 backward compatible with ipv4?

我有一個使用ipv4編寫的udp示例程序。 如果我將代碼更改為ipv6,我是否仍可以使用具有ipv4地址的偵聽器與任何人通信? 我正在看的移植示例

http://ou800doc.caldera.com/cn/SDK_netapi/sockC.PortIPv4appIPv6.html

我不確定是否只是更改代碼就能確保它能正常工作,或者我是否必須以決斗堆棧模式編寫它。

是和否... IPv6確實包含完全不同的尋址,因此您必須重新編碼應用程序才能使用備用標頭和結構大小。

但是,IPv4地址范圍在IPv6中可用,語法是在標准地址之前添加兩個冒號(例如:: 10.11.12.13)。 您還可以在IPv6數據包中嵌入IPv4地址

並非沒有網絡中的IPv4 / IPv6網關的幫助,即使那樣,通信也將受到網絡地址轉換網關引入的典型問題的限制。 對於面臨此類決策的程序員,傳統的建議是建議同時支持IPv4和IPv6。

IPv4和IPv6本質上是彼此不兼容的。
一些基本原因:

  • 地址空間完全不同(IPv6具有128位地址,IPv4具有32位地址)
  • IPv6的協議標頭看起來與IPv4的協議標頭完全不同。 如果您嘗試將IPv6數據包解析為IPv4,則會毫無意義。

這些的明顯結果是,如果打開IPv6套接字,則無法使用IPv4套接字監聽它。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM