Tìm kiếm DNS bằng ký tự đại diện?


8

Bất cứ điều gì như nslookuphoặc digcung cấp khả năng tìm kiếm dựa trên một cái gì đó có trong tên ... như tìm kiếm ký tự đại diện hoặc một cái gì đó?

Tôi đang cố gắng tạo một tập lệnh nhỏ với trình bao bọc GUI cho nhóm trợ giúp của chúng tôi. Lý tưởng nhất là tôi muốn họ có thể tìm kiếm họ của người dùng (một cái gì đó luôn có trong bản ghi DNS) và sau đó tôi sẽ điền vào một pulldown với các tùy chọn có thể để lựa chọn.

Tôi không thể tìm ra cách nào có hiệu quả tương đương với nslookup *miller*... thật tuyệt khi được quay lại

Name: sf-jacobmiller.localdomain.com
Address: 10.10.10.121

Name: sf-justinmiller.localdomain.com
Address: 10.10.10.144

.. sau đó tôi có thể phân tích thành một cái kéo xuống để họ chọn.

Tôi chưa nhìn vào những thứ có sẵn ldapsearchđể có thể làm những gì tôi đang tìm kiếm. Yêu cầu duy nhất của tôi là điều này được tích hợp vào OSX và tôi sẽ không cần phải cài đặt bất cứ thứ gì khác, nếu không tôi sẽ mở cho bất kỳ giải pháp nào bạn có thể cung cấp. Cảm ơn

Câu trả lời:


11

Bạn có thể nhận được một danh sách đầy đủ các mục trong một khu vực với một chuyển nhượng khu vực; bạn cần cho phép điều này đối với các hệ thống được ủy quyền trong máy chủ DNS của bạn.

Khi đã xong, bạn có thể chạy chuyển khoản và grep kết quả:

dig axfr localdomain.com | grep -i miller

Dễ dàng và thẳng tiến như tôi có thể hy vọng. Cảm ơn
TryTryAgain

Tôi muốn chỉnh sửa câu trả lời của bạn để bao gồm grep -inó không phân biệt chữ hoa chữ thường, nếu không tôi nhận ra trường hợp này sẽ gây ra quá nhiều vấn đề. Tôi không thể thực hiện một chỉnh sửa nhỏ như vậy, mặc dù. Cảm ơn một lần nữa cho một giải pháp thanh lịch như vậy, chính xác những gì tôi đang tìm kiếm.
TryTryAgain

6

Một máy chủ tên sẽ không, theo thiết kế, cho phép bạn tìm kiếm một khu vực hoặc truy vấn những khu vực mà nó có thẩm quyền. Ngoài lý do rõ ràng là giảm các vectơ tấn công (bạn không thể thực hiện yêu cầu HTTP / 1.1 cho máy chủ nếu bạn không biết tên của nó), có một lý do rất chính đáng cho việc này: một vùng có thể chứa chính các ký tự đại diện, vì vậy hãy hỏi cho mỗi máy chủ trong một khu vực như vậy giống như chia cho số không.

Nếu bạn vận hành máy chủ tên có bản ghi bạn muốn tìm kiếm, bạn có thể thực hiện chuyển vùng sang máy chủ tên cục bộ và tìm kiếm bản ghi trực tiếp. Bạn vẫn sẽ cần phân tích các bản ghi văn bản theo bất kỳ định dạng nào chúng được chuyển vào, vì một máy chủ tên cục bộ sẽ không phản hồi khác nhau.


6

Bạn chỉ có thể hỏi DNS-Server nếu nó có một bản ghi cụ thể. Vì vậy, sẽ không có công cụ như vậy cho DNS.

Biên tập

Zonetransfer tất nhiên là một khả năng nếu nó có sẵn.


Có vẻ như bạn đã được chứng minh là sai, như tôi mong đợi.
TryTryAgain

3
@TryTryAgain Trên thực tế, trong trường hợp chung, anh ấy khá chính xác: Lưu ý các từ khóa trong câu trả lời bạn chấp nhận : need to allow this for authorized systems in your DNS server. Ví dụ: nếu bạn thử chuyển vùng cho serverfault.com(hoặc thực sự gần như bất kỳ vùng nào bạn không kiểm soát hoặc bạn chưa thực hiện sắp xếp với quản trị viên DNS), bạn sẽ không nhận được kết quả.
voretaq7

4
@TryTryAgain Việc phrasing cũng đi qua như hơi thô lỗ. Nếu câu trả lời rõ ràng như bạn đang phát ra âm thanh, bạn sẽ không phải đăng câu hỏi. Chúng tôi luôn ở đây để giúp đỡ lẫn nhau ... thông thường.
Andrew B

1

Đồng ý với câu trả lời đã được kiểm tra, tôi nghĩ rằng một vòng lặp for có thể là một sự thay thế cho một người không được phép thực hiện chuyển nhượng khu vực. Nếu bạn biết phạm vi IP:

name="mthebeau"
net="123.45.67."
for ip in $( seq 1 255 ); do {
    sleep 1; # be kind to the server, unauthorized user
    text="$( nslookup $net$ip 2>&1 | grep "$name" )";
    if [ -z "$text" ]; then continue; fi;
    echo "$text";
}; do

Tôi đã tìm kiếm câu trả lời này vì tôi muốn mở máy tính để bàn của mình cho một người dùng địa phương mà IP và tên máy tôi không biết.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.