많은 연구 끝에 DNSJava으로 영역 파일을 수정하는 방법을 찾았습니다. Bind9가 서버에 설치되어 있어야합니다. 필수 영역 파일은 기본 정보로 작성되어야합니다. 이 설정이 완료되면 영역 파일에서 레코드를 추가 및 삭제하는 것은 간단합니다. Bind9 용 TSIG 키를 생성하려면 this 페이지를 참조하십시오. 실제로 레코드를 추가 할 수있는 코드는 다음과 같습니다.
Name zoneName = null;
String domain = "your.domain";
String host = "hostname";
DNSRecordType type = DNSRecordType.A;
int ttl = 600;
Lookup lookup = new Lookup(Name.fromString("your.domain"));
Record [] records = lookup.run();
if(records != null) {
zoneName = records[0].getName();
}
if(zoneName != null) {
Name hostName = Name.fromString("hostname", zoneName);
Update update = new Update(zoneName);
update.add(hostName, Type.value(type.toString()), 600,
"192.168.2.50");
Resolver resolver = new SimpleResolver();
resolver.setTCP(true);
resolver.setTSIGKey(new TSIG("your.domain.",
"z0pll56C4cwLXYd2HG6WsQ=="));
Message response1 = resolver.send(update);
response = response1.getHeader().toString();
}
'DNSRecordType'이 더 이상 존재하지 않으므로 아마도 이미 int를 반환하는'Type.A'로 대체해야합니다. –