ICMPV6_ECHO_REPLY_LH 結構 (ipexport.h)
ICMPV6_ECHO_REPLY結構描述傳回的資料,以回應 IPv6 回應要求。
語法
typedef struct icmpv6_echo_reply_lh {
IPV6_ADDRESS_EX Address;
ULONG Status;
unsigned int RoundTripTime;
} ICMPV6_ECHO_REPLY_LH, *PICMPV6_ECHO_REPLY_LH;
成員
Address
類型: IPV6_ADDRESS_EX
回復的 IPv6 位址,格式為 IPV6_ADDRESS_EX 結構。
Status
類型: ULONG
回應要求的狀態,格式為 IP_STATUS 程式碼。 此成員的可能值定義于 Ipexport.h 標頭檔中。
值 |
意義 |
- IP_SUCCESS
- 0
|
狀態為成功。
|
- IP_BUF_TOO_SMALL
- 11001
|
回復緩衝區太小。
|
- IP_DEST_NET_UNREACHABLE
- 11002
|
無法連線到目的地網路。 在 IPv6 術語中,此狀態值也會定義為 IP_DEST_NO_ROUTE。
|
- IP_DEST_HOST_UNREACHABLE
- 11003
|
無法連線到目的地主機。 在 IPv6 術語中,此狀態值也會定義為 IP_DEST_ADDR_UNREACHABLE。
|
- IP_DEST_PROT_UNREACHABLE
- 11004
|
無法連線到目的地通訊協定。 在 IPv6 術語中,此狀態值也會定義為 IP_DEST_PROHIBITED。
|
- IP_DEST_PORT_UNREACHABLE
- 11005
|
無法連線到目的地埠。
|
- IP_NO_RESOURCES
- 11006
|
IP 資源不足。
|
- IP_BAD_OPTION
- 11007
|
指定了不正確的 IP 選項。
|
- IP_HW_ERROR
- 11008
|
發生硬體錯誤。
|
- IP_PACKET_TOO_BIG
- 11009
|
封包太大。
|
- IP_REQ_TIMED_OUT
- 11010
|
要求逾時。 |
- IP_BAD_REQ
- 11011
|
不正確的要求。
|
- IP_BAD_ROUTE
- 11012
|
不正確的路由。
|
- IP_TTL_EXPIRED_TRANSIT
- 11013
|
傳輸中 IPv6 的躍點限制已過期。 在 IPv6 術語中,此狀態值也會定義為 IP_HOP_LIMIT_EXCEEDED。
|
- IP_TTL_EXPIRED_REASSEM
- 11014
|
IPv6 的躍點限制在片段重新組譯期間已過期。 在 IPv6 術語中,此狀態值也會定義為 IP_REASSEMBLY_TIME_EXCEEDED。
|
- IP_PARAM_PROBLEM
- 11015
|
參數問題。 在 IPv6 術語中,此狀態值也會定義為 IP_PARAMETER_PROBLEM。
|
- IP_SOURCE_QUENCH
- 11016
|
資料包的速度太快而無法處理,而且資料包可能已被捨棄。
|
- IP_OPTION_TOO_BIG
- 11017
|
IP 選項太大。
|
- IP_BAD_DESTINATION
- 11018
|
不正確的目的地。
|
- IP_DEST_UNREACHABLE
- 11040
|
無法連線到目的地。
|
- IP_TIME_EXCEEDED
- 11041
|
超過時間。
|
- IP_BAD_HEADER
- 11042
|
遇到不正確的 IP 標頭。
|
- IP_UNRECOGNIZED_NEXT_HEADER
- 11043
|
遇到無法辨識的下一個標頭。
|
- IP_ICMP_ERROR
- 11044
|
發生 ICMP 錯誤。
|
- IP_DEST_SCOPE_MISMATCH
- 11045
|
發生目的地範圍識別碼不符。
|
- IP_GENERAL_FAILURE
- 11050
|
一般失敗。 某些格式錯誤的 ICMP 封包可能會傳回此錯誤。
|
RoundTripTime
類型: unsigned int
來回時間,以毫秒為單位。
icmp6ParseReplies函式會使用ICMPV6_ECHO_REPLY結構,將回應傳回 IPv6 回應要求。 包含 ICMPV6 回應中訊息本文的回復資料會遵循記憶體中的 ICMPV6_ECHO_REPLY 結構。
針對 IPv6,會在 RFC 2163 中指定 Status 成員的一些可能值。 如需詳細資訊,請參閱 www.ietf.org/rfc/rfc2463.txt。
GetIpErrorString函式可用來擷取Status成員中IP_STATUS錯誤碼的 IP 協助程式錯誤字串。
ICMPV6_ECHO_REPLY結構定義于 Microsoft Windows 軟體發展工具組 (SDK) 中包含的公用標頭檔中,但 Windows XP 和更新版本的Icmp6ParseReplies函式會使用此結構。
在 Windows SDK 中,如果目標平臺是 Windows XP 和更新版本 (NTDDI_VERSION >= NTDDI_XP
、 _WIN32_WINNT >= 0x0501
或 WINVER >= 0x0501
) ,則編譯應用程式時會定義ICMPV6_ECHO_REPLY_LH結構。 ICMPV6_ECHO_REPLY_LH結構的類型定義為ICMPV6_ECHO_REPLY結構。 如果目標平臺不是 Windows XP 和更新版本,編譯應用程式時, ICMPV6_ECHO_REPLY 結構是未定義的。
此結構定義于 Ipexport.h 標頭檔中,該標頭檔會自動包含在 Iphlpapi.h 標頭檔中。 不應該直接使用 Ipexport.h 標頭檔。
需求
|
|
最低支援的用戶端 |
Windows XP [僅限傳統型應用程式] |
最低支援的伺服器 |
Windows Server 2003 [僅限桌面應用程式] |
標頭 |
ipexport.h (包含 Iphlpapi.h) |
另請參閱
GetIpErrorString
IP 協助程式起始頁
IP 協助程式結構
IPV6_ADDRESS_EX
IP_OPTION_INFORMATION
Icmp6CreateFile
Icmp6ParseReplies
Icmp6SendEcho2
IcmpCloseHandle