net.ipv4.icmp_echo_ignore_all导致无法ping通
本文最后更新于112 天前,其中的信息可能已经过时,如有错误请发送邮件到3260245294@qq.com

知识点讲解

net.ipv4.icmp_echo_ignore_all是什么?

net.ipv4.icmp_echo_ignore_all 是一个在 Linux 操作系统中用于控制 ICMP (Internet Control Message Protocol) 请求响应行为的内核参数。它是网络配置的一部分,特别影响到 ICMP 协议,通常用于 ping 命令。

为什么会影响 ICMP 导致无法 ping 通?

当 net.ipv4.icmp_echo_ignore_all 设置为 1 时,系统会忽略所有 ICMP 回声请求(即 ping 请求)。这意味着,如果你从另一台计备尝试 ping 这台设置了 net.ipv4.icmp_echo_ignore_all=1 的机器,你将不会收到回应,从而导致无法 ping 通。

如何查询和修改这个参数?

查询
要查询 net.ipv4.icmp_echo_ignore_all 的当前值,可以使用 sysctl 命令:
sysctl net.ipv4.icmp_echo_ignore_all
临时修改
要临时修改此参数(仅在当前会话或直到下次系统重启有效),可以使用以下命令:
sysctl -w net.ipv4.icmp_echo_ignore_all=1
这将设置 net.ipv4.icmp_echo_ignore_all 为 1。将 1 更改为 0 以恢复默认行为。
其实还有种方法众所周知proc是虚拟文件系统 在下面有个子目录sys可以查询并修改内核参数(见附件)

永久修改
要永久修改此参数,需要编辑 /etc/sysctl.conf 文件或在 /etc/sysctl.d/ 目录中创建一个新文件。在文件中添加或修改以下行:
net.ipv4.icmp_echo_ignore_all=1
然后执行 sysctl -p 命令来应用更改。

问题复现

测试net.ipv4.icmp_echo_ignore_all等于1时

无法ping通并且抓包查看无回包

修改为0(禁用)测试正常

如果觉得本文对您有所帮助,可以支持下博主,一分也是缘
暂无评论

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇
下一篇