Thông thường, chúng tôi chỉ nhập địa chỉ của trang web mà chúng tôi muốn xem, nhưng liệu một máy chủ web có thực sự “biết” nếu chúng tôi sử dụng địa chỉ IP trực tiếp thay thế không? Bài đăng Hỏi và Đáp của SuperUser hôm nay có câu trả lời cho câu hỏi của một độc giả đang bối rối.
Phiên Hỏi & Đáp hôm nay đến với chúng tôi với sự hỗ trợ của SuperUser — một phần của Stack Exchange, một nhóm các trang web Hỏi & Đáp do cộng đồng điều hành.
Ảnh lịch sự của Cory M. Grenier (Flickr) .
Câu hỏi
Người đọc SuperUser Joseph A. muốn biết cách máy chủ web có thể biết bạn có đang sử dụng truy cập địa chỉ IP trực tiếp hay không:
Một số máy chủ web, khi được truy cập bằng địa chỉ IP của chúng, sẽ trả về lỗi không cho phép truy cập địa chỉ IP trực tiếp. Tôi đã tự hỏi một thời gian điều này hoạt động như thế nào.
Trình duyệt có luôn phân giải địa chỉ IP và kết nối với nó không? Truy cập địa chỉ IP trực tiếp chỉ là bỏ qua DNS hoàn toàn, phải không? Làm thế nào để một máy chủ từ xa biết rằng bạn đã bỏ qua DNS?
Làm thế nào để máy chủ web biết bạn có đang sử dụng truy cập địa chỉ IP trực tiếp hay không?
Câu trả lời
Cộng tác viên SuperUser iAdjunct có câu trả lời cho chúng tôi:
Để trả lời câu hỏi của bạn về cách nó biết, nó liên quan đến những gì trình duyệt của bạn gửi cho máy chủ web. Bạn nói đúng rằng hệ thống luôn phân giải nó thành một địa chỉ IP, nhưng trình duyệt sẽ gửi URL mà bạn đã cố gắng truy cập trong tiêu đề HTTP.
Đây là tiêu đề mẫu mà tôi tìm thấy trực tuyến, đã được sửa đổi để trông giống như thể bạn sử dụng Firefox trên Windows và nhập apple.com vào thanh địa chỉ:
![]()
Đây là tiêu đề sẽ trông như thế nào nếu bạn sử dụng địa chỉ IP của nó:
![]()
Cả hai điều này sẽ được gửi đến cùng một địa chỉ IP qua một socket, nhưng trình duyệt sẽ cho máy chủ web biết nó đã truy cập những gì. Tại sao? Vì các máy chủ web có cùng địa chỉ IP có thể lưu trữ nhiều trang web và cung cấp các trang khác nhau cho mỗi trang. Nó không thể phân biệt ai muốn trang nào theo địa chỉ IP vì chúng đều có cùng một địa chỉ, nhưng nó có thể phân biệt chúng bằng tiêu đề HTTP.
Có điều gì đó để thêm vào lời giải thích? Tắt âm thanh trong các ý kiến. Bạn muốn đọc thêm câu trả lời từ những người dùng Stack Exchange am hiểu công nghệ khác? Kiểm tra toàn bộ chuỗi thảo luận tại đây .