在C++中,ICMP(Internet Control Message Protocol)錯(cuò)誤通常與網(wǎng)絡(luò)編程和套接字操作有關(guān)
- ICMP_ECHOREPLY: 類型8,代碼0。表示一個(gè)回顯應(yīng)答消息。
- ICMP_DEST_UNREACH: 類型3,代碼各種。表示目標(biāo)不可達(dá)的錯(cuò)誤消息。這里的代碼值用于區(qū)分不同的錯(cuò)誤原因,例如:
- 代碼0:網(wǎng)絡(luò)不可達(dá)
- 代碼1:主機(jī)不可達(dá)
- 代碼2:協(xié)議不可達(dá)
- 代碼3:端口不可達(dá)
- 代碼4:需要分片但DF位被設(shè)置
- 代碼5:源路由失敗
- 代碼6:目標(biāo)網(wǎng)絡(luò)未知
- 代碼7:目標(biāo)主機(jī)未知
- 代碼8:源主機(jī)隔離
- 代碼9:通信管理員禁止
- 代碼10:主機(jī)預(yù)先阻止
- 代碼11:主機(jī)預(yù)先阻止
- 代碼12:主機(jī)預(yù)先阻止
- 代碼13:需要更高的MTU
- ICMP_SOURCE_QUENCH: 類型4,代碼0。表示源節(jié)點(diǎn)擁塞的錯(cuò)誤消息。
- ICMP_REDIRECT: 類型5,代碼各種。表示重定向消息。這里的代碼值用于區(qū)分不同的重定向類型,例如:
- 代碼0:重定向到網(wǎng)絡(luò)
- 代碼1:重定向到主機(jī)
- 代碼2:重定向到TOS和網(wǎng)絡(luò)
- 代碼3:重定向到TOS和主機(jī)
- ICMP_ECHO: 類型8,代碼0。表示一個(gè)回顯請(qǐng)求消息。
- ICMP_TIME_EXCEEDED: 類型11,代碼各種。表示超時(shí)錯(cuò)誤消息。這里的代碼值用于區(qū)分不同的超時(shí)類型,例如:
- 代碼0:TTL超時(shí)
- 代碼1:分段重組超時(shí)
- ICMP_PARAMETERPROB: 類型12,代碼0。表示參數(shù)問題錯(cuò)誤消息。
- ICMP_TIMESTAMP: 類型13,代碼0。表示時(shí)間戳請(qǐng)求消息。
- ICMP_TIMESTAMPREPLY: 類型14,代碼0。表示時(shí)間戳應(yīng)答消息。
- ICMP_INFO_REQUEST: 類型15,代碼0。表示信息請(qǐng)求消息。
- ICMP_INFO_REPLY: 類型16,代碼0。表示信息應(yīng)答消息。
- ICMP_ADDRESS: 類型17,代碼0。表示地址掩碼請(qǐng)求消息。
- ICMP_ADDRESSREPLY: 類型18,代碼0。表示地址掩碼應(yīng)答消息。
注意:這些錯(cuò)誤代碼可能會(huì)根據(jù)操作系統(tǒng)和網(wǎng)絡(luò)庫的實(shí)現(xiàn)而有所不同。在使用ICMP錯(cuò)誤代碼時(shí),建議查閱相關(guān)文檔以獲取準(zhǔn)確的信息。