Lệnh nslookup trong Linux được dùng để thực hiện truy vấn DNS để tìm tên miền, địa chỉ IP tương ứng hoặc các bản ghi DNS cụ thể khác và hỗ trợ khắc phục các sự cố liên quan đến DNS. Để hiểu rõ hơn về cách hoạt động và sử dụng lệnh này, bạn hãy tham khảo các ví dụ thực tế dưới đây.
Những điểm chính
- Nắm rõ định nghĩa và chức năng của lệnh nslookup: Bạn sẽ hiểu rõ định nghĩa cơ bản về lệnh nslookup, cách thức hoạt động và vai trò quan trọng của lệnh trong việc truy vấn DNS.
- Nắm được cú pháp của lệnh nslookup ở 2 chế độ (tương tác và không tương tác): Bạn sẽ nắm được cấu trúc câu lệnh để sử dụng đúng và hiệu quả.
- Khám phá các tùy chọn của nslookup: Bạn sẽ dễ dàng tùy chỉnh và khai thác tối đa khả năng của lệnh.
- Hiểu được cách cài đặt lệnh nslookup: Bạn sẽ được hướng dẫn chi tiết cách cài đặt nslookup trên Linux để sử dụng.
- Nắm vững các ví dụ thực tế về lệnh nslookup: Bạn sẽ được cung cấp các ví dụ trực quan để dễ dàng hiểu và áp dụng lệnh trong các trường hợp cụ thể.
- Vietnix – Dịch vụ VPS AMD hiệu suất vượt trội.
Lệnh nslookup trong Linux là gì?
Lệnh nslookup
là một công cụ dễ sử dụng, cho phép truy vấn các máy chủ tên miền trên internet một cách tương tác. Lệnh này hoạt động ở hai chế độ: tương tác (interactive) và không tương tác (non-interactive).
Chế độ tương tác cho phép người dùng hiển thị danh sách các host trong một domain hoặc truy vấn các máy chủ tên miền để lấy thông tin về nhiều host và domain khác nhau. Trong khi đó, chế độ không tương tác được sử dụng để hiển thị tên và thông tin yêu cầu cho một host hoặc một domain.
Cú pháp của lệnh nslookup
Lệnh nslookup
là một công cụ đơn giản và dễ sử dụng, cho phép bạn tra cứu thông tin trên máy chủ DNS theo 2 chế độ: Tương tác và không tương tác.
Chế độ tương tác
Chế độ này cung cấp một giao diện tương tác để bạn có thể xem danh sách các host trong một miền hoặc tra cứu thông tin về các host và miền khác nhau từ máy chủ DNS.
Cú pháp cho chế độ tương tác:
nslookup [OPTION]... [Name | -] [Server]
Trong đó:
- [OPTION]…: Các tùy chọn để thay đổi cách hoạt động của lệnh
nslookup
. - [Name | -]: Tên miền bạn muốn tra cứu.
- [Server]: Máy chủ DNS bạn muốn sử dụng cho truy vấn.
Chế độ không tương tác
Chế độ này được sử dụng để hiển thị tên và thông tin về một host hoặc một miền cụ thể mà bạn yêu cầu.
Cú pháp cho chế độ không tương tác:
nslookup [OPTION]... Domain_Name
Trong đó:
- [OPTION]…: Các tùy chọn để thay đổi cách hoạt động của lệnh
nslookup
. - <Domain_Name>: Tên miền hoặc địa chỉ IP của máy chủ tên miền mà bạn muốn truy vấn. Nếu bạn không chỉ định máy chủ, lệnh nslookup sẽ sử dụng DNS được cấu hình sẵn trên máy.
Lưu ý
Những phần được đặt trong dấu ngoặc vuông là không bắt buộc. Dấu ba chấm sau OPTION cho biết bạn có thể sử dụng nhiều tùy chọn cùng lúc.
Các tùy chọn của lệnh nslookup
Lệnh nslookup
có thể sử dụng các tùy chọn khác nhau khi ở chế độ tương tác và không tương tác. Nếu không có tùy chọn cụ thể nào được cung cấp, nslookup sẽ mặc định chạy ở chế độ tương tác. Dưới đây là một số tùy chọn thường dùng trong lệnh này.
Tùy chọn ở chế độ tương tác
Tùy chọn | Mô tả |
---|---|
host [server] | Tìm thông tin của máy chủ (host) bằng máy chủ mặc định hoặc máy chủ được chỉ định. |
server domain | Tìm thông tin về domain bằng máy chủ mặc định. |
Iserver domain | Tìm thông tin về domain bằng máy chủ ban đầu. |
set keyword [=value] | Thay đổi thông tin trạng thái ảnh hưởng đến quá trình tìm kiếm (=all, để hiển thị giá trị hiện tại của các tùy chọn thường dùng để cài đặt). |
domain=name | Đặt tên cho danh sách tìm kiếm. |
class=value | Thay đổi lớp truy vấn thành các giá trị như IN, CH, HS, ANY. Mặc định là IN. |
port=value | Thay đổi port mặc định của máy chủ tên miền TCP/UDP. Mặc định là 53. |
type=value | Loại bản ghi DNS cần tra cứu (ví dụ: a, any, cname, mx, ns, ptr, soa, txt). Mặc định là a. |
retry=number | Đặt số lần thử lại. |
timeout=number | Đặt thời gian chờ phản hồi (tính bằng giây). |
[no]debug | Bật/tắt hiển thị gói phản hồi đầy đủ và trung gian. Mặc định là nobug. |
[no]d2 | Bật/tắt chế độ gỡ lỗi. |
[no]recurse | Yêu cầu máy chủ DNS truy vấn các máy chủ khác nếu máy chủ đó không có thông tin. |
[no]fail | Thử máy chủ DNS tiếp theo nếu máy chủ hiện tại trả về SERVFAIL. Mặc định là nofail. |
exit | Thoát chương trình. |
Tùy chọn ở chế độ không tương tác
Tùy chọn | Mô tả |
---|---|
-domain=[domain-name] | Thay đổi tên miền DNS mặc định. |
-debug | Hiển thị thông tin gỡ lỗi. |
-port=[port-number] | Thay đổi cổng tiêu chuẩn. |
-timeout=[seconds] | Thiết lập thời gian chờ phản hồi từ máy chủ DNS (tính bằng giây). |
-type=a | Hiển thị tất cả thông tin về bản ghi A (Address). |
-type=any | Hiển thị tất cả các loại bản ghi DNS có sẵn cho tên miền. |
-type=hinfo | Hiển thị thông tin bản ghi HINFO (Host Information), cung cấp thông tin về phần cứng của máy chủ. |
-tpe=ns | Hiển thị thông tin bản ghi NS (Name Server), liệt kê các máy chủ tên miền chính thức cho miền. |
-type=mx | Hiển thị thông tin bản ghi MX (Mail Exchange). |
-type=ptr | Hiển thị bản ghi PTR (Pointer). |
-type=soa | Hiển thị bản ghi SOA (Start of Authority), chứa thông tin quản trị về tên miền. |
Lưu ý
- Tùy chọn type chỉ định loại bản ghi DNS cần tra cứu. Nếu không chỉ định, lệnh nslookup sẽ mặc định tra cứu bản ghi A.
- Để tìm hiểu thêm về các tùy chọn của lệnh nslookup, bạn có thể sử dụng lệnh man nslookup.
Một số loại bản ghi DNS phổ biến
Loại bản ghi | Mô tả |
---|---|
A (Address) | Bản ghi địa chỉ, một trong những bản ghi cơ bản và được dùng phổ biến nhất, dùng để ánh xạ hostname với địa chỉ IP trực tiếp. Chúng dịch tên miền và lưu trữ dưới dạng bản ghi địa chỉ IP, chỉ có thể chứa địa chỉ IPv4. |
MX (Mail Exchange) | Viết tắt của Mail Exchange. Bản ghi này ánh xạ các tác nhân chuyển thư cho domain, đồng thời lưu trữ các chỉ dẫn để định tuyến email đến máy chủ mail. |
SIG (Signature) | SIG (SIGnature record) dùng để mã hóa. |
TXT (Text) | Bản ghi TeXT dùng để lưu trữ văn bản. |
CNAME (Canonical Name) | (Canonical NAME), bản ghi này được dùng thay cho bản ghi A nếu một domain là alias (bí danh) cho một domain khác. |
SOA (Start of Authority) | (Start Of Authority) chứa thông tin quan trọng về domain hoặc zone. |
NS (Name Server) | (Name Server), chứa các name server có thẩm quyền. |
Hướng dẫn cài đặt lệnh nslookup trên Linux
Hầu hết các phiên bản Linux hiện nay đều đã cài đặt sẵn lệnh nslookup
và bạn có thể kiểm tra bằng cách chạy lệnh sau trong terminal:
nslookup
Nếu nslookup đã được cài đặt, bạn sẽ thấy thông báo tương tự như sau cho biết lệnh đang ở chế độ tương tác. Để thoát chế độ tương tác, bạn nhập exit.
Nếu lệnh nslookup
chưa được cài đặt, bạn có thể cài đặt dễ dàng theo 3 bước sau:
Bước 1: Mở ứng dụng Terminal trên Ubuntu.
Bước 2: Nhập lệnh sau và nhấn Enter:
sudo apt install dnsutils
Bước 3: Nhập mật khẩu của bạn khi được yêu cầu và nhấn Enter để tiếp tục quá trình cài đặt.
Sau khi hoàn thành 3 bước trên, lệnh nslookup
sẽ được cài đặt trên hệ thống để bắt đầu sử dụng..
Ví dụ thực tế về cách sử dụng lệnh nslookup trên Linux
Gần đây, các quản trị viên mạng thường ưu tiên dùng lệnh dig hơn vì dig cung cấp nhiều thông tin hơn. Một lý do khác là lệnh dig dùng thư viện phân giải Hệ Thống Tên Miền (DNS) cục bộ của hệ điều hành để thực hiện truy vấn, còn lệnh nslookup
lại dùng thư viện nội bộ. Dù vậy, lệnh nslookup
vẫn là một công cụ được sử dụng phổ biến. Lệnh này hoạt động ở hai chế độ khác nhau. Sau đây, mình sẽ giải thích cách nslookup hoạt động ở cả hai chế độ thông qua một vài ví dụ thực tế.
Chế độ tương tác
Chế độ này cho phép truy vấn thông tin về máy chủ, tên miền và hiển thị danh sách máy chủ trong một miền. Có hai cách để vào chế độ tương tác:
- Nhập lệnh nslookup không có đối số để sử dụng máy chủ DNS mặc định.
- Nhập lệnh nslookup – [hostname hoặc địa chỉ IP] để chỉ định máy chủ DNS.
Sau khi nhập lệnh nslookup
và nhấn Enter, bạn sẽ thấy dấu nhắc >.
Trường hợp 1: Truy vấn DNS cho một website
Hãy nhập tên trang web bất kỳ mà bạn muốn truy vấn. Ở đây mình nhập google.com và nhấn phím ENTER. Bạn sẽ thấy kết quả hiển thị tương tự như hình dưới.
Nhìn vào kết quả của mình, 127.0.0.53 là địa chỉ của Máy Chủ Tên Miền của hệ thống mình. Hệ thống mình được thiết lập để sử dụng máy chủ này nhằm chuyển đổi tên miền thành địa chỉ IP. #53 chỉ số cổng mà máy chủ này giao tiếp thông qua, đây cũng là số cổng tiêu chuẩn mà máy chủ tên miền sử dụng để chấp nhận các truy vấn.
Tiếp theo, mình có thông tin tìm kiếm của google.com, bao gồm hai địa chỉ 142.250.197.174 và 2404:6800:4005:804::200e. Điều này cho thấy rằng, khi bạn truy cập google.com, bạn có thể được chuyển đến một trong hai máy chủ này và các gói tin của bạn sẽ được định tuyến đến đúng đích.
Trường hợp 2: Xem giá trị hiện tại của các tùy chọn thường dùng
Nếu bạn nhập từ khóa all như hình bên dưới và nhấn phím ENTER, bạn sẽ thấy danh sách tất cả các giá trị hiện tại của các tùy chọn thường dùng. Trong kết quả của mình, bạn thấy giá trị mặc định của các tùy chọn, ví dụ: số cổng là 53, kiểu truy vấn mặc định là bản ghi A, số lần thử lại là 3 nếu máy chủ gặp lỗi,…
Trường hợp 3: Xem các loại bản ghi DNS khác nhau
Bạn sử dụng tùy chọn set type=[loại bản ghi] (ví dụ: ns, mx, soa) để truy vấn loại bản ghi cụ thể. Ví dụ, set type=ns rồi nhập youtube.com để xem bản ghi NS của YouTube. Kết quả có 2 loại trả lời: Authoritative và non-authoritative.
- Authoritative Answer: Câu trả lời từ máy chủ DNS chứa toàn bộ thông tin về miền (zone file). Đây là nguồn thông tin chính xác và đáng tin cậy nhất.
- Non-authoritative Answer: Câu trả lời từ máy chủ DNS không lưu trữ toàn bộ thông tin về miền, mà chỉ lưu trữ kết quả các truy vấn trước đó (trong bộ nhớ đệm – cache). Khi nhận được truy vấn, máy chủ DNS sẽ tìm trong cache và trả về kết quả. Loại trả lời này nhanh hơn nhưng có thể không phải là thông tin mới nhất.
Trường hợp 4: Thực hiện tra cứu DNS ngược (Reverse DNS Lookup)
Ngoài ra, bạn có thể thực hiện tra cứu DNS ngược bằng cách nhập địa chỉ IP thay vì tên miền. Ở ví dụ bên dưới, mình đã nhập địa chỉ IP của Google và nhận được tên miền tương ứng trong kết quả trả về.
Khi bạn đã hoàn tất tìm kiếm với lệnh nslookup
và muốn thoát khỏi chế độ tương tác, hãy nhập exit và nhấn ENTER. Lúc này bạn sẽ thoát khỏi chương trình.
Chế độ không tương tác
Chế độ này bắt đầu bằng cách cung cấp tên miền hoặc địa chỉ IP làm tham số đầu tiên, theo sau bởi các tùy chọn (nếu có). Một tham số thứ hai tùy chọn có thể được dùng để chỉ định một máy chủ tên cụ thể thay vì máy chủ DNS mặc định của hệ thống. Tiếp theo, mình sẽ cho các bạn thấy một vài ví dụ về cách lệnh nslookup
hoạt động ở chế độ không tương tác.
Ví dụ 1: Tìm địa chỉ IP của tên miền
Bạn có thể truy vấn DNS để lấy địa chỉ IP của bất kỳ tên miền nào bằng lệnh nslookup
. Nếu bạn không chỉ định loại bản ghi, máy tính sẽ mặc định hiển thị bản ghi loại A. A (viết tắt của Address) là loại bản ghi DNS phổ biến và hữu ích nhất. Loại bản ghi này chỉ lưu địa chỉ IPv4. Bạn có thể đặt giá trị của tùy chọn type là A, hoặc chỉ cần nhập tên miền sau lệnh nslookup
để tìm bản ghi loại A. Cú pháp là:
nslookup domain_name
Gồm 2 bước thực hiện:
Bước 1: Mở Terminal Ubuntu.
Bước 2: Nhập lệnh sau và nhấn Enter để tìm bản ghi A của google.com:
nslookup google.com
Ví dụ 2: Xem bản ghi NS
Bản ghi NS (Name Server) chứa danh sách các máy chủ DNS chịu trách nhiệm quản lý cho một tên miền cụ thể. Một website thường có nhiều bản ghi NS để đảm bảo tính an toàn. Cú pháp như sau:
nslookup -type=value Domain_name
Gồm 2 bước thực hiện:
Bước 1: Mở Terminal Ubuntu.
Bước 2: Nhập lệnh sau và nhấn Enter để tìm bản ghi NS của google.com:
nslookup -type=ns google.com
Kết quả: Sau khi chạy lệnh, bạn sẽ thấy danh sách các bản ghi NS trên màn hình đầu ra của tên miền google.com mà lệnh trả về, tương tự như hình dưới. Website thường lưu nhiều hơn một bản ghi máy chủ tên để đảm bảo an toàn.
Ví dụ 3: Xem bản ghi MX bằng lệnh nslookup trên Linux
Bản ghi MX (Mail eXchange) xác định mail server chịu trách nhiệm nhận email cho một tên miền. Mỗi bản ghi MX gồm một giá trị ưu tiên và một tên máy chủ. Tên máy chủ này phải có bản ghi A (Address) hợp lệ. Một tên miền có thể có nhiều bản ghi MX, mỗi bản ghi có giá trị ưu tiên khác nhau. Cú pháp là:
nslookup -type=value Domain_name
Bao gồm 2 bước thực hiện:
Bước 1: Mở Terminal Ubuntu.
Bước 2: Nhập lệnh sau và nhấn Enter để xem bản ghi MX của gmail.com:
nslookup -type=mx gmail.com
Kết quả: Từ kết quả đầu ra, bạn sẽ thấy các bản ghi MX của tên miền gmail.com. Khi bạn gửi email đến tên miền này, email sẽ được định tuyến đến máy chủ MX của Google. Cũng như trong kết quả, địa chỉ trao đổi thư có kèm một giá trị ưu tiên và có năm địa chỉ được liệt kê, mỗi địa chỉ có giá trị khác nhau. Đó là giá trị ưu tiên.
Khi email được gửi đến một địa chỉ trong tên miền, máy chủ email của người nhận sẽ thực hiện tra cứu DNS để xác định bản ghi MX của tên miền đó, rồi dùng giá trị ưu tiên để chọn máy chủ email tốt nhất để gửi thư. Số càng thấp, mức độ ưu tiên càng cao. Trong danh sách, bạn có thể thấy số 5 là thấp nhất, do đó, đây là máy chủ email tốt nhất để gửi tin.
Ví dụ 4: Xem bản ghi SOA bằng lệnh nslookup trên Linux
Bản ghi SOA (Start Of Authority) chứa thông tin kỹ thuật quan trọng về một tên miền hoặc zone. Bản ghi này chỉ định máy chủ tên chính cho tên miền đó và địa chỉ email của người chịu trách nhiệm quản lý tên miền. Nó cũng chứa thông tin về thời gian làm mới (refresh time), thời gian thử lại (retry time) và thời gian hết hạn (expiration time) của tên miền.
Các bản ghi SOA thường là bản ghi đầu tiên trong một file zone DNS và dùng để xác định sự khởi đầu của không gian tên DNS. Để xem danh sách các bản ghi SOA, bạn có thể sử dụng lệnh nslookup
với tùy chọn -type
và giá trị là soa
. Cú pháp là:
nslookup -type=value Domain_name
Gồm 2 bước thực hiện:
Bước 1: Mở Terminal Ubuntu.
Bước 2: Nhập lệnh sau và nhấn Enter để xem bản ghi SOA của redhat.com:
nslookup -type=soa redhat.com
Giải thích các thông tin trong output:
- Origin: Cho biết thông tin có nguồn gốc từ đâu.
- Mail addr: Địa chỉ email của người quản trị tên miền. Dấu chấm (.) đầu tiên thay cho ký tự @, vì vậy, ở đây, địa chỉ email là hostmaster.nsone.net.
- Serial: Số serial có dạng YYYYMMDDNN (ví dụ: 1684376201), đây là thông tin về bản sửa đổi. Thông tin có hiệu lực kể từ năm 1684.
- Refresh: Đây là thời gian tính bằng giây, máy chủ tên thứ cấp kiểm tra máy chủ tên chính để xem có bản cập nhật nào về thông tin hay không. Số 200 cho thấy thông tin của máy chủ tên thứ cấp của redhat không quá 200 giây kể từ bản cập nhật gần nhất.
- Retry: Đây là khoảng thời gian tính bằng giây, máy chủ tên thứ cấp chờ trước khi thử kết nối lại với máy chủ tên chính sau khi thất bại.
- Expire: Đây là khoảng thời gian tính bằng giây sau khi bộ nhớ cache thông tin của máy chủ tên thứ cấp về máy chủ tên chính bị coi là không hợp lệ.
- Minimum: Thời gian tối thiểu, máy chủ tên thứ cấp phải có kể từ lần làm mới gần nhất trước khi làm mới bộ nhớ cache thông tin của máy chủ tên chính.
Ví dụ 5: Xem bản ghi TXT bằng lệnh nslookup
Bản ghi TXT (Text) được dùng để lưu trữ thông tin dưới dạng văn bản thuần túy. Thông thường, các bản ghi này được sử dụng kết hợp với các loại bản ghi khác để cung cấp thêm thông tin không phù hợp với định dạng của những bản ghi khác.
Thông tin này có thể là thông tin dạng người đọc được về một host, server, hoặc domain, các bản ghi SPF (Sender Policy Framework), và các dữ liệu khác như khóa bảo mật và chữ ký. Bản ghi TXT có thể chứa bất kỳ thông tin nào ở định dạng văn bản. Bạn có thể xem danh sách các bản ghi TXT bằng lệnh nslookup
với cú pháp sau:
nslookup -type=value Domain_name
Bạn thực hiện theo 2 bước:
Bước 1: Mở Terminal Ubuntu.
Bước 2: Nhập lệnh sau và nhấn Enter để xem bản ghi TXT của google.com:
nslookup -type=txt google.com
Kết quả: Như bạn thấy ở hình kết quả, danh sách tất cả các bản ghi TXT của domain google.com được hiển thị.
Ví dụ 6: Kiểm tra bản ghi PTR bằng lệnh nslookup trên Linux
Bản ghi PTR (Pointer Record) cung cấp tên miền tương ứng với một địa chỉ IP. Bản ghi này ngược lại với bản ghi A và được dùng trong tra cứu DNS ngược. Các bản ghi PTR được lưu trữ dưới dạng địa chỉ IP đảo ngược, thường trong tên miền .in-addr.arpa cho IPv4 và ip6.arpa cho IPv6.
Ví dụ: Bản ghi PTR cho địa chỉ IPv4 118.162.240.54 sẽ được lưu trong 54.240.162.118.in-addr.arpa.
Cú pháp là:
nslookup -type=value IP_Address
Thực hiện 2 bước như sau:
Bước 1: Mở Terminal Ubuntu.
Bước 2: Nhập lệnh sau và nhấn Enter để xem bản ghi PTR của địa chỉ IP 118.162.240.54:
nslookup -type=ptr 118.162.240.54
Kết quả: Hiển thị bản ghi PTR của địa chỉ IP 118.162.240.54, được lưu trữ ở dạng đảo ngược với phần mở rộng (54.240.162.118.in-addr.arpa) và tên máy chủ tương ứng với địa chỉ IP đó.
Ví dụ 7: Xem tất cả bản ghi bằng lệnh nslookup trên Linux
Bạn có thể hiển thị tất cả kết quả trả về cho máy chủ được truy vấn bằng cách sử dụng lệnh nslookup
kết hợp với tùy chọn type
và giá trị any
. Lệnh này sẽ hiển thị tất cả các loại bản ghi có sẵn cho tên miền được chỉ định. Cú pháp là:
nslookup -type=value Domain_name
Bao gồm 2 bước thực hiện:
Bước 1: Mở Terminal Ubuntu.
Bước 2: Nhập lệnh sau và nhấn Enter để xem tất cả bản ghi của google.com (bao gồm bản ghi TXT, NS, SOA,..):
nslookup -type=any google.com
Kết quả: Sau khi chạy lệnh, bạn sẽ thấy một danh sách dài tất cả các loại bản ghi của domain google.com được hiển thị từng loại một như trong hình. Bạn có thể thấy các bản ghi TXT đầu tiên, sau đó là bản ghi NS, và sau đó là các bản ghi SOA.
Ví dụ 8: Thực hiện tra cứu DNS ngược bằng lệnh nslookup (Reverse DNS Lookup)
Ở hầu hết các ví dụ trước, mình đã tìm địa chỉ IP liên kết với một tên miền bằng cách gõ tên miền sau lệnh nslookup
. Bây giờ, nếu bạn muốn thực hiện tra cứu DNS ngược, tức là tìm tên miền dựa vào địa chỉ IP, tương tự như mình đã làm ở Ví dụ 6, bạn chỉ cần gõ địa chỉ IP muốn tìm sau lệnh nslookup
. Cú pháp như sau:
nslookup IP address
Gồm 2 bước thực hiện:
Bước 1: Mở Terminal Ubuntu.
Bước 2: Nhập lệnh sau và nhấn Enter:
nslookup 198.35.26.96
Kết quả: Sau khi mình chạy lệnh nslookup
với địa chỉ IP 198.35.26.96, lệnh này đã trả về tên máy chủ (hostname) liên quan đến địa chỉ IP đó. Như bạn thấy, tên Wikimedia xuất hiện trong kết quả, có nghĩa là địa chỉ IP đó thuộc về máy chủ này.
Ví dụ 9: Xem thông tin của Name Server cụ thể
Lệnh nslookup
mặc định truy vấn máy chủ DNS được hệ thống cấu hình. Bạn có thể chỉ định máy chủ DNS tùy chỉnh bằng cách viết tên miền và name server sau lệnh nslookup
. Cú pháp là:
nslookup domain_name name_server
Bạn thực hiện gồm 2 bước:
Bước 1: Mở Terminal Ubuntu.
Bước 2: Nhập lệnh sau và nhấn Enter để sử dụng name server DNS ns1.google.com:
nslookup google.com ns1.google.com
Kết quả: Bạn thấy lệnh đang dùng máy chủ tên ns1.google.com mà không dùng DNS mặc định như các ví dụ trước. Nếu để ý, bạn cũng sẽ thấy không có header non-authoritative answer. Nguyên nhân là vì máy chủ tên ns1.google.com chứa toàn bộ thông tin về vùng của tên miền google.com.
Ví dụ 10: Truy vấn port không chuẩn (Non-Standard port)
Khi chạy lệnh nslookup
để kiểm tra bản ghi DNS cho một tên miền, các máy chủ tên miền mặc định sẽ chấp nhận truy vấn trên cổng số 53. Ở phần chế độ tương tác, mình đã dùng từ khóa set với giá trị all để xem tất cả các tùy chọn hiện đang sử dụng và giá trị mặc định.
Lúc đó, cổng mặc định là 53, đây là cổng chuẩn mà DNS chấp nhận truy vấn. Nếu muốn thay đổi số cổng, bạn có thể dùng tùy chọn -port
và sau đó chỉ định số cổng mới. Cú pháp là:
nslookup -port=value Domain_name
Gồm 2 bước thực hiện:
Bước 1: Mở Terminal Ubuntu.
Bước 2: Nhập lệnh sau và nhấn Enter để truy vấn microsoft.com trên port 54:
nslookup -port=54 microsoft.com
Kết quả: Hiển thị lỗi cho biết máy chủ từ chối kết nối vì port 54 không phải là port tiêu chuẩn cho máy chủ DNS.
Ví dụ 11: Thay đổi thời gian chờ phản hồi của lệnh nslookup trên Linux
Bạn có thể tự điều chỉnh khoảng thời gian máy chủ phản hồi kết quả truy vấn. Nếu muốn máy chủ phản hồi nhanh hơn, bạn hãy giảm thời gian chờ (timeout) tính bằng giây. Ngược lại, nếu muốn đợi lâu hơn, bạn có thể tăng thời gian này. Để thay đổi, hãy dùng tùy chọn -timeout
và chỉ định giá trị của tùy chọn này sau lệnh nslookup
, theo sau là tên miền bạn muốn tìm kiếm. Cú pháp như sau:
nslookup -timeout=value domain_name
Các bước thực hiện:
Bước 1: Mở Terminal Ubuntu.
Bước 2: Nhập lệnh sau và nhấn Enter để đặt thời gian chờ là 10 giây cho google.com:
nslookup -timeout=10 google.com
Kết quả: Khi chạy lệnh này, bạn sẽ thấy kết quả truy vấn cho tên miền google.com được trả về trong vòng 10 giây.
Ví dụ 12: Kích hoạt chế độ gỡ lỗi của lệnh nslookup trên Linux
Chế độ gỡ lỗi của lệnh nslookup
hiển thị thông tin chi tiết về quá trình phân giải DNS, bao gồm các thông báo yêu cầu và phản hồi giữa máy khách và máy chủ. Thông tin chi tiết này rất hữu ích khi gỡ lỗi. Bên cạnh đó, chúng cũng cần thiết để hiểu rõ quá trình phân giải DNS hoạt động như thế nào. Để bật chế độ gỡ lỗi khi sử dụng lệnh nslookup
, bạn hãy thêm tùy chọn -debug
, sau đó là tên miền bạn muốn truy vấn. Cú pháp là:
nslookup -debug domain _name
Bao gồm 2 bước thực hiện:
Bước 1: Mở Terminal Ubuntu.
Bước 2: Nhập lệnh sau và nhấn Enter để kích hoạt chế độ gỡ lỗi cho google.com:
nslookup -debug google.com
Lưu ý
Trong chế độ tương tác, bạn có thể dùng lệnh set debug để bật chế độ gỡ lỗi và set nodebug để tắt.
Kết quả: Sau khi chạy lệnh này, bạn có thể thấy chế độ gỡ lỗi đã được kích hoạt và mình nhận được kết quả chi tiết hiển thị trên màn hình. Nơi bạn có thể thấy toàn bộ kết quả truy vấn chi tiết cho tên miền google.com. Thông tin này nhiều hơn hẳn so với Ví dụ 1, khi mà mình chưa bật chế độ gỡ lỗi.
Vietnix – Dịch vụ VPS AMD hiệu suất vượt trội
Được thành lập từ năm 2012, Vietnix chuyên cung cấp dịch vụ hosting và VPS tốc độ cao. Với sự nỗ lực không ngừng, chúng tôi mang đến các giải pháp công nghệ phù hợp với nhu cầu thực tế. Dịch vụ VPS AMD của Vietnix được trang bị CPU AMD EPYC thế hệ mới và ổ cứng NVMe tốc độ cao, cung cấp hiệu năng xử lý vượt trội và tốc độ truy xuất dữ liệu nhanh gấp 10 lần so với SSD truyền thống. Đây là lựa chọn hoàn hảo cho các dự án đòi hỏi cấu hình lớn, xử lý dữ liệu nhanh và hiệu quả. Với đội ngũ hỗ trợ kỹ thuật 24/7 cùng chính sách hoàn tiền minh bạch, Vietnix cam kết mang đến trải nghiệm dịch vụ đáng tin cậy và hài lòng nhất cho khách hàng.
Thông tin liên hệ:
- Hotline: 18001093
- Email: sales@vietnix.com.vn
- Địa chỉ: 265 Hồng Lạc, Phường 10, Quận Tân Bình, Thành Phố Hồ Chí Minh.
- Website: https://vietnix.vn/
Qua bài viết này, bạn đã hiểu rõ về lệnh nslookup trong Linux và cách sử dụng để kiểm tra các bản ghi DNS. Bạn hãy thử nghiệm với các tùy chọn khác nhau để khám phá thêm khả năng của lệnh. Hy vọng bài viết đã cung cấp cho bạn kiến thức hữu ích để kiểm tra và khắc phục sự cố liên quan đến DNS một cách hiệu quả, từ đó tối ưu hóa hiệu suất website và trải nghiệm người dùng.