Skip to content
KitploitKITPLOIT
ツールブログ
提出
ツールブログ
提出

ハッキング、侵入テスト、サイバーセキュリティツールをあなたのセキュリティアーセナルに!

Kitploitはハッキング、サイバーセキュリティ、ペネトレーションテストのツールディレクトリです。最新のプロジェクトアップデートを見つけて、脆弱性の発見、システム分析、テストの自動化、セキュリティの強化を行いましょう。

··フィード·お問い合わせ·プライバシー·© 2026 Kitploit

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
ツール/GitHubGitHub/projectdiscovery/retryabledns
偵察DNSおよびサブドメイン列挙情報収集ネットワークセキュリティユーティリティとフレームワークDNS分析
GitHubprojectdiscovery/retryabledns

retryabledns

Goで書かれたリトライ可能なDNSクライアント

リポジトリを見る
136303ヶ月前Kitploit レビュー済み

人気

すべて見る →

コミュニティで最も使われているツールを見つけましょう。

すべてのツールを探索

ツールコレクションを閲覧

すべてのツールを見る →
共有
retryabledns — Goで書かれたリトライ可能なDNSクライアント | Kitploit

リトライ可能なDNSリゾルバ

miekg/dns をベースにしており、bogdanovich/dns_resolver から自由に着想を得ています。

特徴

  • システムデフォルトのDNSリゾルバとユーザー指定のリゾルバの両方をサポート
  • I/Oエラー、タイムアウト、ネットワーク障害が発生した場合にDNSリクエストを再試行
  • 任意のクエリタイプを許可
  • ランダムなリゾルバによる解決
  • さまざまなDNSリゾルバプロトコル(TCP、UDP、DoH、DoT)に対応

go get を使用する

root@kitploit:~
$ go get github.com/projectdiscovery/retryabledns

このコマンドの後、retryabledns ライブラリのソースが $GOPATH に配置されます。

/etc/hosts ファイルの処理

デフォルトでは、ライブラリは効率のために /etc/hosts ファイルを最大行数(4096)まで処理します。設定でより大きな hosts ファイルがあり、さらに多くの行を処理したい場合は、hostsfile.MaxLines 変数を調整することで簡単にこの制限を設定できます。

例:

root@kitploit:~
hostsfile.MaxLines = 10000  // Now the library will process up to 10000 lines from the hosts file

使用例

使用例:

root@kitploit:~
package main

import (
    "log"

    "github.com/projectdiscovery/retryabledns"
    "github.com/miekg/dns"
)

func main() {
    // It requires a list of resolvers.
    // Valid protocols are "udp", "tcp", "doh", "dot". Default are "udp".
    resolvers := []string{"8.8.8.8:53", "8.8.4.4:53", "tcp:1.1.1.1"}
    retries := 2
    hostname := "hackerone.com"

    dnsClient, err := retryabledns.New(resolvers, retries)
    if err != nil {
        log.Fatal(err)
    }

    ips, err := dnsClient.Resolve(hostname)
    if err != nil {
        log.Fatal(err)
    }

    log.Println(ips)

    // Query Types: dns.TypeA, dns.TypeNS, dns.TypeCNAME, dns.TypeSOA, dns.TypePTR, dns.TypeMX, dns.TypeANY
    // dns.TypeTXT, dns.TypeAAAA, dns.TypeSRV (from github.com/miekg/dns)
    // retryabledns.ErrRetriesExceeded will be returned if a result isn't returned in max retries
    dnsResponses, err := dnsClient.Query(hostname, dns.TypeA)
    if err != nil {
        log.Fatal(err)
    }

    log.Println(dnsResponses)
}

クレジット:

  • https://github.com/lixiangzhong/dnsutil
  • https://github.com/rs/dnstrace
ツールをダウンロード