Надеюсь, кто-нибудь поможет. Я изо всех сил пытаюсь разобраться с этим и надеюсь, что есть простой способ обойти это.
Я пытаюсь получить список всех машин на локальном DNS-сервере. Для целей моего тестирования это DNS Win2008, но я хотел бы попробовать найти способ, который будет работать для любого, если это возможно.
По сути, я хочу эквивалент nslookup
, но для каждой машины в DNS. Например. Я даже не против, если он просто перечислит имена машин.
192.168.0.1 Desktop1.domain.local
192.168.0.2 Server2.ad.domain.local
192.168.0.3 Server3.sub.domain.local
Мне все равно, будет ли это решение Windows или Linux.
Я пытаюсь использовать Dig в Ubuntu, но начинаю думать, что он на самом деле не предназначен для тех целей, для которых я его задумал.
dig +nocmd +domina.local any +multiline +noall +answer
По моей базовой логике, я хочу что-то вроде
nslookup -all
или
nslookup *
решение1
Итак, вы хотите перечислить содержимое зон DNS. Это нелегко сделать «извне», за исключением проверок методом подбора, следуя по начатому вами пути — это похоже на взлом паролей. Вам придется запрашивать все возможные имена, проверять подстановочные знаки с совпадениями по шаблону и т. д. Это нетривиально и очень ресурсоемко, а также очень заметно для бдительных администраторов (это будет выглядеть как DoS-атака, если вы не будете осторожны). Но я даже не думаю, что черные шляпы подойдут к этому таким образом, было бы проще либо установить сниффер перед DNS-сервером и пассивно собирать полезные имена с течением времени, либо просто скомпрометировать сам DNS-сервер.
Так что я не уверен в вашей цели или варианте использования, но есть гораздо более простые / законные способы. Например, получите доступ к серверу Microsoft DNS, чтобы открыть MMC, подключитесь к службе DNS, и тогда вы увидите все зоны и в каждой из них все имена. Или вы можете попросить администратора экспортировать все зоны из консоли MMC. Или запросить возможность периодически вытягивать передачи зон на ваш «тестовый» сервер (например, используя «dig axfr @» или просто настроив вторичный). Это гораздо более простые и ненавязчивые способы получить то, что вы хотите, и если предположить, что это для законной цели, это не должно быть большой проблемой.