Liên hệProfile
Danh mục

Mục Lục

    Hướng dẫn dùng lệnh host Linux để kiểm tra và truy vấn DNS nhanh chóng

    Nguyễn Hưng

    Ngày đăng:

    02/04/2026

    Cập nhật lần cuối:

    02/04/2026

    Lượt xem:
    Chia sẻ
    Đánh giá
    5/5 - (1 bình chọn)

    Nguyễn Hưng

    Lượt xem:
    Ngày đăng:

    02/04/2026

    Cập nhật lần cuối:

    02/04/2026

    Mục lục

    Lệnh host trong Linux là một tiện ích dòng lệnh dùng để truy vấn DNS, giúp bạn kiểm tra việc phân giải tên miền và tra cứu các bản ghi DNS một cách nhanh và đơn giản. Trong bài viết này, mình sẽ hướng dẫn chi tiết cách sử dụng lệnh host để kiểm tra hoạt động DNS, tìm địa chỉ IP của tên miền và tra cứu các bản ghi quan trọng khác.

    Những điểm chính

    • Khái niệm: Hiểu rõ định nghĩa và vai trò của lệnh host trong việc truy vấn DNS và kiểm tra phân giải tên miền.
    • Các tùy chọn của lệnh: Nắm vững các tham số quan trọng như -a, -t, -W để tùy chỉnh nội dung phản hồi theo nhu cầu tra cứu.
    • Lợi ích sử dụng: Biết cách tận dụng lệnh host để xác định sự cố mạng, xác minh cấu hình hệ thống và hỗ trợ xác thực bảo mật nhanh chóng.
    • Cách cài đặt: Hướng dẫn chi tiết cách cài đặt gói công cụ chứa lệnh host trên các hệ điều hành Linux phổ biến như Ubuntu và CentOS.
    • Hướng dẫn truy vấn: Thành thạo các thao tác từ truy vấn tên miền cơ bản, truy vấn ngược đến việc kiểm tra các bản ghi chuyên biệt như MX, NS, SOA.
    • Xử lý lỗi phổ biến: Biết cách nhận diện nguyên nhân và khắc phục các lỗi thường gặp như “Host not found” hoặc kết quả trả về IP cũ.
    • Những lưu ý quan trọng: Nắm được các quy tắc về bộ nhớ đệm, cú pháp và thứ tự ưu tiên máy chủ DNS để đảm bảo kết quả kiểm tra chính xác.
    • Câu hỏi thường gặp: Giải đáp các câu hỏi thường gặp liên quan đến lệnh host Linux.

    Lệnh host Linux là gì?

    Host Linux là lệnh hỗ trợ tra cứu tên miền hoặc địa chỉ IP bằng cách gửi yêu cầu truy vấn đến máy chủ DNS, hoạt động bằng cách gọi các thư viện phân giải tên miền của hệ thống và trả về kết quả dưới định dạng dễ đọc. Bạn nên sử dụng lệnh host khi cần một công cụ nhanh chóng để kiểm tra xem một tên miền có đang phân giải chính xác hay không hoặc khi cần thực hiện các thao tác truy vấn ngược. Ngoài các truy vấn cơ bản, host  hỗ trợ các truy vấn nâng cao bao gồm:

    • NS (Name Server): Dùng để xác định máy chủ tên miền, chịu trách nhiệm quản lý và trả lời truy vấn DNS cho một domain cụ thể.
    • SOA (Start of Authority): Cung cấp bản ghi SOA chứa thông tin về máy chủ DNS chính, email quản trị và các tham số quản lý vùng DNS của một domain.
    • TXT (Text): Lưu trữ các chuỗi văn bản gắn với tên miền, thường dùng cho xác minh quyền sở hữu, cấu hình SPF, DKIM hoặc các thiết lập bảo mật email khác.
    • MX (Mail Exchange): Chỉ ra máy chủ email chịu trách nhiệm tiếp nhận và xử lý thư gửi đến cho tên miền đó.
    Host Linux là lệnh hỗ trợ tra cứu tên miền hoặc địa chỉ IP bằng cách gửi yêu cầu truy vấn đến máy chủ DNS
    Host Linux là lệnh hỗ trợ tra cứu tên miền hoặc địa chỉ IP bằng cách gửi yêu cầu truy vấn đến máy chủ DNS

    Các tuỳ chọn của lệnh host trên Linux

    Để khai thác tối đa sức mạnh của host, bạn có thể sử dụng các tham số đi kèm nhằm để tùy chỉnh nội dung phản hồi theo nhu cầu:

    Tham sốÝ nghĩa và cách dùng
    -a (All)Hiển thị tất cả các bản ghi DNS hiện có của tên miền.
    -t (Type)Chỉ định loại bản ghi cụ thể bạn muốn tìm kiếm.
    -W (Wait)Thiết lập thời gian chờ cho phản hồi từ máy chủ. Rất hữu ích khi mạng chậm hoặc máy chủ DNS phản hồi kém.

    Những lợi ích khi sử dụng lệnh host Linux

    Dưới đây là các lợi ích chính của lệnh host:

    • Tốc độ phản hồi nhanh chóng: Lệnh host cho phép tra cứu thông tin tên miền nhanh chóng ngay trên giao diện dòng lệnh mà không cần đến các công cụ web phức tạp.
    • Xác định sự cố mạng chính xác: Sử dụng lệnh host giúp bạn xác định nhanh vấn đề nằm DNS hay do lỗi kết nối từ phía nhà cung cấp dịch vụ Internet.
    • Xác minh cấu hình bản ghi hệ thống: Lệnh host hỗ trợ kiểm tra trực tiếp các bản ghi quan trọng như MX, NS để đảm bảo các dịch vụ trực tuyến hoạt động đúng hướng.
    • Hỗ trợ xác thực bảo mật: Bạn có thể dễ dàng truy xuất các bản ghi TXT để kiểm tra cấu hình SPF, DKIM hoặc xác minh quyền sở hữu tên miền với các dịch vụ bên thứ ba.
    • Linh hoạt trong tự động hóa: Kết quả của lệnh host trả về có định dạng rõ ràng, giúp bạn dễ dàng đưa vào các script để tự động hóa việc giám sát hệ thống.
    • Kiểm tra tính cập nhật của DNS: Lệnh host cho phép truy vấn trực tiếp các máy chủ DNS khác nhau để kiểm tra xem thay đổi cấu hình tên miền đã được cập nhật toàn cầu hay chưa.
    • Sử dụng đơn giản và phổ biến: Host không yêu cầu quyền quản trị cao và hầu như có sẵn trên mọi bản phân phối Linux, giúp việc kiểm tra trở nên thuận tiện ở bất cứ đâu.
    Những lợi ích khi sử dụng lệnh host Linux
    Những lợi ích khi sử dụng lệnh host Linux

    Cách cài đặt lệnh host Linux

    Lệnh host thuộc một gói phần mềm có sẵn trong hệ thống. Trên các bản Linux như RHEL, CentOS, Fedora, host nằm trong gói bind-utils, trên Debian và Ubuntu, host nằm trong gói dnsutils. Trong trường hợp hệ thống báo lỗi không tìm thấy lệnh, bạn có thể thực hiện cài đặt bằng các câu lệnh sau:

    Trên Debian/Ubuntu:

    sudo apt install dnsutils

    Trên CentOS/RHEL:

    sudo yum install bind-utils

    1. Truy vấn tên miền cơ bản

    Để thực hiện tìm kiếm địa chỉ IP của một tên miền cụ thể, bạn hãy sử dụng cú pháp lệnh sau:

    host <ten_mien>

    Ví dụ:

    host vietnix.vn
    Tìm kiếm địa chỉ IP của một tên miền cụ thể
    Tìm kiếm địa chỉ IP của một tên miền cụ thể

    Lệnh này sẽ truy vấn máy chủ DNS mặc định của hệ thống và hiển thị địa chỉ IP tương ứng. Kết quả trả về bao gồm tên miền, loại bản ghi (A) và địa chỉ IP.

    2. Truy vấn ngược

    Để thực hiện phân giải một địa chỉ IP thành tên miền, bạn hãy sử dụng lệnh dưới đây:

    host <dia_chi_IP>

    Ví dụ:

    host 8.8.8.8
    Phân giải một địa chỉ IP thành tên miền
    Phân giải một địa chỉ IP thành tên miền

    Lệnh này giúp tìm tên miền gắn liền với địa chỉ IP đã cho. Đây là bước quan trọng khi bạn cần kiểm tra máy chủ email để tránh bị liệt vào danh sách thư rác.

    3. Truy vấn một loại bản ghi DNS cụ thể

    Tùy chọn -t trong câu lệnh sẽ cho phép bạn chỉ định loại bản ghi cần truy vấn như MX, NS hoặc SOA. Để tìm kiếm các loại bản ghi DNS chuyên biệt ngoài bản ghi A mặc định, bạn hãy thực hiện lệnh theo cấu trúc sau:

    host -t <loai_ban_ghi> <ten_mien_can_tra_cuu>

    Ví dụ:

    host -t MX vietnix.vn
    Truy vấn bản ghi MX
    Truy vấn bản ghi MX

    Ví dụ khác:

    Bạn thực hiện lệnh sau để truy vấn bản ghi NS:

    host -t NS vietnix.vn
    Truy vấn bản ghi NS
    Truy vấn bản ghi NS

    Bạn thực hiện lệnh sau để truy vấn bản ghi SOA:

    host -t SOA vietnix.vn
    truy vấn bản ghi SOA
    Truy vấn bản ghi SOA

    4. Chỉ định máy chủ DNS để truy vấn

    Để gửi truy vấn trực tiếp đến một máy chủ DNS cụ thể và bỏ qua cấu hình mặc định của hệ thống, bạn hãy sử dụng lệnh:

    host <ten_mien_can_tra_cuu> <dia_chi_IP_cua_DNS_Server>

    Ví dụ:

    host vietnix.vn 1.1.1.1
    Chỉ định máy chủ DNS để truy vấn
    Chỉ định máy chủ DNS để truy vấn

    Bạn hãy thêm địa chỉ IP của máy chủ DNS muốn sử dụng vào sau tên miền để kiểm tra xem bản ghi mới đã được cập nhật trên một DNS Server cụ thể hay chưa.

    5. Xem thông tin chi tiết 

    Để hiển thị đầy đủ các bước truy vấn và các thông số kỹ thuật phục vụ việc gỡ lỗi, bạn hãy sử dụng lệnh sau:

    host -v <ten_mien_hoac_dia_chi_IP>

    Ví dụ:

    host -v vietnix.vn
    Xem thông tin chi tiết về các bước truy vấn
    Xem thông tin chi tiết về các bước truy vấn

    Trong đó, tùy chọn -v (verbose) sẽ cung cấp thông tin chi tiết hơn về toàn bộ quá trình truy vấn DNS của hệ thống.

    Cách xử lý lỗi phổ biến khi chạy lệnh host Linux

    Tên lỗiNguyên nhân phổ biếnGiải pháp khắc phục
    Host not found (NXDOMAIN)Sai chính tả hoặc tên miền chưa được đăng ký/đã bị xóa.1. Kiểm tra kỹ ký tự tên miền.
    2. Thử truy vấn qua DNS của Google: host [tên_miền] 8.8.8.8
    command not foundCông cụ host chưa được cài đặt.Cài đặt bổ sung gói công cụ mạng tương ứng với bản phân phối Linux bạn đang dùng.
    Kết quả sai/IP cũMáy chủ DNS nội bộ hoặc DNS của ISP đang lưu lại bản ghi cũ.Ép hệ thống truy vấn trực tiếp từ các DNS trung gian uy tín để lấy kết quả mới nhất: host [tên_miền] 1.1.1.1 (Cloudflare).

    Theo kinh nghiệm của mình, lỗi mà nhiều người gặp nhất không phải “Host not found” hay “command not found” mà chính là trường hợp kết quả trả về IP cũ. Lý do là vì lỗi này không báo đỏ, không hiện cảnh báo gì cả, nên người dùng rất dễ tin rằng hệ thống đang hoạt động bình thường trong khi thực tế bản ghi DNS đã được thay đổi từ lâu.
    Nhiều người mất gần nửa ngày để debug một sự cố website không trỏ đúng máy chủ mới, cuối cùng mới phát hiện ra nguyên nhân đơn giản chỉ là DNS cache của ISP chưa cập nhật. Do đó, mỗi khi thay đổi bản ghi DNS, mình luôn tạo thói quen truy vấn song song qua ít nhất 2–3 máy chủ DNS công cộng khác nhau như 8.8.8.8, 1.1.1.1 và 9.9.9.9 để đối chiếu kết quả trước khi kết luận.

    Những lưu ý khi sử dụng lệnh host

    Để sử dụng lệnh host hiệu quả, bạn cần lưu ý những điểm quan trọng sau:

    • Phân biệt chữ hoa và chữ thường: Các tùy chọn trong dòng lệnh Linux yêu cầu đúng định dạng chữ hoa, chữ thường nên việc viết sai kiểu chữ có thể khiến tham số không hoạt động như mong muốn.
    • Độ trễ do bộ nhớ đệm: Kết quả từ host có thể không hiển thị những thay đổi mới nhất nếu máy chủ DNS bạn đang dùng chưa cập nhật cache. Bạn hãy thử trỏ trực tiếp đến DNS của Google (8.8.8.8) để lấy kết quả mới nhất.
    • Sự khác biệt giữa các bản phân phối: Mặc dù lệnh host rất phổ biến nhưng một số hệ thống tối giản có thể không được cài đặt sẵn và bạn cần cài gói bind9-host hoặc dnsutils để sử dụng.
    • Thứ tự ưu tiên của máy chủ DNS: Nếu bạn không chỉ định một máy chủ DNS cụ thể trong câu lệnh, host sẽ sử dụng danh sách máy chủ được cấu hình trong file /etc/resolv.conf.
    • Dấu chấm cuối tên miền: Trong một số trường hợp truy vấn chuyên sâu, việc thêm một dấu chấm vào sau tên miền sẽ giúp lệnh hiểu đây là tên miền tuyệt đối và tránh tìm kiếm bổ sung trong domain nội bộ.
    • Kết quả trả về khác nhau theo loại bản ghi: Một tên miền có thể trỏ về nhiều địa chỉ IP khác nhau nên nếu chỉ dùng lệnh cơ bản, bạn có thể bỏ qua các bản ghi AAAA  nếu không kiểm tra kỹ.
    • Giới hạn về thông tin ẩn: Lệnh host chỉ truy xuất được các thông tin được công khai trên hệ thống DNS và không thể hiển thị các bản ghi bị ẩn bởi tường lửa hoặc cấu hình bảo mật riêng của máy chủ tên miền.
    Bạn cần lưu ý kỹ về thứ tự ưu tiên của máy chủ DNS
    Bạn cần lưu ý kỹ về thứ tự ưu tiên của máy chủ DNS (Nguồn: Internet)

    Câu hỏi thường gặp

    Sự khác biệt chính giữa lệnh host và lệnh dig là gì?

    Lệnh host được thiết kế để đưa ra kết quả ngắn gọn, dễ đọc và tập trung vào các thông tin phân giải cơ bản. Trong khi đó, lệnh dig cung cấp thông tin chi tiết hơn về cấu trúc của gói tin DNS, bao gồm cả các phần như Header, Authority và Additional, thường được dùng cho các tác vụ gỡ lỗi chuyên sâu.

    Làm thế nào để xem tất cả các bản ghi DNS của một tên miền cùng lúc?

    Nếu muốn liệt kê toàn bộ các loại bản ghi DNS hiện có trong một lần truy vấn duy nhất, bạn hãy sử dụng tùy chọn -a. Ví dụ: host -a vietnix.vn

    Có thể chỉ định thời gian chờ cho lệnh host không?

    Trong trường hợp mạng chậm hoặc máy chủ DNS phản hồi lâu, bạn có thể điều chỉnh thời gian chờ bằng tùy chọn -W. Để thiết lập thời gian chờ là 5 giây cho một truy vấn, bạn hãy sử dụng lệnh sau:
    host -W 5 vietnix.vn

    Lệnh host có hỗ trợ kiểm tra địa chỉ IPv6 không?

    Lệnh host hoàn toàn hỗ trợ truy vấn các địa chỉ IPv6 thông qua bản ghi loại AAAA. Để tìm kiếm địa chỉ IPv6 của một tên miền, bạn hãy thực hiện câu lệnh dưới đây:
    host -t AAAA google.com

    Tại sao lệnh host lại trả về thông báo “connection timed out”?

    Thông báo “connection timed out” xuất hiện khi máy chủ DNS không phản hồi yêu cầu trong khoảng thời gian nhất định. Nguyên nhân có thể do kết nối mạng của bạn bị gián đoạn, máy chủ DNS đang bảo trì hoặc tường lửa đang chặn cổng 53 – cổng giao tiếp mặc định của dịch vụ DNS. 

    Lệnh host là công cụ truy vấn DNS cơ bản, đơn giản và nhanh chóng trên Linux, phù hợp cho các tác vụ kiểm tra tên miền hàng ngày. Việc sử dụng linh hoạt các tùy chọn như -t để chỉ định loại bản ghi hoặc trỏ trực tiếp đến máy chủ DNS cụ thể sẽ giúp bạn chẩn đoán nhanh chóng và hiệu quả các vấn đề mạng liên quan đến DNS.

    5/5 - (1 bình chọn)
    Nguyễn Hưng
    Tôi là Nguyễn Hưng hay còn được biết đến với nickname là Bo, chuyên gia về hệ thống, mạng và bảo mật. Tôi là Co-Founder của Vietnix và Co-Founder của dự án Chống Lừa Đảo.
    0 0 đánh giá
    Đánh giá bài viết
    Theo dõi
    Thông báo của
    guest
    0 Góp ý
    Cũ nhất
    Mới nhất Được bỏ phiếu nhiều nhất
    Phản hồi nội tuyến
    Xem tất cả bình luận

    BÀI VIẾT LIÊN QUAN

    Cách dùng lệnh systemctl trong Linux để quản lý dịch vụ hệ thống chuyên nghiệp
    Cách dùng lệnh systemctl trong Linux để quản lý dịch vụ hệ thống chuyên nghiệp

    systemctl là công cụ dòng lệnh dùng để quản lý dịch vụ systemd trên Linux, cho phép start/stop/restart, bật/tắt autostart và kiểm tra trạng thái service. Trong bài viết này, mình sẽ giúp bạn hiểu rõ cơ chế hoạt động của systemd, sử dụng thành thạo lệnh systemctl và áp dụng hiệu quả vào các…

    02/04/2026

    Cách dùng lệnh netcat để đọc và ghi dữ liệu qua các kết nối mạng chi tiết
    Cách dùng lệnh netcat để đọc và ghi dữ liệu qua các kết nối mạng chi tiết

    netcat là một tiện ích dòng lệnh được sử dụng để đọc và ghi dữ liệu qua kết nối mạng bằng giao thức TCP hoặc UDP, hoạt động được như cả client lẫn server. Trong bài viết dưới đây, mình sẽ cùng bạn tìm hiểu chi tiết các tính năng, cú pháp lệnh và cách…

    02/04/2026

    Cách dùng lệnh tshark trên Linux để bắt và phân tích gói tin mạng bằng dòng lệnh
    Cách dùng lệnh tshark trên Linux để bắt và phân tích gói tin mạng bằng dòng lệnh

    Lệnh tshark Linux là phiên bản chạy trên dòng lệnh (CLI) của Wireshark, dùng để bắt và phân tích gói tin mạng trực tiếp trong terminal trên Linux và các hệ điều hành khác. Trong bài viết này, mình sẽ hướng dẫn bạn cách sử dụng lệnh tshark trên Linux để bắt và phân tích…

    02/04/2026

    Cách sử dụng lệnh traceroute Linux để theo dõi đường đi của gói tin mạng và xác định sự cố
    Cách sử dụng lệnh traceroute Linux để theo dõi đường đi của gói tin mạng và xác định sự cố

    traceroute là lệnh phân tích mạng quan trọng trên hệ điều hành Linux, được sử dụng để theo dõi lộ trình mà một gói tin IP di chuyển từ máy tính của bạn đến một máy chủ đích trên mạng. Trong bài viết này, mình sẽ hướng dẫn bạn cách sử dụng lệnh traceroute để…

    02/04/2026

    linux

    lenh

    text