今天凌晨机房整个迁移,断了外网,然后服务器、路由与交换机、数据库等都迁移完并配置好后
测试应用,测试网段应用服务器网段 107.0 ,
连接不上数据库,telnet database_IP 1521 能通但是很慢,ping 0.2ms的 延迟,
service network restart -- telnet IP 1521 -- 这样正常了 但是再过了近20秒 又跟以前一样~, 把tomcat与database直接连接 再telnet 还是这样。
执行# strace telnet database_IP 1521 看到底发生了什么:
会发现服务器会先查本地DNS缓存(nscd) -- /etc/hosts -- /etc/resolv.conf--
因为当时是连接不了外网的 请求DNS服务器会超时,在这浪费的些时间。
telnet localhosts 1521 正常,但是换成IP就慢了,纠结,后来把
/etc/resolv.conf 中DNS服务器IP 注释掉 -- telnet IP 1521 正常~
---
后来在centos5.9与6.0以上分别做了以下测试:
1>telnet 本机IP地址 22 端口
2>ssh 本机IP
3>mysql -u root -p -h 本机IP
系统:centos5.9_X86_64 以上三种测试在DNS错误时都会有延迟
系统:centos6.5_X86_64 在DNS错误时只有第二种情况会有延迟
--centos6.0与centos6.2上也测试了一下和在centos6.5下是一样的.
转载于:https://blog.51cto.com/dodowolf/1418149