คุณสามารถรับการตอบกลับจากไซต์ HTTPS โดยใช้คำสั่ง Ping ได้หรือไม่


51

ฉันลองใช้pingคำสั่งบนhttpsหน้าเว็บ แต่มีข้อความแจ้งว่าpingไม่พบโฮสต์ มีปัญหาบางอย่างเกี่ยวกับpingและhttps?


6
คำตอบสั้น ๆ : Ping และ HTTPS ไม่มีอะไรเหมือนกัน Pingเป็นเครื่องมือเครือข่ายระดับต่ำในขณะที่HTTPSเป็นโปรโตคอลชั้นแอปพลิเคชัน (หรือค่อนข้างเป็นรูปแบบ URI)
slhck

4
หากคุณต้องการทดสอบว่าไซต์ ssl ของคุณตอบสนองถูกต้องให้ใช้ openssl ด้วยวิธีนี้: "openssl s_client -connect google.com:443" จากนั้นคุณสามารถออกคำสั่ง GET แล้วตามด้วยการกดสองครั้งบนปุ่มส่งคืนดังนี้: "GET / HTTP /1.1 "
Shadok

1
ในกรณีที่ทุกคนลงเอยที่นี่กำลังมองหาเครื่องมือคล้ายกับ ping สำหรับ https ฉันเพิ่งเขียนหนึ่ง: github.com/voutasaurus/sup
voutasaurus

คำตอบ:


39

คำตอบสำหรับคำถามของคุณ (คุณสามารถรับการตอบกลับจากไซต์ HTTPS โดยใช้คำสั่ง Ping ได้หรือไม่) คือใช่คุณสามารถทำได้ตราบใดที่การตอบกลับ ICMP ถูกเปิดใช้งานในผู้ให้บริการไซต์ HTTPS อย่างไรก็ตามไม่มีอะไรเกี่ยวข้องกับ HTTP หรือ HTTPS:

Pingจะใช้โปรโตคอลICMPซึ่งเป็นของ TCP / IP Internet Layerซึ่งเป็นเลเยอร์ที่ต่ำกว่าHTTPหรือHTTP (จากApplication Layer ):

Ping ดำเนินการโดยส่ง echo ร้องขอโพรโทคอลข้อความการควบคุมอินเทอร์เน็ต (ICMP) ไปยังโฮสต์เป้าหมายและรอการตอบกลับของ ICMP ในกระบวนการมันวัดเวลาจากการส่งไปยังแผนกต้อนรับส่วนหน้า (เวลาไปกลับ) 1และบันทึกการสูญหายของแพ็กเก็ต ผลลัพธ์ของการทดสอบจะถูกพิมพ์ในรูปแบบของการสรุปทางสถิติของแพ็กเก็ตการตอบสนองที่ได้รับรวมถึงเวลาต่ำสุดสูงสุดและเวลาเฉลี่ยในการเดินทางไป - กลับและบางครั้งค่าเบี่ยงเบนมาตรฐานของค่าเฉลี่ย

คุณสามารถทดสอบด้วย "cmd" (ปุ่ม Start ของ Windows / พิมพ์ cmd ในช่องค้นหาเปิด "cmd.exe") จากนั้นใช้ ping:

ping www.hotmail.com

หากคุณพยายาม ping URL HTTP สิ่งนี้จะเป็นดังนี้:

ping http://www.hotmail.com

คุณจะได้รับข้อผิดพลาดเดียวกับที่คุณจะได้รับเมื่อพยายาม ping URL ที่ใช้ HTTPS:

ping https://www.hotmail.com

(ข้อผิดพลาดบางอย่างเช่น ping ที่ไม่สามารถเข้าถึงที่อยู่ที่ร้องขอจะปรากฏในความพยายามทั้งสองครั้ง)


20

pingทำงานในระดับที่ต่ำกว่า HTTP หรือ HTTPS มากและยอมรับเฉพาะชื่อโฮสต์ไม่ใช่ URL ตัวอย่างเช่น:

ping www.google.com

8

tcping - จำลอง "ping" บน tcp โดยสร้างการเชื่อมต่อกับโฮสต์เครือข่าย tcping ที่ระดับแอปพลิเคชันจะส่ง SYN รอ ACK ปิดด้วย FIN ACK

C:\>tcping google.com 443

Probing 87.106.83.127:443/tcp - Port is open - time=19.787ms
Probing 87.106.83.127:443/tcp - Port is open - time=20.487ms
Probing 87.106.83.127:443/tcp - Port is open - time=24.494ms
Control-C

Ping statistics for 87.106.83.127:443
     3 probes sent.
     3 successful, 0 failed.
Approximate trip times in milli-seconds:
     Minimum = 19.787ms, Maximum = 24.494ms, Average = 21.589ms

2

คุณสามารถออกคำขอ HEAD ด้วย OpenSSL:

openssl s_client -quiet -connect github.com:443 <<eof
HEAD / HTTP/1.1
Connection: close
Host: github.com

eof

โปรดทราบว่าคุณยังสามารถใช้ "HTTP / 2" ได้ แต่ต้องระวังเพราะบางเซิร์ฟเวอร์ (เช่น github.com) ไม่รองรับ

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.