<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                合規國際互聯網加速 OSASE為企業客戶提供高速穩定SD-WAN國際加速解決方案。 廣告
                # DNS ~~~ 穩定度: 3 - 穩定 ~~~ 使用 `require('dns')` 引入此模塊。dns 模塊中的所有方法都使用了 C-Ares,除了 `dns.lookup` 使用了線程池中的 `getaddrinfo(3)`。C-Ares 比 `getaddrinfo` 要快得多,但系統解析器相對于其它程序的操作要更固定。當一個用戶使用 `net.connect(80, 'google.com')` 或 `http.get({ host: 'google.com' })` 時會使用 `dns.lookup` 方法。如果用戶需要進行大量的快速查詢,則最好使用 C-Ares 提供的方法。 下面是一個解析 `'www.google.com'` 并反向解析所返回 IP 地址的例子。 ~~~ console.log('反向解析 ' + a + ': ' + JSON.stringify(domains)); }); }); }); ~~~ ### dns.lookup(domain, [family], callback) 將一個域名(比如 `'google.com'`)解析為第一個找到的 A 記錄(IPv4)或 AAAA 記錄(IPv6)。地址族 `family` 可以是數字 `4` 或 `6`,缺省為 `null` 表示同時允許 IPv4 和 IPv6 地址族。 回調參數為 `(err, address, family)`。地址 `address` 參數為一個代表 IPv4 或 IPv6 地址的字符串。地址族 `family` 參數為數字 4 或 6,地表 `address` 的地址族(不一定是之前傳入 `lookup` 的值)。 當錯誤發生時,`err` 為一個 `Error` 對象,其中 `err.code` 為錯誤代碼。請記住 `err.code` 被設定為 `'ENOENT'` 的情況不僅是域名不存在,也可能是查詢在其它途徑出錯,比如沒有可用文件描述符時。 ### dns.resolve(domain, [rrtype], callback) 將一個域名(比如 `'google.com'`)解析為一個 `rrtype` 指定記錄類型的數組。有效 `rrtypes` 取值有 `'A'`(IPv4 地址,缺省)、`'AAAA'`(IPv6 地址)、`'MX'`(郵件交換記錄)、`'TXT'`(文本記錄)、`'SRV'`(SRV 記錄)、`'PTR'`(用于 IP 反向查找)、`'NS'`(域名服務器記錄)和 `'CNAME'`(別名記錄)。 回調參數為 `(err, addresses)`。其中 `addresses` 中每一項的類型取決于記錄類型,詳見下文對應的查找方法。 當出錯時,`err` 參數為一個 `Error` 對象,其中 `err.code` 為下文所列出的錯誤代碼之一。 ### dns.resolve4(domain, callback) 于 `dns.resolve()` 一樣,但只用于查詢 IPv4(`A` 記錄)。`addresses` 是一個 IPv4 地址的數組(比如 `['74.125.79.104', '74.125.79.105', '74.125.79.106']`)。 ### dns.resolve6(domain, callback) 類似于 `dns.resolve4()`,但用于 IPv6(`AAAA`)查詢。 ### dns.resolveMx(domain, callback) 類似于 `dns.resolve()`,但用于郵件交換查詢(`MX` 記錄)。 `addresses` 為一個 MX 記錄的數組,每一項包含優先級和交換屬性(比如 `[{'priority': 10, 'exchange': 'mx.example.com'},...]`)。 ### dns.resolveTxt(domain, callback) 與 `dns.resolve()` 相似,但用于文本查詢(`TXT` 記錄)。`addresses` 為 `domain` 可用文本記錄的數組(比如 `['v=spf1 ip4:0.0.0.0 ~all']`)。 ### dns.resolveSrv(domain, callback) 查詢 SRV 記錄,與 `dns.resolve()` 相似。 `addresses` 是域名 `domain` 可用的 SRV 記錄數組, 每一條記錄都包含優先級(priority)、權重(weight)、端口號(port)、服務名稱(name)等屬性 (比如: `[{'priority': 10, {'weight': 5, 'port': 21223, 'name': 'service.example.com'}, ...]`)。 ### dns.resolveNs(domain, callback) 查詢 NS 記錄,與 `dns.resolve()` 相似。 `addresses` 是域名 `domain` 可用的 NS 記錄數組, (比如: `['ns1.example.com', 'ns2.example.com']`). ### dns.resolveCname(domain, callback) 查詢 CNAME 記錄,與 `dns.resolve()` 相似。 `addresses` 是域名 `domain` 可用的 CNAME 記錄數組, (比如: `['bar.example.com']`). ### dns.reverse(ip, callback) 反向解析 IP 地址,返回指向該 IP 地址的域名數組。 回調函數接收兩個參數: `(err, domains)`. 當出錯時,`err` 參數為一個 `Error` 對象,其中 `err.code` 為下文所列出的錯誤代碼之一。 ### dns.getServers() 已字符串返回一個當前用于解析的 IP 地址的數組。 ### dns.setServers(servers) 指定一個 IP 地址字符串數組,將它們作為解析所用的服務器。 如果您在地址中指定了端口,則端口會被忽略,因為底層庫并不支持。 如果您傳入無效參數,則會拋出異常。 ### 錯誤代碼 每個 DNS 查詢都可能返回下列錯誤代碼之一: - `dns.NODATA`: DNS 服務器返回無數據應答。 - `dns.FORMERR`: DNS 聲稱查詢格式錯誤。 - `dns.SERVFAIL`: DNS 服務器返回一般失敗。 - `dns.NOTFOUND`: 域名未找到。 - `dns.NOTIMP`: DNS 服務器未實現所請求操作。 - `dns.REFUSED`: DNS 服務器拒絕查詢。 - `dns.BADQUERY`: DNS 查詢格式錯誤。 - `dns.BADNAME`: 域名格式錯誤。 - `dns.BADFAMILY`: 不支持的地址類型。 - `dns.BADRESP`: DNS 答復格式錯誤。 - `dns.CONNREFUSED`: 無法聯系 DNS 服務器。 - `dns.TIMEOUT`: 聯系 DNS 服務器超時。 - `dns.EOF`: 文件末端。 - `dns.FILE`: 讀取文件錯誤。 - `dns.NOMEM`: 超出內存。 - `dns.DESTRUCTION`: 通道正在被銷毀。 - `dns.BADSTR`: 字符串格式錯誤。 - `dns.BADFLAGS`: 指定了非法標記。 - `dns.NONAME`: 所給主機名非數字。 - `dns.BADHINTS`: 指定了非法提示標記。 - `dns.NOTINITIALIZED`: c-ares 庫初始化尚未進行。 - `dns.LOADIPHLPAPI`: 加載 iphlpapi.dll 出錯。 - `dns.ADDRGETNETWORKPARAMS`: 無法找到 GetNetworkParams 函數。 - `dns.CANCELLED`: DNS 查詢取消。
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看