大型公司的服务器往往会部署到多个地区,有多个IP,如baiduc.com这个域名,在中国是被解析成123.125.114.144,在美国是被解析成180.149.132.47,在德国是被解析成111.13.101.208。
咱们公司的内网VPN,域名是myaccess.oraclevpn.com,有的时候会抽风拨号拨不上去。这是因为在中国,有的时候会因为防火长城的缘故,域名有时会解析不到正确的IP上(DNS投毒)。这种问题出现可能仅仅10来分钟就自动解决了,也有可能持续几个小时。
我们可以做到是,将这个域名绑定到一个稳定可用的IP上,这样每次拨号的时候,域名总是能被解析出来。绑定域名,在windows环境中需要修改C:\Windows\System32\drivers\etc\hosts文件,在linux环境需要修改/etc/hosts文件。
那么我们将域名绑定哪个IP,我们来测试一下。
1. 先获取域名会对应哪些IP?
我用Just Ping 来查找。可以发现,公司vpn的域名对应10.188.235.197、148.87.127.133、148.87.127.133等等的几个IP。
2. 这几个IP中哪个质量最好?
ping一下各个IP,可以看到:
202.92.75.130 的 Ping 统计信息:
数据包: 已发送 = 500,已接收 = 488,丢失 = 12 (2% 丢失),
往返行程的估计时间(以毫秒为单位):
最短 = 401ms,最长 = 690ms,平均 = 422ms
197.97.72.171 的 Ping 统计信息:
数据包: 已发送 = 500,已接收 = 488,丢失 = 12 (2% 丢失),
往返行程的估计时间(以毫秒为单位):
最短 = 547ms,最长 = 773ms,平均 = 569ms
202.45.129.172 的 Ping 统计信息:
数据包: 已发送 = 500,已接收 = 471,丢失 = 29 (5% 丢失),
往返行程的估计时间(以毫秒为单位):
最短 = 78ms,最长 = 414ms,平均 = 98ms
196.15.23.68 的 Ping 统计信息:
数据包: 已发送 = 500,已接收 = 474,丢失 = 26 (5% 丢失),
往返行程的估计时间(以毫秒为单位):
最短 = 412ms,最长 = 1113ms,平均 = 443ms
148.87.36.20 的 Ping 统计信息:
数据包: 已发送 = 500,已接收 = 470,丢失 = 30 (6% 丢失),
往返行程的估计时间(以毫秒为单位):
最短 = 190ms,最长 = 893ms,平均 = 211ms
137.254.4.85 的 Ping 统计信息:
数据包: 已发送 = 500,已接收 = 446,丢失 = 54 (10% 丢失),
往返行程的估计时间(以毫秒为单位):
最短 = 297ms,最长 = 605ms,平均 = 319ms
148.87.127.133 的 Ping 统计信息:
数据包: 已发送 = 500,已接收 = 423,丢失 = 77 (15% 丢失),
往返行程的估计时间(以毫秒为单位):
最短 = 312ms,最长 = 559ms,平均 = 361ms
148.87.127.133 的 Ping 统计信息:
数据包: 已发送 = 500,已接收 = 419,丢失 = 81 (16% 丢失),
往返行程的估计时间(以毫秒为单位):
最短 = 309ms,最长 = 563ms,平均 = 358ms
10.188.235.197 的 Ping 统计信息:
数据包: 已发送 = 184,已接收 = 0,丢失 = 184 (100% 丢失),
我们这里按照丢包率来排名,相同丢包率的情况下用延时来排名。
网络质量好不好,我们常用ping命令来检查,ping的结果有延时和丢包率。我们看网络好不好,很多关注的是丢包率,延时其实根据路线远近和好坏,不可避免。打个比方,你玩CS,人家2秒前就爆你头了,你2秒后才看到自己被爆头,这就是延时。你走着楼梯,突然死在楼顶,中间跳跃了,这就是丢包。
3. 挑选好的IP进行绑定。
我们看到丢包率小于5%的四个IP。对其进行16k的大包和16字节的小包进行ping,看其质量:
16k大包:
来自 202.92.75.130 的回复: 字节=16000 时间=424ms TTL=236
202.92.75.130 的 Ping 统计信息:
数据包: 已发送 = 200,已接收 = 189,丢失 = 11 (5% 丢失),
往返行程的估计时间(以毫秒为单位):
最短 = 415ms,最长 = 510ms,平均 = 436ms
196.15.23.68 的 Ping 统计信息:
数据包: 已发送 = 200,已接收 = 195,丢失 = 5 (2% 丢失),
往返行程的估计时间(以毫秒为单位):
最短 = 426ms,最长 = 614ms,平均 = 456ms
197.97.72.171 的 Ping 统计信息:
数据包: 已发送 = 200,已接收 = 152,丢失 = 48 (24% 丢失),
往返行程的估计时间(以毫秒为单位):
最短 = 561ms,最长 = 696ms,平均 = 598ms
202.45.129.172 的 Ping 统计信息:
数据包: 已发送 = 200,已接收 = 180,丢失 = 20 (10% 丢失),
往返行程的估计时间(以毫秒为单位):
最短 = 92ms,最长 = 286ms,平均 = 115ms
16字节小包:
来自 202.92.75.130 的回复: 字节=16 时间=403ms TTL=236
202.92.75.130 的 Ping 统计信息:
数据包: 已发送 = 200,已接收 = 196,丢失 = 4 (2% 丢失),
往返行程的估计时间(以毫秒为单位):
最短 = 401ms,最长 = 1325ms,平均 = 419ms
196.15.23.68 的 Ping 统计信息:
数据包: 已发送 = 200,已接收 = 196,丢失 = 4 (2% 丢失),
往返行程的估计时间(以毫秒为单位):
最短 = 412ms,最长 = 1336ms,平均 = 425ms
197.97.72.171 的 Ping 统计信息:
数据包: 已发送 = 200,已接收 = 178,丢失 = 22 (11% 丢失),
往返行程的估计时间(以毫秒为单位):
最短 = 545ms,最长 = 789ms,平均 = 580ms
202.45.129.172 的 Ping 统计信息:
数据包: 已发送 = 200,已接收 = 192,丢失 = 8 (4% 丢失),
往返行程的估计时间(以毫秒为单位):
最短 = 77ms,最长 = 1027ms,平均 = 98ms
综上,可以看到196.15.23.68这个印度的IP在中国使用质量最好。虽然,在中国解析出来的IP是202.45.129.172,延时比较小,但是其丢包率比较高。
优先考虑丢包率小的。
4. 将196.15.23.68绑定到hosts文件。