curl 指定IP 下载文件


最近碰到一个问题,在测试CDN缓存,每次上传更新一个同名文件,CDN后台并未做刷新缓存动作,但依旧能下载到新的文件,此时发现其实每次解析出来CDN节点都有很多个,怀疑我每次下载用的是不同的节点如下:

root@pc:~# nslookup cos.lejunwl.com
Server:         127.0.0.53
Address:        127.0.0.53#53

Non-authoritative answer:
cos.lejunwl.com canonical name = cos.lejunwl.com.cdn.dnsv1.com.
cos.lejunwl.com.cdn.dnsv1.com   canonical name = 2009447.dispatch.spcdntip.com.
Name:   2009447.dispatch.spcdntip.com
Address: 113.105.155.213
Name:   2009447.dispatch.spcdntip.com
Address: 180.96.32.98

所以不用刷新也是最新的,为了验证是不是这个问题,我用curl 工具指定ip进行访问命令如下:

curl -x 113.105.155.213:80 http://cos.lejunwl.com/youlong/test/425YX/XZSDKDEMO1110/XZSDKDEMO1110_hcFaLHQuX8FilfhckAWJpw.apk -O -v
*   Trying 113.105.155.213...
* TCP_NODELAY set
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0* Connected to 113.105.155.213 (113.105.155.213) port 80 (#0)
> GET http://cos.lejunwl.com/youlong/test/425YX/XZSDKDEMO1110/XZSDKDEMO1110_hcFaLHQuX8FilfhckAWJpw.apk HTTP/1.1
> Host: cos.lejunwl.com
> User-Agent: curl/7.58.0
> Accept: */*
> Proxy-Connection: Keep-Alive
> 
< HTTP/1.1 200 OK
< Server: NWS_SP
< Connection: keep-alive
< Date: Sat, 12 Oct 2019 07:42:12 GMT
< Cache-Control: max-age=600
< Expires: Sat, 12 Oct 2019 07:52:12 GMT
< Last-Modified: Sat, 12 Oct 2019 15:29:07 GMT
< Content-Type: application/vnd.android.package-archive
< Content-Length: 3795490
< X-NWS-LOG-UUID: 5459280831822939693 2107abdde3874148c4be187298eb91fe
< X-Cache-Lookup: Hit From Disktank3
< Accept-Ranges: bytes
< 
{ [2600 bytes data]
100 3706k  100 3706k    0     0   582k      0  0:00:06  0:00:06 --:--:--  585k
* Connection #0 to host 113.105.155.213 left intact

再通过md5sum 进行比对

root@pc:~# md5sum XZSDKDEMO1110_hcFaLHQuX8FilfhckAWJpw.apk 
e2560de9dfd5138607b6590080c35d65  XZSDKDEMO1110_hcFaLHQuX8FilfhckAWJpw.apk

这样就可以比对出在同一个CDN节点同名文件有没有被覆盖。