如何確定, 自己管理的系統上的 DNS/named 的版本 ? E.g. 4.8.3, 4.9.5-P1, ...



Q: How to check and find out the version of the bind/named program

A: 分兩個 Part. 首先, 交待一下, 問題的背景, 其次舉實例說明.

  • 只有比較近期的 OS, 才有比較新的 (4.9.5 and later) BIND/named. 過往, 多數廠家的 OS (Unix) 所附的 BIND/named, 都是 BIND-4.8.3 (or 更舊) - SunOS 5.5 ( Solaris 2.5 ) 的 native named ( 沒有加 recommended patch ), BIND/named, 就還只是 4.8.3; 換裝 patch 後, 就變成 4.9.3-P1. - SunOS 4.x 都是 4.8.3. - HP-UX 方面, 記得只有在 10.20 以後的版本, 才有 4.9.5, 之前都是 4.8.3. - Linux 1.x 版, 附 bind-4.9.3 beta 24(?), ... 近幾年來, 因為 IPv6 (128 bit的表示法), 漸漸成熟. Cisco 等 Router 大廠, IPv6 的 solution 即將 ready (預定 1997 年底推出), 所以, 各 Unix 工作站, 針對 IPv6 的技術, 的相關研發工作, 也加快進行. 多年以來, 在 BIND/named 的發展上, 各廠家並不是很重視. 但是隨著, 這一波 IPv6 的技術演進, 眾家 Unix 廠, 終於有了配合動作. 實在很現實, 因為舊版的 BIND-4.8.3 根本, 無法配合 IPv6 的設定. 不改, 根本就沒辦法用. 這一波 BIND/named upgrade, Sun Microssystem, 算是投入 較早的 Unix廠家. HP 和 IBM 等大廠, 目前也緊跟在後. 另一方面, FreeBSD, Linux 等, 更是積極. 許多相關的 IPv6 技術, 更是跑在 這一些商業公司其面. 而 PC platform 中, Microsoft 的 Windows NT, 在這一方面, 目前似乎還是比 較差. 還好, BIND/named-4.9.5 (or later), 也已經有 for Windows NT 的 版本. ======================================================
  • 如要 check 你的 系統上 named 的版本, 通常可以這麼作. 1) 確定 named program 的 pathname. e.g. /etc/named, /usr/sbin/in.named, ... 用 which, find, ... 2) 用 what 配合 grep 找出相關字串. 底下是幾個, 實際的例子. case 1: ( BIND-8.1.1-REL) ---------------------------- % what /usr/sbin/named |grep named named: named 8.1.1 Thu Jun 26 15:03:59 EAT 1997 root@ns:/home/DNS/bind-8.1.1-REL/src/bin/named case 2: ( HP-UX 9.03, native ) ---------------------------- %>what /etc/named named: Copyright (c) 1986, 1989, 1990 Regents of the University of California. named 4.8.3 pA Wed May 19 16:01:02 GMT 1993 case 3: ( BIND-4.9.5-P1) ---------------------------- % what in.named | grep name in.named: named 4.9.5-P1 Thu Jan 30 15:05:48 CST 1997 cschen@nctu2:/home/DNS/bind- 4.9.5-P1/named 19 16:01:02 GMT 1993 case 4: ( BIND-4.9.6-REL) ---------------------------- in.named: named 4.9.6-REL Wed Jun 25 21:43:52 CST 1997 cschen@ns1:/home/DNS/bind-4 .9.6/named ...