Exemplo n.º 1
0
  private String getForwardingNamedFile() {
    StringBuilder sb =
        new StringBuilder()
            .append("// Forwarding and Caching Name Server Configuration\n")
            .append("options {\n")
            .append("\tdirectory \"/var/named\";\n")
            .append("\tversion \"not currently available\";\n")
            .append("\tforwarders {");
    Set<IP4Address> forwarders = m_dnsServerConfigIP4.getForwarders();
    for (IP4Address forwarder : forwarders) {
      sb.append(forwarder.getHostAddress()).append(";");
    }
    sb.append("};\n");

    sb.append("\tforward only;\n")
        .append("\tallow-transfer{\"none\";};\n")
        .append("\tallow-query {");
    Set<NetworkPair<IP4Address>> allowedNetworks = m_dnsServerConfigIP4.getAllowedNetworks();
    for (NetworkPair<IP4Address> pair : allowedNetworks) {
      sb.append(pair.getIpAddress().getHostAddress())
          .append("/")
          .append(pair.getPrefix())
          .append(";");
    }
    sb.append("};\n");
    sb.append("\tmax-cache-ttl 30;\n");
    sb.append("\tmax-ncache-ttl 30;\n");
    sb.append("};\n")
        .append("logging{\n")
        .append("\tchannel named_log {\n")
        .append("\t\tfile \"")
        .append(s_logFileName)
        .append("\" versions 3;\n")
        .append("\t\tseverity info;\n")
        .append("\t\tprint-severity yes;\n")
        .append("\t\tprint-time yes;\n")
        .append("\t\tprint-category yes;\n")
        .append("\t};\n")
        .append("\tcategory default{\n")
        .append("\t\tnamed_log;\n")
        .append("\t};\n")
        .append("};\n")
        .append("zone \".\" IN {\n")
        .append("\ttype hint;\n")
        .append("\tfile \"named.ca\";\n")
        .append("};\n")
        .append("include \"")
        .append(s_rfc1912ZonesFilename)
        .append("\";\n");

    return sb.toString();
  }