有的时候linux服务器会出现宕机的状况,可能的原因是因为防火墙的问题导致的。
例如用DNSpod对某个网站以及服务器进行监控,当出现宕机时, 如果服务器并没有关闭,可以正常连接,这时候你可以先ping一下服务器,有的服务器虽然放在内网但设置了公网ip,要注意通过外网ping一下,可能内网是正常的,只是服务器与外网的连接出现了问题,如果在外网无法ping通服务器,则需要对防火墙进行设置一下。
如果只是临时允许其他服务器或pc机ping通,可以采用下面这条命令:
- 允许被ping通:echo 0 > /proc/sys/net/ipv4/icmp_echo_ignore_all
如果只是临时禁止其他服务器或pc机ping通,可以采用下面这条命令:
- 禁止被ping通:echo 1 > /proc/sys/net/ipv4/icmp_echo_ignore_all
临时允许和禁止ping通服务器的命令只是0和1的差别,需要注意的是,这种临时修改的命令在服务器重启以后会还原为原来的状态。
如果想实现永久允许服务器被其他的服务器和pc机ping通则需要打开配置文件/etc/sysctl.conf然后在其中添加一行:
net.ipv4.icmp_echo_ignore_all=0
如下图:
下面则是我在服务器宕机以后通过外网对服务器ping不通,以及在解决防火墙的问题以后能够成功ping通服务器的情况。