NAME 名 称
icmp, IPPROTO_ICMP - Linux IPv4 ICMP 核 心 模 块 .
DESCRIPTION 描 述
本 网 络 核 心 协 议 模 块 实 现 了 基 于 RFC792 协 议 中 定 义 的 《 互 联 网 控 制 报 文 协 议 》 。 它 针 对 网 络 主 机 间 通 讯 出 错 的 情 况 作 出 回 应 并 给 出 诊 断 信 息 。 用 户 不 能 直 接 使 用 本 模 块 。 相 反 本 模 块 需 与 核 心 中 的 其 他 协 议 进 行 通 讯 , 而 这 些 协 议 将 ICMP 出 错 信 息 返 回 到 网 络 协 议 的 应 用 层 。 ICMP 核 心 模 块 也 回 应 ICMP 请 求 。 如 果 用 IPPROTP_ICMP 打 开 原 始 套 接 字 ( raw socket) 时 , 用 户 协 议 有 可 以 收 到 任 意 本 地 套 接 字 ICMP 包 。 IPPROTO_ICMP. 请 参 阅 raw(7) 传 递 到 套 接 字 的 ICMP 包 可 以 用 ICMP_FILTER 套 接 字 选 项 进 行 过 滤 。 核 心 会 处 理 所 有 ICMP 包 , 包 括 传 递 到 用 户 的 套 接 字 去 的 。
Linux 对 可 以 到 达 每 个 目 标 主 机 出 错 信 息 包 的 比 率 设 立 了 限 制 。 ICMP_REDIRECT 及 ICMP_DEST_UNREACH 也 受 进 入 包 的 目 标 路 由 的 限 制 。
SYSCTLS
ICMP 支
持 通 过 sysctl 接 口 来
设 置 一 些 全 局 IP
参 数 。 对 Sysctl 的 访
问 可 以 通 过 读
、 写 /proc/sys/net/ipv4/* 下
的 文 件 通 过
sysctl(2) 接 口 进 行 .
大 多 数 这 些 sysctls
对 特 定 ICMP 类 型 的
数 据 包 数 量 进
行 了 限 制 。 Linux 2.2
使 用 记 号 单 元
过 滤 器 对 ICMP 包 进
行 限 制 。 此 值
表 示 超 时 错 误
, 以 秒 计 , 直
到 到 顶 后 记 号
单 元 过 滤 器 被
清 除 为 止 。
icmp_destunreach_rate 发 送 目
的 地 不 可 到 达 ICMP
消 息 包 的 最 大
数 据 包 比 率 。
这 限 制 了 发 送
到 任 意 一 个 路
由 或 目 的 地 的
数 据 包 的 比 率
。 这 个 限 制 不
影 响 发 送 用 来
发 现 数 据 链 路
最 大 传 送 单 位
( MTU) 的
ICMP_FRAG_NEEDED包 数 据 包
。
icmp_echo_ignore_all 如 果 该 值
不 为 零 ,Linux将 忽 略
所 有 的 ICMP_ECHO 请
求 。
icmp_echo_ignore_broadcasts 如 果 该
值 不 为 零 ,Linux将 忽
略 所 有 发 送 到
广 播 地 址 的
ICMP_ECHO 数 据 包 。
icmp_echoreply_rate 发 送 响 应
ICMP_ECHOREQUEST 请 求 的
ICMP_ECHOREPLY 数 据 包 比
率 的 最 大 值 。
icmp_paramprob_rate 发 送
ICMP_PARAMETERPROB 数 据 包
比 率 的 最 大 值
。 当 一 个 具 有
非 法 IP 报 头 数 据
包 到 达 时 将 发
送 这 些 包 。
icmp_timeexceed_rate 发 送
ICMP_TIME_EXCEEDED 包 比 率
的 最 大 值 。 当
一 个 数 据 包 通
过 太 多 网 段 时
, 这 些 包 用 作
防 止 路 由 回 环
。
NOTES
由 于 在 许 多 其 他 实 现 中 不 支 持 IPPROTO_ICMP 原 始 套 接 字 ( raw socket) , 可 移 植 程 序 不 能 依 靠 这 一 特 性 。 当 Linux不 作 为 路 由 器 时 , 将 不 被 发 送 ICMP_REDIRECT 包 。 内 核 也 只 有 在 路 由 表 中 的 旧 网 关 和 路 由 重 新 定 向 超 时 时 才 接 受 这 些 包 。
ICMP_TIMESTAMP 返 回 的 64 位 毫 秒 为 单 位 的 时 间 戳 是 自 1970年 1月 1日 以 来 的 时 间 .
Linux 的 ICMP 在 内 部 使 用 原 始 套 接 字 ( raw socket) 来 发 送 ICMP包 。 这 个 原 始 套 接 字 可 能 在 netstat(8) 消 息 输 出 中 出 现 , 带 着 一 个 “zero inode”信 息 。
VERSIONS
在 2.2版 本 中 将 再 不 支 持 ICMP_ADDRESS 请 求 。 在 2.2版 本 中 将 不 再 支 持 ICMP_SOURCE_QUENCH
参 见
RFC792 对 ICMP协 议 进 行 了 详 细 的 叙 述 。
[中 文 版 维 护 人 ]
LetBright <letbright [AT] netease.com>
[中 文 版 最 新 更 新 ]
2000/10/30
《 中 国 linux论 坛 man手 册 页 翻 译 计 划 》 :
跋
本 页 面 中 文 版 由 中 文 man 手 册 页 计 划 提 供 。 中 文 man 手 册 页 计 划 : https://github.com/man-pages-zh/manpages-zh