gtsocial-umbx

Unnamed repository; edit this file 'description' to name the repository.
Log | Files | Refs | README | LICENSE

README.md (6385B)


      1 [![Build Status](https://travis-ci.org/miekg/dns.svg?branch=master)](https://travis-ci.org/miekg/dns)
      2 [![Code Coverage](https://img.shields.io/codecov/c/github/miekg/dns/master.svg)](https://codecov.io/github/miekg/dns?branch=master)
      3 [![Go Report Card](https://goreportcard.com/badge/github.com/miekg/dns)](https://goreportcard.com/report/miekg/dns)
      4 [![](https://godoc.org/github.com/miekg/dns?status.svg)](https://godoc.org/github.com/miekg/dns)
      5 
      6 # Alternative (more granular) approach to a DNS library
      7 
      8 > Less is more.
      9 
     10 Complete and usable DNS library. All Resource Records are supported, including the DNSSEC types.
     11 It follows a lean and mean philosophy. If there is stuff you should know as a DNS programmer there
     12 isn't a convenience function for it. Server side and client side programming is supported, i.e. you
     13 can build servers and resolvers with it.
     14 
     15 We try to keep the "master" branch as sane as possible and at the bleeding edge of standards,
     16 avoiding breaking changes wherever reasonable. We support the last two versions of Go.
     17 
     18 # Goals
     19 
     20 * KISS;
     21 * Fast;
     22 * Small API. If it's easy to code in Go, don't make a function for it.
     23 
     24 # Users
     25 
     26 A not-so-up-to-date-list-that-may-be-actually-current:
     27 
     28 * https://github.com/coredns/coredns
     29 * https://github.com/abh/geodns
     30 * https://github.com/baidu/bfe
     31 * http://www.statdns.com/
     32 * http://www.dnsinspect.com/
     33 * https://github.com/chuangbo/jianbing-dictionary-dns
     34 * http://www.dns-lg.com/
     35 * https://github.com/fcambus/rrda
     36 * https://github.com/kenshinx/godns
     37 * https://github.com/skynetservices/skydns
     38 * https://github.com/hashicorp/consul
     39 * https://github.com/DevelopersPL/godnsagent
     40 * https://github.com/duedil-ltd/discodns
     41 * https://github.com/StalkR/dns-reverse-proxy
     42 * https://github.com/tianon/rawdns
     43 * https://mesosphere.github.io/mesos-dns/
     44 * https://github.com/fcambus/statzone
     45 * https://github.com/benschw/dns-clb-go
     46 * https://github.com/corny/dnscheck for <http://public-dns.info/>
     47 * https://github.com/miekg/unbound
     48 * https://github.com/miekg/exdns
     49 * https://dnslookup.org
     50 * https://github.com/looterz/grimd
     51 * https://github.com/phamhongviet/serf-dns
     52 * https://github.com/mehrdadrad/mylg
     53 * https://github.com/bamarni/dockness
     54 * https://github.com/fffaraz/microdns
     55 * https://github.com/ipdcode/hades <https://jd.com>
     56 * https://github.com/StackExchange/dnscontrol/
     57 * https://www.dnsperf.com/
     58 * https://dnssectest.net/
     59 * https://github.com/oif/apex
     60 * https://github.com/jedisct1/dnscrypt-proxy
     61 * https://github.com/jedisct1/rpdns
     62 * https://github.com/xor-gate/sshfp
     63 * https://github.com/rs/dnstrace
     64 * https://blitiri.com.ar/p/dnss ([github mirror](https://github.com/albertito/dnss))
     65 * https://render.com
     66 * https://github.com/peterzen/goresolver
     67 * https://github.com/folbricht/routedns
     68 * https://domainr.com/
     69 * https://zonedb.org/
     70 * https://router7.org/
     71 * https://github.com/fortio/dnsping
     72 * https://github.com/Luzilla/dnsbl_exporter
     73 * https://github.com/bodgit/tsig
     74 * https://github.com/v2fly/v2ray-core (test only)
     75 * https://kuma.io/
     76 * https://www.misaka.io/services/dns
     77 * https://ping.sx/dig
     78 * https://fleetdeck.io/
     79 * https://github.com/markdingo/autoreverse
     80 * https://github.com/slackhq/nebula
     81 * https://addr.tools/
     82 * https://dnscheck.tools/
     83 * https://github.com/egbakou/domainverifier
     84 
     85 
     86 Send pull request if you want to be listed here.
     87 
     88 # Features
     89 
     90 * UDP/TCP queries, IPv4 and IPv6
     91 * RFC 1035 zone file parsing ($INCLUDE, $ORIGIN, $TTL and $GENERATE (for all record types) are supported
     92 * Fast
     93 * Server side programming (mimicking the net/http package)
     94 * Client side programming
     95 * DNSSEC: signing, validating and key generation for DSA, RSA, ECDSA and Ed25519
     96 * EDNS0, NSID, Cookies
     97 * AXFR/IXFR
     98 * TSIG, SIG(0)
     99 * DNS over TLS (DoT): encrypted connection between client and server over TCP
    100 * DNS name compression
    101 
    102 Have fun!
    103 
    104 Miek Gieben  -  2010-2012  -  <miek@miek.nl>
    105 DNS Authors 2012-
    106 
    107 # Building
    108 
    109 This library uses Go modules and uses semantic versioning. Building is done with the `go` tool, so
    110 the following should work:
    111 
    112     go get github.com/miekg/dns
    113     go build github.com/miekg/dns
    114 
    115 ## Examples
    116 
    117 A short "how to use the API" is at the beginning of doc.go (this also will show when you call `godoc
    118 github.com/miekg/dns`).
    119 
    120 Example programs can be found in the `github.com/miekg/exdns` repository.
    121 
    122 ## Supported RFCs
    123 
    124 *all of them*
    125 
    126 * 103{4,5} - DNS standard
    127 * 1348 - NSAP record (removed the record)
    128 * 1982 - Serial Arithmetic
    129 * 1876 - LOC record
    130 * 1995 - IXFR
    131 * 1996 - DNS notify
    132 * 2136 - DNS Update (dynamic updates)
    133 * 2181 - RRset definition - there is no RRset type though, just []RR
    134 * 2537 - RSAMD5 DNS keys
    135 * 2065 - DNSSEC (updated in later RFCs)
    136 * 2671 - EDNS record
    137 * 2782 - SRV record
    138 * 2845 - TSIG record
    139 * 2915 - NAPTR record
    140 * 2929 - DNS IANA Considerations
    141 * 3110 - RSASHA1 DNS keys
    142 * 3123 - APL record
    143 * 3225 - DO bit (DNSSEC OK)
    144 * 340{1,2,3} - NAPTR record
    145 * 3445 - Limiting the scope of (DNS)KEY
    146 * 3597 - Unknown RRs
    147 * 4025 - A Method for Storing IPsec Keying Material in DNS
    148 * 403{3,4,5} - DNSSEC + validation functions
    149 * 4255 - SSHFP record
    150 * 4343 - Case insensitivity
    151 * 4408 - SPF record
    152 * 4509 - SHA256 Hash in DS
    153 * 4592 - Wildcards in the DNS
    154 * 4635 - HMAC SHA TSIG
    155 * 4701 - DHCID
    156 * 4892 - id.server
    157 * 5001 - NSID
    158 * 5155 - NSEC3 record
    159 * 5205 - HIP record
    160 * 5702 - SHA2 in the DNS
    161 * 5936 - AXFR
    162 * 5966 - TCP implementation recommendations
    163 * 6605 - ECDSA
    164 * 6725 - IANA Registry Update
    165 * 6742 - ILNP DNS
    166 * 6840 - Clarifications and Implementation Notes for DNS Security
    167 * 6844 - CAA record
    168 * 6891 - EDNS0 update
    169 * 6895 - DNS IANA considerations
    170 * 6944 - DNSSEC DNSKEY Algorithm Status
    171 * 6975 - Algorithm Understanding in DNSSEC
    172 * 7043 - EUI48/EUI64 records
    173 * 7314 - DNS (EDNS) EXPIRE Option
    174 * 7477 - CSYNC RR
    175 * 7828 - edns-tcp-keepalive EDNS0 Option
    176 * 7553 - URI record
    177 * 7858 - DNS over TLS: Initiation and Performance Considerations
    178 * 7871 - EDNS0 Client Subnet
    179 * 7873 - Domain Name System (DNS) Cookies
    180 * 8080 - EdDSA for DNSSEC
    181 * 8499 - DNS Terminology
    182 * 8659 - DNS Certification Authority Authorization (CAA) Resource Record
    183 * 8777 - DNS Reverse IP Automatic Multicast Tunneling (AMT) Discovery
    184 * 8914 - Extended DNS Errors
    185 * 8976 - Message Digest for DNS Zones (ZONEMD RR)
    186 
    187 ## Loosely Based Upon
    188 
    189 * ldns - <https://nlnetlabs.nl/projects/ldns/about/>
    190 * NSD - <https://nlnetlabs.nl/projects/nsd/about/>
    191 * Net::DNS - <http://www.net-dns.org/>
    192 * GRONG - <https://github.com/bortzmeyer/grong>