Czy możesz uzyskać odpowiedź z witryny HTTPS za pomocą polecenia Ping?

51

Próbowałem użyć pingpolecenia na httpsstronie, ale komunikat mówi, że pingnie można znaleźć hosta. Czy jest jakiś problem dotyczący pingi https?

Shamim Hafiz
źródło
6
Krótka odpowiedź: Ping i HTTPS nie mają ze sobą nic wspólnego. Ping jest narzędziem sieciowym niskiego poziomu, podczas gdy HTTPS jest protokołem warstwy aplikacji (a raczej schematem URI).
slhck
4
Jeśli chcesz sprawdzić, czy witryna ssl reaguje poprawnie, użyj openssl w ten sposób: „openssl s_client -connect google.com:443” Następnie możesz wydać polecenie GET, a następnie dwa razy nacisnąć klawisz powrotu w następujący sposób: „GET / HTTP /1.1"
Shadok
1
Jeśli ktoś skończył tutaj, szukając narzędzia ping-like dla https, właśnie napisałem jedno: github.com/voutasaurus/sup
voutasaurus

Odpowiedzi:

39

Odpowiedź na twoje pytanie (czy możesz uzyskać odpowiedź z witryny HTTPS za pomocą polecenia Ping?) Brzmi: tak, o ile odpowiedzi ICMP są włączone u dostawcy witryny HTTPS. Nie ma to jednak nic wspólnego z HTTP ani HTTPS:

Ping użyje ICMP protokół, należy do TCP / IP Internet warstwy , która jest niższa niż warstwa HTTP lub HTTPS (od warstwy aplikacji ):

Ping działa poprzez wysyłanie pakietów żądań echa Internet Control Message Protocol (ICMP) do hosta docelowego i oczekiwanie na odpowiedź ICMP. W tym procesie mierzy czas od transmisji do odbioru (czas podróży w obie strony) 1 i rejestruje utratę pakietów. Wyniki testu są drukowane w formie statystycznego podsumowania otrzymanych pakietów odpowiedzi, w tym minimalnego, maksymalnego i średniego czasu podróży w obie strony, a czasem odchylenia standardowego średniej.

Możesz przetestować za pomocą „cmd” (przycisk Start systemu Windows / wpisz cmd w polu wyszukiwania, otwórz „cmd.exe”), a następnie za pomocą polecenia ping:

ping www.hotmail.com

Jeśli spróbujesz wysłać polecenie ping do adresu URL HTTP, wygląda to tak:

ping http://www.hotmail.com

Otrzymasz ten sam błąd, który wystąpiłby podczas próby pingowania adresu URL opartego na HTTPS:

ping https://www.hotmail.com

(Błąd podobny do tego, że ping nie może dotrzeć do żądanego adresu, pojawi się przy obu próbach).

Diogo
źródło
20

pingdziała na znacznie niższym poziomie niż HTTP lub HTTPS i akceptuje tylko nazwy hostów , a nie adresy URL. Na przykład:

ping www.google.com
grawitacja
źródło
8

tcping - symuluj „ping” przez tcp, ustanawiając połączenie z hostami sieciowymi. tcping na poziomie aplikacji wyśle ​​SYN, czeka na ACK, zamyka za pomocą 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
mdadm
źródło
2

Możesz wydać żądanie HEAD za pomocą OpenSSL:

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

eof

Pamiętaj, że możesz także użyć „HTTP / 2”, ale bądź ostrożny, ponieważ niektóre serwery (np. Github.com) nie obsługują go.

Steven Penny
źródło