Có gì mới?

Chào mừng bạn đến với diễn đàn Tui Học Web

Vui lòng đăng ký hoặc đăng nhập để sử dụng hết các tính năng của forum nhé!
  • Thông báo: Hiện tại do admin không có nhiều thời gian và không thể tiếp tục quản trị và maintain forum, do đó forum sẽ có dự định được đóng lại từ 06/2022, cảm ơn mọi người đã đồng hành cùng forum suốt thời gian vừa qua. Cảm ơn rất nhiều.

Chia sẻ Localhost là gì?

Chia sẻ
Tình trạng
Không mở trả lời sau này.

localhost.jpg

Localhost là gì?​

Như anh em biết thì mỗi máy tính được định danh bởi một cái tên gọi là host name và một địa chỉ IP nếu muốn truy cập vào internet. Nó cũng như con người chúng ta vậy. Chúng ta khi sinh ra cũng được bố mẹ đặt cho mình một cái tên và máy tính cũng thế, khi bạn cài hệ điều hành vào một máy tính, theo mặc định, hệ điều hành sẽ đặt cho nó một cái tên ngẫu nhiên kiểu "DESKTOP-[mã ngẫu nhiên]",đó sẽ là cái tên cho máy của bạn nếu như bạn không thayđổi nó.

Vậy nếu ta gọi nó bằng cái tên host name đó thì hơi bất tiện, do đó chúng ta có một cái niệm là localhost khi muốn máy tính nhận diện rằng mình đang gọi chính nó.

Vậy rốt cuộc localhost là gì?
localhost là một cái hostname được quy định sẵn giá trị là chính máy đang chạy. Khi ta chạy chương trình hoặc các tiện ích trên máy này, nếu ta gọi tới localhost, máy tính sẽ ngầm hiểu là ta đang gọi chính nó. Nếu có các tương tác như kết nối mạng, các dịch vụ tới localhost, máy tính sẽ hiểu là nó sẽ tự liên lạc với chính mình.

Localhost có thể giúp chúng ta kiểm tra dịch vụ mạng ngay trên máy mình, thậm chí trong lúc phần cứng của mạng bị lỗi. Khi chúng ta dùng "localhost", dịch vụ mạng sẽđược chúng ta truy cập thông qua một adapter có tên là loopback, địa chỉ IP của loopback là 127.0.0.1, dođó, nếu các bạn truy cập localhost tức là cácbạnđang truy cập vàođịa chỉ ip là 127.0.0.1. Trường hợp này, "localhost"được coi như là tên miền củađịa chỉ 127.0.0.1 vàđịa chỉ IP 127.0.0.1 là kết quả trả về khi truy vấn DNS tới name localhost.

Địa chỉ loopback là gì?​

Loopback là một nền tảng có sẵn trong tất cả các hệ điều hành. Các gói được truyền qua cổng của interface này thì đều được trả về (lặp lại) trên cùng một interface. Hay nói cách khác, loopback đúng như cái tên của nó, một vòng lặp trả về.
Theo tiêu chuẩn IETF thì đối với IPv4, toàn bộ các IP thuộc dãy 127.0.0.1/8 đều thuộc interface loopback này.

Ta sẽ xem qua một số ví dụ:
Bash:
ip a show lo

1631378483889.png

Bash:
sudo cat /etc/hosts

1631378516613.png

Cách mà các gói tin được xử lý nội bộ​

Nói chung, các gói tin được sử dụng cho loopback được quy định và phân biệt với các gói tin khác bằng địa chỉ IP. Quá trình xử lý các gói tin này xảy ra ở tầng Liên kết (Link layer) của mô hình TCP/IP. Các gói tin này sẽ đi qua và được gửi về chính hệ thống của máy tính. Nó sẽ không đi qua phần cứng NIC như các gói tin khác. Ngoài ra, ở đây có một quy tắc được quy định là các router (bộ định tuyến) mạng sẽ không định tuyến các gói tin này.

Ví dụ: Khi ta yêu cầuđịa chỉ 127.0.0.1. Yêu cầu sẽ khôngđược chuyển tiếp tới internet do có prefix là 127,đại diện cho localhost.Ởđây các góitin gửi tớiđịa chỉ nàyđềuđược gửi trở lại chính nó.

Minh họa:

1631378076898.png

Bash:
ping -c 4 localhost

1631378392318.png

Bash:
ping -c 4 google.com

1631378423544.png

Test ứng dụng sử dụng localhost​

Chúng ta có thể dùng localhost cho nhiều việc và một trong những việc mà anh em hay làm nhất đó chính là dùng chính localhost để test tạo server và test chính ứng dụng của chúng ta. Nếu chúng ta muốn truy cập vào một domain có tên là tuihocweb.com nhưng bằng code mà anh em tự code trên máy thì chúng ta chỉ cần vào file hosts của Linux, sau đó trỏ tên miền tuihocweb.com về 127.0.0.1.

Còn nếu trang thật hiện tại mà anh em đang đọc đây thì là địa chỉ IP của cloudflare.

Bash:
ping -c 4 tuihocweb.com

1631378355707.png

Cảm ơn anh em đã theo dõi.​
 
Tình trạng
Không mở trả lời sau này.
shape1
shape2
shape3
shape4
shape7
shape8
Bên trên