หมายเหตุ: นี่เป็นเรื่องเกี่ยวกับที่อยู่ IP ภายนอก (เซิร์ฟเวอร์ที่อยู่บนอินเทอร์เน็ตจะเห็นเมื่อคุณเชื่อมต่อ) - หากคุณต้องการที่อยู่ IP ภายใน (ที่อยู่ที่คอมพิวเตอร์ของคุณใช้สำหรับการเชื่อมต่อซึ่งอาจแตกต่างกัน) ดูสิ่งนี้ คำตอบ
TL; DR - วิธีที่เร็วที่สุดในปี 2558
วิธีที่เร็วที่สุดโดยใช้ DNS:
dig +short myip.opendns.com @resolver1.opendns.com
หรือใช้externalip :
externalip dns
HTTP ที่เร็วที่สุดโดยใช้:
curl -s http://whatismyip.akamai.com/
หรือใช้ externalip:
externalip http
HTTPS ที่เร็วที่สุดโดยใช้ใบรับรองที่ถูกต้อง:
curl -s https://4.ifcfg.me/
หรือใช้ externalip:
externalip https
ใช้ telnet:
ด้วยnc
คำสั่ง:
nc 4.ifcfg.me 23 | grep IPv4 | cut -d' ' -f4
หรือใช้ externalip:
externalip telnet
ด้วยtelnet
คำสั่ง:
telnet 4.ifcfg.me 2>&1 | grep IPv4 | cut -d' ' -f4
ใช้ FTP:
echo close | ftp 4.ifcfg.me | awk '{print $4; exit}'
หรือใช้ externalip:
externalip ftp
ทั้งหมดข้างต้นสามารถเรียกใช้สคริปต์externalipของฉันเป็น:
externalip dns
externalip http
externalip https
externalip telnet
externalip ftp
ตอนนี้เป็นเรื่องยาว ...
มีตัวเลือกมากมายของเซิร์ฟเวอร์ต่าง ๆ ที่ให้บริการ IP ภายนอกโดยเฉพาะอย่างยิ่งผ่าน HTTP ที่โพสต์ที่นี่หรือที่อื่น ๆ
ฉันสร้างมาตรฐานเพื่อดูว่าสิ่งใดของพวกเขาดีกว่าคนอื่นและฉันก็ประหลาดใจกับผลลัพธ์ เช่น ifconfig.me ที่แนะนำอย่างกว้างขวางที่สุดก็มักจะช้าที่สุดสำหรับฉันบางครั้งใช้เวลาหลายวินาทีในการตอบสนอง หลายคนไม่ทำงานผ่าน HTTPS หรือทำงาน แต่มีใบรับรองที่ไม่ถูกต้อง บางคนมีเวลาตอบสนองที่ไม่สอดคล้องกันมาก
มาตรฐาน
HTTP และ HTTPS
นี่คือที่มาของสคริปต์ externalip-benchmark ของฉันที่ฉันใช้:
คุณสามารถรันด้วยตัวเองเพื่อดูว่าบริการใดที่กล่าวถึงที่นี่คุ้มค่ากับการใช้งาน:
wget https://raw.githubusercontent.com/rsp/scripts/master/externalip-benchmark
chmod a+x externalip-benchmark
./externalip-benchmark
ผลลัพธ์ของฉันที่ฉันได้รับเมื่อวันที่ 2015-04-03 จากวอร์ซอว์ - ที่อยู่มีการเปลี่ยนแปลงเพื่อปกป้องผู้บริสุทธิ์:
เวลาตอบสนอง http ที่ดีที่สุด:
0.086s http://ip.tyk.nu/ - answer='172.31.133.7'
0.089s http://whatismyip.akamai.com/ - answer='172.31.133.7'
0.091s http://tnx.nl/ip - answer='172.31.133.7'
0.117s http://ifcfg.me/ - answer='172.31.133.7'
0.156s http://l2.io/ip - answer='172.31.133.7'
0.317s http://ip.appspot.com/ - answer='172.31.133.7'
0.336s http://ident.me/ - answer='172.31.133.7'
0.338s http://ipof.in/txt - answer='172.31.133.7'
0.347s http://icanhazip.com/ - answer='172.31.133.7'
0.496s http://curlmyip.com/ - answer='172.31.133.7'
0.527s http://wgetip.com/ - answer='172.31.133.7'
0.548s http://curlmyip.com/ - answer='172.31.133.7'
0.665s http://bot.whatismyipaddress.com/ - answer='172.31.133.7'
0.665s http://eth0.me/ - answer='172.31.133.7'
1.041s http://ifconfig.me/ - answer='172.31.133.7'
1.049s http://corz.org/ip - answer='172.31.133.7'
1.598s http://ipecho.net/plain - answer='172.31.133.7'
เวลาตอบสนอง https ที่ดีที่สุด:
0.028s https://curlmyip.com/ - answer=''
0.028s https://curlmyip.com/ - answer=''
0.029s https://l2.io/ip - answer=''
0.029s https://tnx.nl/ip - answer=''
0.072s https://whatismyip.akamai.com/ - answer=''
0.113s https://ipecho.net/plain - answer=''
0.117s https://ident.me/ - answer=''
0.207s https://ip.tyk.nu/ - answer='172.31.133.7'
0.214s https://ipof.in/txt - answer='172.31.133.7'
0.259s https://ifcfg.me/ - answer='172.31.133.7'
0.289s https://corz.org/ip - answer=''
0.436s https://ip.appspot.com/ - answer='172.31.133.7'
0.448s https://bot.whatismyipaddress.com/ - answer=''
0.454s https://eth0.me/ - answer=''
0.673s https://icanhazip.com/ - answer='172.31.133.7'
5.255s https://ifconfig.me/ - answer=''
10.000s https://wgetip.com/ - answer=''
(หมายเหตุ: มีการตอบกลับที่รวดเร็วพร้อมเนื้อหาที่ว่างเปล่าซึ่งไม่ถูกต้อง)
เวลา ping เฉลี่ยที่ดีที่สุด:
10.210 //whatismyip.akamai.com/
36.820 //tnx.nl/ip
37.169 //ip.tyk.nu/
39.412 //ipof.in/txt
40.967 //ident.me/
41.257 //ipecho.net/plain
43.918 //ifcfg.me/
45.720 //l2.io/ip
64.749 //ip.appspot.com/
123.412 //corz.org/ip
134.245 //wgetip.com/
157.997 //icanhazip.com/
161.613 //curlmyip.com/
162.100 //curlmyip.com/
268.734 //ifconfig.me/
999999 //bot.whatismyipaddress.com/
999999 //eth0.me/
นี่คือผลลัพธ์ที่ฉันได้รับเมื่อวันที่ 2015-04-03 จากอัมสเตอร์ดัม:
เวลาตอบสนอง http ที่ดีที่สุด:
0.021s http://ipecho.net/plain - answer='172.31.13.37'
0.027s http://tnx.nl/ip - answer='172.31.13.37'
0.035s http://whatismyip.akamai.com/ - answer='172.31.13.37'
0.039s http://ifcfg.me/ - answer='172.31.13.37'
0.045s http://l2.io/ip - answer='172.31.13.37'
0.142s http://ident.me/ - answer='172.31.13.37'
0.144s http://ipof.in/txt - answer='172.31.13.37'
0.150s http://ip.appspot.com/ - answer='172.31.13.37'
0.150s http://ip.tyk.nu/ - answer='172.31.13.37'
0.170s http://icanhazip.com/ - answer='172.31.13.37'
0.190s http://eth0.me/ - answer='172.31.13.37'
0.191s http://wgetip.com/ - answer='172.31.13.37'
0.301s http://curlmyip.com/ - answer='172.31.13.37'
0.330s http://bot.whatismyipaddress.com/ - answer='172.31.13.37'
0.343s http://curlmyip.com/ - answer='172.31.13.37'
0.485s http://corz.org/ip - answer='172.31.13.37'
3.549s http://ifconfig.me/ - answer='172.31.13.37'
เวลาตอบสนอง https ที่ดีที่สุด:
0.004s https://curlmyip.com/ - answer=''
0.012s https://curlmyip.com/ - answer=''
0.012s https://tnx.nl/ip - answer=''
0.016s https://ipecho.net/plain - answer=''
0.071s https://whatismyip.akamai.com/ - answer=''
0.096s https://ifcfg.me/ - answer='172.31.13.37'
0.097s https://ident.me/ - answer=''
0.187s https://corz.org/ip - answer=''
0.187s https://ip.appspot.com/ - answer='172.31.13.37'
0.189s https://ip.tyk.nu/ - answer='172.31.13.37'
0.195s https://eth0.me/ - answer=''
0.253s https://l2.io/ip - answer=''
0.300s https://ipof.in/txt - answer='172.31.13.37'
0.324s https://bot.whatismyipaddress.com/ - answer=''
0.512s https://icanhazip.com/ - answer='172.31.13.37'
1.272s https://ifconfig.me/ - answer=''
10.002s https://wgetip.com/ - answer=''
เวลา ping เฉลี่ยที่ดีที่สุด:
1.020 //ipecho.net/plain
1.087 //whatismyip.akamai.com/
5.011 //ip.appspot.com/
6.942 //ident.me/
7.017 //ipof.in/txt
8.209 //tnx.nl/ip
11.343 //ip.tyk.nu/
12.647 //ifcfg.me/
13.828 //l2.io/ip
81.642 //icanhazip.com/
85.447 //wgetip.com/
91.473 //corz.org/ip
102.569 //curlmyip.com/
102.627 //curlmyip.com/
247.052 //ifconfig.me/
999999 //bot.whatismyipaddress.com/
999999 //eth0.me/
(999999 ปิงหมายถึงการสูญเสียแพ็กเก็ต 100%)
DNS
สำหรับการเปรียบเทียบที่นี่เป็นเวลาที่วิธีการอื่นจะทำการทดสอบในวันที่ 2015-06-16 จากวอร์ซอว์และอัมสเตอร์ดัม
โดยใช้:
time dig +short myip.opendns.com @resolver1.opendns.com
มักจะใช้เวลา (เวลานาฬิกาแขวนจริง) เกี่ยวกับ:
- 0.035 วินาทีจากวอร์ซอว์
- 0.015 วินาทีจากอัมสเตอร์ดัม
มีตัวแก้ไขสี่ตัวที่สามารถใช้วิธีนี้ได้:
- resolver1.opendns.com
- resolver2.opendns.com
- resolver3.opendns.com
- resolver4.opendns.com
พวกเขาให้เวลาตอบสนองเท่ากันในวอร์ซอว์และอัมสเตอร์ดัม แต่นี่อาจไม่ใช่ในกรณีอื่น ๆ
ใช้ 208.67.222.222 - IP ของ resolver1.opendns.com แทนที่จะใช้ชื่อโดเมนนั้นเร็วกว่า:
- 0.023 วินาทีจากวอร์ซอว์
- 0.009 วินาทีจากอัมสเตอร์ดัม
แต่อาจไม่สามารถใช้งานได้ในอนาคตหาก IP มีการเปลี่ยนแปลง (แม้ว่าอาจเป็นไปได้สำหรับตัวแก้ไข DNS ที่รู้จักกันดี - บางทีฉันควรใช้ IP ในสคริปต์externalipของฉัน- โปรดแสดงความคิดเห็น)
Telnet
Telnet ที่มีnc
หรือtelnet
คำสั่ง (ดูด้านบน) มักใช้เวลา:
- 0.103 วินาทีจากวอร์ซอว์
- 0.035 วินาทีจากอัมสเตอร์ดัม
(ไม่มีความแตกต่างที่สังเกตได้ระหว่างnc
และtelnet
คำสั่ง)
FTP
- 0.10 วินาทีจากวอร์ซอว์
- 0.036 วินาทีจากอัมสเตอร์ดัม
ชื่อโดเมน
วิธีการทั้งหมดจะเร็วขึ้น (โดยเฉพาะเมื่อเรียกใช้เป็นครั้งแรก) เมื่อมีการใช้ที่อยู่ IP แทนชื่อโดเมนของบริการที่กำหนด (ยกเว้น HTTP ที่สามารถใช้เซิร์ฟเวอร์เสมือนที่ใช้โฮสต์ได้และไม่ทำงานกับ IP เปล่า - ไม่ได้ทดสอบ) แต่จะหยุดทำงานเมื่อบริการเปลี่ยนที่อยู่ IP ดังนั้นจึงอาจเร็วกว่า แต่มีหลักฐานน้อยกว่าในอนาคต
ความคิดเห็น
หากคุณเห็นผลลัพธ์ที่น่าสนใจจากที่ตั้งของคุณหรือถ้าคุณคิดว่าควรแนะนำโฮสต์อื่นแทนที่จะเป็นที่ฉันเลือกโปรดโพสต์ความคิดเห็น หากมีบริการที่สำคัญขาดหายไปโปรดแสดงความคิดเห็นหรือโพสต์ปัญหาใน GitHub ฉันต้องการอัปเดตโพสต์นี้ด้วยตัวเลือกปัจจุบันของบริการที่มีประสิทธิภาพดีที่สุด