<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          Dog-用于DNS查詢的命令行工具

          共 3534字,需瀏覽 8分鐘

           ·

          2020-12-11 02:52

          Dog是一個用于DNS查詢的命令行工具,它的工作原理類似于dig。它具有豐富多彩的輸出,支持DNS-over-TLS 和 DNS-over-HTTPS協(xié)議,并且可以輸出JSON格式。

          系統(tǒng)環(huán)境



          Ubuntu 20.04.1 LTS


          安? ? 裝



          Dog是用Rust編寫的DNS查詢工具。Dog需要rustc的版本高于1.45.0,我們使用apt安裝的版本達(dá)不到這個要求,下面我們會使用其他方式安裝rustc。下面需要先安裝libssl-dev安裝包:

          bob@ubuntu-20-04:~$?sudo?apt?install?-y?cargo?libssl-dev

          <以上代碼可復(fù)制粘貼,可往左滑>

          下面安裝rust,由于按照官方文檔安裝rust,有時(shí)下載沒有進(jìn)度,所以在這里先修改鏡像源,改成國內(nèi)的,然后執(zhí)行安裝:


          bob@ubuntu-18-04:~$?export?RUSTUP_DIST_SERVER=https://mirrors.ustc.edu.cn/rust-static
          bob@ubuntu-18-04:~$?export?RUSTUP_UPDATE_ROOT=https://mirrors.ustc.edu.cn/rust-static/rustup
          bob@ubuntu-18-04:~$?curl?https://sh.rustup.rs?-sSf?|?sh

          <以上代碼可復(fù)制粘貼,可往左滑>


          在下面的地方,選擇選項(xiàng)1.


          安裝完成,需要執(zhí)行下面命令,才能正常使用cargo命令

          bob@ubuntu-18-04:~$?source?$HOME/.cargo/env

          <以上代碼可復(fù)制粘貼,可往左滑>

          下面檢查rustc的版本:

          bob@ubuntu-18-04:~$?rustc?--version
          rustc?1.47.0?(18bf6b4f0?2020-10-07)

          <以上代碼可復(fù)制粘貼,可往左滑>


          從github下載dog安裝包,并解壓:

          bob@ubuntu-20-04:~$?wget?https://github.com/ogham/dog/archive/v0.1.0.tar.gz
          bob@ubuntu-20-04:~$?tar?xvf?v0.1.0.tar.gz

          <以上代碼可復(fù)制粘貼,可往左滑>

          進(jìn)入解壓出來的目錄,并構(gòu)建dog程序:

          bob@ubuntu-20-04:~$?cd?dog-0.1.0/

          <以上代碼可復(fù)制粘貼,可往左滑>

          使用默認(rèn)的倉庫地址更新會比較慢,在這里按ctrl+c結(jié)束更新,在家目錄會生成一個.cargo文件夾,進(jìn)去新建一個config配置文件,將下面內(nèi)容添加進(jìn)去這樣修改默認(rèn)倉庫,更新速度就快許多了:
          bob@ubuntu-20-04:~/dog-0.1.0$?cat?~/.cargo/config

          [source.crates-io]
          registry?=?"https://github.com/rust-lang/crates.io-index"

          #?替換成你偏好的鏡像源
          replace-with?=?'sjtu'
          #replace-with?=?'ustc'

          #?清華大學(xué)
          [source.tuna]
          registry?=?"https://mirrors.tuna.tsinghua.edu.cn/git/crates.io-index.git"

          #?中國科學(xué)技術(shù)大學(xué)
          [source.ustc]
          registry?=?"git://mirrors.ustc.edu.cn/crates.io-index"

          #?上海交通大學(xué)
          [source.sjtu]
          registry?=?"https://mirrors.sjtug.sjtu.edu.cn/git/crates.io-index"

          #?rustcc社區(qū)
          [source.rustcc]
          registry?=?"git://crates.rustcc.cn/crates.io-index"

          <以上代碼可復(fù)制粘貼,可往左滑>

          修改完成之后,再回到dog-0.1.0目錄里面,重新構(gòu)建dog程序,并運(yùn)行測試下:

          bob@ubuntu-18-04:~/dog-0.1.0$?cargo?build
          bob@ubuntu-18-04:~/dog-0.1.0$?cargo?test

          <以上代碼可復(fù)制粘貼,可往左滑>


          確保dog命令從任何目錄運(yùn)行,將二進(jìn)制文件放在/usr/local/bin目錄中。

          bob@ubuntu-18-04:~/dog-0.1.0$?sudo?cp?-p?~/dog-0.1.0/target/debug/dog?/usr/local/bin

          <以上代碼可復(fù)制粘貼,可往左滑>

          運(yùn)行dog工具,查看以下版本:

          bob@ubuntu-18-04:~$?dog?--version
          dog?●?command-line?DNS?client
          v0.1.0?[]?built?on?2020-11-19?(pre-release!)
          https://dns.lookup.dog/
          bob@ubuntu-18-04:~$

          <以上代碼可復(fù)制粘貼,可往左滑>


          可以使用源碼包里面的命令補(bǔ)全腳本,當(dāng)需要提示的時(shí)候按兩下TAB鍵,顯示子命令:

          bob@ubuntu-18-04:~$?source?~/dog-0.1.0/completions/dog.bash

          <以上代碼可復(fù)制粘貼,可往左滑>


          如何使用dog命令



          現(xiàn)在,讓我們看看如何使用dog命令查詢不同的DNS記錄。

          查詢A記錄

          bob@ubuntu-18-04:~$?dog?www.baidu.com
          CNAME?www.baidu.com.????5s???"www.a.shifen.com."
          ????A?www.a.shifen.com.?4s???180.101.49.12
          ????A?www.a.shifen.com.?4s???180.101.49.11

          <以上代碼可復(fù)制粘貼,可往左滑>

          查詢NS記錄

          bob@ubuntu-18-04:~$?dog?aliyun.com?NS
          NS?aliyun.com.?5s???"ns3.aliyun.com."
          NS?aliyun.com.?5s???"ns5.aliyun.com."
          NS?aliyun.com.?5s???"ns4.aliyun.com."

          <以上代碼可復(fù)制粘貼,可往左滑>

          使用指定的域名服務(wù)器地址查詢

          bob@ubuntu-18-04:~$?dog?google.com?MX?@1.1.1.1
          MX?google.com.?6m23s???30?"alt2.aspmx.l.google.com."
          MX?google.com.?6m23s???40?"alt3.aspmx.l.google.com."
          MX?google.com.?6m23s???10?"aspmx.l.google.com."
          MX?google.com.?6m23s???50?"alt4.aspmx.l.google.com."
          MX?google.com.?6m23s???20?"alt1.aspmx.l.google.com."

          <以上代碼可復(fù)制粘貼,可往左滑>

          JSON格式輸出

          bob@ubuntu-18-04:~$?dog?A?www.baidu.com?-J
          {"responses":[{"additionals":[],"answers":[{"class":"IN","domain":"www.a.shifen.com.","name":"www.baidu.com.","ttl":5,"type":"CNAME"},{"address":"180.101.49.11","class":"IN","name":"www.a.shifen.com.","ttl":4,"type":"A"},{"address":"180.101.49.12","class":"IN","name":"www.a.shifen.com.","ttl":4,"type":"A"}],"authorities":[],"queries":[{"class":"IN","name":"www.baidu.com.","type":1}]}]}

          <以上代碼可復(fù)制粘貼,可往左滑>

          ?


          查看幫助

          bob@ubuntu-18-04:~$?dog?--help

          <以上代碼可復(fù)制粘貼,可往左滑>


          良許個人微信


          添加良許個人微信即送3套程序員必讀資料


          → 精選技術(shù)資料共享

          → 高手如云交流社群





          本公眾號全部博文已整理成一個目錄,請?jiān)诠娞柪锘貜?fù)「m」獲取!

          推薦閱讀:

          大佬終于把鴻蒙OS講明白了,收藏了!

          良許被36氪創(chuàng)始人接見了?。ǘ鄨D預(yù)警)

          2020 年最漂亮的 Linux 發(fā)行版


          5T技術(shù)資源大放送!包括但不限于:C/C++,Linux,Python,Java,PHP,人工智能,單片機(jī),樹莓派,等等。在公眾號內(nèi)回復(fù)「1024」,即可免費(fèi)獲?。?!


          瀏覽 49
          點(diǎn)贊
          評論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          評論
          圖片
          表情
          推薦
          點(diǎn)贊
          評論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  国产精品第一操逼视频 | 国产女人高潮了视频 | 日韩小电影在线观看 | 91性爱网站 | 欧美日韩在线免费观看视频 |