Saya mencoba untuk melakukan ping ke situs web saya http://www.example.com/
dan ini akan teratasi dengan alamat IP yang tidak dikenal dan waktu habis.
PING http://www.example.com/ (198.105.254.228): 56 data bytes
Request timeout for icmp_seq 0
Request timeout for icmp_seq 1
Request timeout for icmp_seq 2
tetapi ketika saya ping example.com
itu berfungsi
Apa yang saya lewatkan di sini?
ping
dangetaddrinfo()
dan teman-teman melewati garis miring, tidak tahu itu56 data bytes
adalah standar umum, dll.: Harap ambil ini sebagai tanda bahwa upaya Anda untuk mempelajari lebih banyak hal sebelum mencoba membantu akan dihargai.Jawaban:
Saya mencoba untuk melakukan ping ke situs web saya http://www.example.com/ dan ini akan teratasi dengan alamat IP yang tidak dikenal dan waktu habis.
Argumen untuk melakukan ping adalah nama host (atau alamat IP).
Jadi yang berikut semuanya akan berfungsi:
Di samping itu,
tidak akan berfungsi karena http://www.example.com/ adalah HTTP Uniform Resource Locator (URL) bukan nama host yang valid (meskipun sebagian darinya adalah nama host).
URL HTTP terdiri dari 4 bagian:
Ping biasanya tidak akan mengenali URL sebagai nama host tujuan yang valid.
Catatan :
Tidak semua URL memiliki format yang disebutkan di atas.
URL lengkap terdiri dari specifier skema penamaan diikuti oleh string yang formatnya adalah fungsi dari skema penamaan.
Format URL didefinisikan dalam spesifikasi IETF Uniform Resource Locators (URL)
Pembajakan DNS
Pengecualian untuk hal di atas dapat terjadi jika server DNS (yang menyelesaikan nama host ke alamat IP) dikonfigurasi untuk mengembalikan alamat IP yang valid bahkan jika nama host yang tidak valid diberikan.
Ini bisa terjadi jika ISP membajak permintaan DNS Anda.
Dari jawaban Mengapa ping menyelesaikan ke IP 198.105.254.228 untuk setiap nama host acak yang saya ketik? oleh Michael Hampton :
sumber
Ketika Anda menjalankan perintah ping dengan string yang bukan alamat IP, pertama-tama perlu untuk menyelesaikan alamat IP dari host yang Anda coba ping.
Ketika Anda menjalankan:
$ ping example.com
Server DNS mengembalikan alamat IP server yang menjadi tuan rumah situs web.
Namun ketika Anda awalan protokol dan jalur untuk membuat URL http standar yang semuanya dikirim ke server DNS untuk diselesaikan.
Jadi alih-alih server DNS menemukan catatan untuk
example.com
mencari catatanhttp://example.com/
yang bukan nama host yang valid.Banyak server DNS akan kembali tanpa apa-apa. Dalam hal ini perintah ping hanya akan kesalahan dengan kesalahan resolusi DNS.
Namun server DNS Anda mengembalikan alamat IP
123.456.789.000
. Alamat tersebut tampaknya merupakan layanan saran oleh Time Warner Cable untuk membantu pengguna yang salah ketik url di browser mereka.Tetapi perintah ping mengambil ini secara harfiah dan percaya bahwa nama host
http://example.com/
(yang bukan nama host yang valid) menyelesaikan ke alamat123.456.789.000
.Alasan perintah ping habis setelah itu adalah karena
123.456.789.000
tidak menanggapi permintaan ICMP.sumber
Http: // adalah singkatan dari hyper text transfer protocol, protokol yang digunakan untuk mengakses halaman web. Melakukan ping ke server tidak menggunakan HTTP, tetapi sebaliknya terdiri dari pesan ICMP (internet control message protocol), sehingga http: // tidak masuk akal dalam konteks ini.
sumber
Request timeout for icmp_seq 0
Anda dapat melihat ICMP di sana, artinya ICMP urutan 0, 1, 2 ...Mengapa Anda menggunakan 'ping'? Ini tidak akan berfungsi jika ada firewall dengan cara memblokir traffic 'ping'.
Menurut pendapat saya jika Anda akan menguji server web maka lebih baik menggunakan 'telnet', maka Anda dapat menguji host dan port yang seharusnya didengarkan.
misal: Untuk menguji server web Anda, telnet www.mywebserver.com 80 di layar kosong, ketikkan 'get' lalu 'enter' dan Anda harus mendapatkan setumpuk respons http kembali dari server web. ( mis: Permintaan Buruk HTTP / 1.1 400 ... )
Ini memberitahu saya bahwa tidak hanya servernya yang 'naik' tetapi juga mendengarkan dan merespons pada port 80. (Saya juga berharap ada firewall untuk membiarkan port 80 sampai ke server web saya)
Demikian pula 'telnet' juga berfungsi untuk menguji server mail, ftp dan apa saja.
sumber