如何為 dns 播種機設置名稱伺服器?
我很困惑將名稱伺服器設置為與dnsseeder一起執行。我修改了 dnsseeder 以使用我的新山寨幣。
這就是所做的。
我有亞馬遜 ec2 的 vps.example.com 設置,我編譯了 dnsseeder。我轉到我的域 example.com 的 godaddy dns 設置並添加了我的 1.2.3.4(彈性公共 ip)
Godaddy 中的主機名
vps.example.com mapped to 1.2.3.4
Godaddy 域中的域名伺服器是這樣的
Type Name Value TTL Actions A @ 1.2.3.4 1 Hour NS @ ns27.domaincontrol.com 1 Hour NS @ ns28.domaincontrol.com 1 Hour NS dnsseed vps.example.com 1 Hour
然後我執行 dnsseeder
./dnsseed -h dnsseed.example.com -n vps.example.com -m root.example.com Supporting whitelisted filters: 0x1,0x5,0x9,0xd Loading dnsseed.dat...done Starting 4 DNS threads for dnsseed.citizenshipcoin.org on vps.citizenshipcoin.org (port 53).......done Starting seeder...done Starting 96 crawler threads...done [18-03-07 00:49:14] 0/1 [18-03-07 00:49:15] 0/1 available (1 tried in 2s [18-03-07 00:49:16] 0/1 available (1 tried in 3s, 0 new, 0 active), 0 ba [18-03-07 00:49:17] 0/1 available (1 tried in 4s, 0 new, 0 active), 0 banned; 0 DNS requests, 0
當我查詢 nslook 時,它沒有返回任何 dns ips。
$ dig -t NS dnsseed.example.com ; <<>> DiG 9.7.3 <<>> -t NS dnsseed.example.com ;; global options: +cmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: SERVFAIL, id: 44679 ;; flags: qr rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 0, ADDITIONAL: 0 ;; QUESTION SECTION: ;dnsseed.example.com. IN NS ;; Query time: 1554 msec ;; SERVER: 192.168.0.1#53(192.168.0.1) ;; WHEN: Wed Mar 7 01:40:44 2018 ;; MSG SIZE rcvd: 45
似乎有些不對勁。我應該收到多組 IP 作為答案。
我做錯了什麼?
謝謝你的幫助J
重要的是要認識到域名可以代表主機或子域。為子域提供名稱服務是通過將作業委託給該子域的名稱伺服器來完成的。這是通過在父域的區域文件中為子域指定名稱伺服器來完成的。
我不熟悉如何在 GoDaddy 委派子域,但我敢打賭,您的問題至少部分在於這個細節。
此外,您沒有顯示您的播種機在收到請求時是否確實找到了可以提供的好節點。(在本例中,我們看到 21/223 可用)
#./dnsseeder -h myseeder.mycoin.com -n 184.254.106.32 -m admin@mycoin.com Supporting whitelisted filters: 0x1,0x5,0x9,0xd Loading dnsseed.dat...done Starting 4 DNS threads for myseeder.mycoin.com on 184.254.106.32 (port 53).......done Starting seeder...done [18-03-10 18:09:09] 21/223 available (223 tried in 277s, 0 new, 0 active), 119 banned; 0 DNS requests, 0 db queries
一般來說,重要的一點是選擇一個將執行 DNS Seeder 軟體的主機,然後將硬幣子域的名稱服務委託給它。舉些例子:
Machine Sub-Domain -------------------------------------------------------------------- m1.platform.com hosts name service for: myseeder.mycoin.com explorer.bitmark.io hosts name service for: biji.bitmark.one jp.bitmark.io hosts name service for: shido.bitmark.one
在此範例中,我們正在查看域“bitmark.one”的區域文件片段。我們將“biji.bitmark.one”子域的名稱服務委託給“explorer.bitmark.io”的名稱伺服器,並將“shido.bitmark.one”子域的名稱服務委託給位於的名稱伺服器’jp.bitmark.io’。
;; Thanks to: http://www.zytrax.com/books/dns/ch9/delegate.html ;; for info clarifying the concept of DNS delegation ! $ORIGIN bitmark.one. www IN A 204.68.122.6 biji IN NS explorer.bitmark.io. shido IN NS jp.bitmark.io.
如果我們使用 dig 查找 shido.bitmark.one 的名稱伺服器(查詢類型 NS),我們將獲得其名稱伺服器的 IP 139.162.122.138 :
# dig -t NS shido.bitmark.one ; <<>> DiG 9.10.3-P4-Ubuntu <<>> -t NS shido.bitmark.one ;; global options: +cmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 21880 ;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1 ;; OPT PSEUDOSECTION: ; EDNS: version: 0, flags:; udp: 512 ;; QUESTION SECTION: ;shido.bitmark.one. IN NS ;; ANSWER SECTION: shido.bitmark.one. 21577 IN NS 139.162.122.138. ;; Query time: 29 msec ;; SERVER: 8.8.8.8#53(8.8.8.8) ;; WHEN: Sat Mar 10 09:00:44 PST 2018 ;; MSG SIZE rcvd: 75
為了確認誰會回答 shido.bitmark.one,我們看到 ip 139.162.122.138 是 jp.bitmark.io
# ping jp.bitmark.io PING jp.bitmark.io (139.162.122.138) 56(84) bytes of data. 64 bytes from jp.bitmark.io (139.162.122.138): icmp_seq=1 ttl=52 time=101 ms ...
當我們向執行 DNS Seeder 軟體的 shido.bitmark.one 查詢地址(查詢類型 A)時,我們得到:
# dig -t A shido.bitmark.one ; <<>> DiG 9.10.3-P4-Ubuntu <<>> -t A shido.bitmark.one ;; global options: +cmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 17729 ;; flags: qr rd ra; QUERY: 1, ANSWER: 11, AUTHORITY: 0, ADDITIONAL: 1 ;; OPT PSEUDOSECTION: ; EDNS: version: 0, flags:; udp: 512 ;; QUESTION SECTION: ;shido.bitmark.one. IN A ;; ANSWER SECTION: shido.bitmark.one. 59 IN A 178.238.224.213 shido.bitmark.one. 59 IN A 80.211.182.224 shido.bitmark.one. 59 IN A 76.85.169.188 shido.bitmark.one. 59 IN A 139.162.122.138 shido.bitmark.one. 59 IN A 145.239.29.193 shido.bitmark.one. 59 IN A 46.105.62.121 shido.bitmark.one. 59 IN A 139.162.128.92 shido.bitmark.one. 59 IN A 173.255.252.140 shido.bitmark.one. 59 IN A 108.61.86.198 shido.bitmark.one. 59 IN A 80.241.214.77 ;; Query time: 159 msec ;; SERVER: 8.8.8.8#53(8.8.8.8) ;; WHEN: Sat Mar 10 09:09:12 PST 2018 ;; MSG SIZE rcvd: 222
這就是我們想要的:我們代幣的 P2P 網路中的活躍代幣節點列表。
在設置 DNS 播種時,最好記住在 DNS 系統中傳播條目可能需要一些時間 - 有時需要幾個小時甚至幾天。因此,在測試和探測時,您可能希望在不影響測試的情況下盡可能用實際 IP 地址替換 DNS 名稱,以避免由於 DNS 條目尚未傳播到各處而可能提供錯誤結果的不必要的 DNS 查找。