ntpq 命令返回“timed out, nothing received”的排查方法

简介: 开启Ipv6网络,ecs 执行ntpq 查询超时的排查过程

问题现象

多台ecs实例机器都能通过ntpq -p命令查看时间同步情况,只有其中一个实例使用ntpq -p命令的时候出错:

localhost: timed out, nothing received

***Request timed out

aeb65a4b756fd466454e2d10a09eeb5bebf0f4d8

排查过程

1.分析对比了正常和非正常显示的主机中/etc/ntp.conf的配置文件,结果相同,排除ntp命令本身以及配置的问题

2.直接通过strace  ntpq -p 查看命令执行过程如下

d079b650de03b270feb0375bd9c427f97379830a

结果显示,AF_INET6 即IPv6 地址向外发送sendto数据超时
推测这台主机有启用Ipv6 ,默认先走的ipv6地址

验证过程

ntpq -p 如果不指定地址的话,走的是默认ntp server

1.手动指定地址,正常显示

2. ntp -4p 即指定通过ipv4 地址获取返回值,正常显示

3.ntpq  -6p  指定通过ipv6 地址获取返回值,显示和ntpq  -p 命令返回“timed out, nothing received”的结果一致
d90ef6d578f3665e17a3b319c82534ae45756fa4


通过分析对比测试
因为开启了Ipv6 ,默认ntpq 先走Ipv6的通道,而ECS  linux 默认无法直接访问ipv6地址,因此会访问超时


解决方案

关闭Ipv6 后,再重新执行ntpq -p 显示正常

临时关闭开启Ipv6的方法如下

interface-name 为eth0/eth1


 sh -c 'echo 1 > /proc/sys/net/ipv6/conf/<interface-name>/disable_ipv6'   #关闭  
 sh -c 'echo 1 > /proc/sys/net/ipv6/conf/<interface-name>/disable_ipv6'   #开启
或者关闭所有接口(包括回环接口)的Ipv6 地址
 sh -c 'echo 1 > /proc/sys/net/ipv6/conf/all/disable_ipv6'

永久关闭ipv6

/etc/sysctl.conf  中添加如下参数

# 禁用整个系统所有接口的IPv6
net.ipv6.conf.all.disable_ipv6 = 1
# 禁用某一个指定接口的IPv6(例如:eth0, eth1)
net.ipv6.conf.eth1.disable_ipv6 = 1
net.ipv6.conf.eth0.disable_ipv6 = 1





目录
相关文章
错误: 实例 "ahwater-linux-core" 执行所请求操作失败,实例处于错误状态。: 请稍后再试 [错误: Exceeded maximum number of retries. Exceeded max scheduling attempts 3 for instance 7c1609
错误: 实例 "ahwater-linux-core" 执行所请求操作失败,实例处于错误状态。: 请稍后再试 [错误: Exceeded maximum number of retries. Exceeded max scheduling attempts 3 for instance 7c1609c9-9d0f-4836-85b3-cefd45f942a7.
5411 0
|
5月前
|
SQL druid 关系型数据库
MySQL连接超时时间wait_timeout导致间歇性报错:communication link failure
MySQL连接超时时间wait_timeout导致间歇性报错:communication link failure
160 1
|
网络协议
排错-tcpreplay回放错误:send() [218] Message too long (errno = 90)
排错-tcpreplay回放错误:send() [218] Message too long (errno = 90)
153 0
|
NoSQL Java Redis
记录Redis操作的异常QueryTimeoutException & RedisCommandTimeoutException: Command timed out after 1 min
记录Redis操作的异常QueryTimeoutException & RedisCommandTimeoutException: Command timed out after 1 min
3217 0
|
Java 关系型数据库 MySQL
errorCode 1045, state 28000错误详解即解决方法
errorCode 1045, state 28000错误详解即解决方法
2194 0
errorCode 1045, state 28000错误详解即解决方法
|
安全 Java 容器
简述快速失败(fail-fast)和安全失败(fail-safe)?
快速失败(fail-fast)和安全失败(fail-safe)
140 0
|
数据库 NoSQL MongoDB
Mongodb中经常出现的错误(汇总)child process failed, exited with error number
异常处理汇总-服 务 器 http://www.cnblogs.com/dunitian/p/4522983.html 异常处理汇总-数据库系列  http://www.cnblogs.com/dunitian/p/4522990.
1380 0
如何处理错误消息Query XXX is invalid or contains errors
如何处理错误消息Query XXX is invalid or contains errors
138 0
如何处理错误消息Query XXX is invalid or contains errors
|
存储 中间件
为什么使用中间件下载时总是收到警告消息Object is in status Wait
为什么使用中间件下载时总是收到警告消息Object is in status Wait
134 1
为什么使用中间件下载时总是收到警告消息Object is in status Wait