在 Mac 上讓內容快取在多個公用 IP 地址之間搜索
如果你的網絡使用多個公用 IP 地址來連接互聯網(例如,內容快取),可能使用有別於用戶端的地址註冊來進行搜索,則你需要提供那些地址的列表給內容快取和用戶端。使用這些列表來交叉配對包括多個公用 IP 地址的註冊與搜索要求。
為了避免手動設定用戶端,內容快取使用 DNS TXT 記錄在你的網絡上公佈用戶端的公用 IP 地址資料。TXT 記錄需要在用戶端所使用的預設 DNS 搜尋網域裏發佈。
正確的 TXT 記錄資料可以自動或手動產生。無論哪一種方式,你都需要編輯 DNS 記錄,或者將設定提供給你的 DNS 提供者以在區域檔案中製作或編輯 TXT 記錄。
附註:這些記錄只有內部網絡需要使用。外部 DNS 不需要其他記錄。
設定內容快取用户端來支援多個 IP 地址
在 Mac 上,選擇「蘋果」選單 >「系統偏好設定⋯」,按一下「分享」,然後選擇「內容快取」。
按住 Option 鍵,然後按一下「進階選項」。
按一下「用戶端」。
按一下「我的區域網絡」彈出式選單,然後選擇「使用自訂公用 IP 地址」。
按一下「加入」按鈕 ,然後輸入一組公用 IP 地址。
為你要輸入的任何其他 IP 地址範圍重複此動作。
建立一個描述你所輸入的公用 IP 地址的 DNS TXT 記錄。
你可以使用內容快取服務來產生 TXT 記錄或手動建立 TXT 記錄(格式如下)。產生 TXT 記錄:
按一下「DNS 設定」按鈕。
選擇你的 DNS 伺服器類型(BIND 或 Windows)。
將產生的 TXT 記錄複製並貼至文字檔案,以便稍後將其加到 DNS 區域檔案時使用。
按一下「完成」。
當你完成設定時,按一下「好」。
將 TXT 記錄加到網域中獲主要授權的 DNS 區域檔案。
DNS TXT 記錄格式
指定 TXT 記錄的語法和 TXT 記錄中非 ASCII 的字元,將會因你的 DNS 伺服器而異。以下範例只供圖解之用。
文字快取的 DNS TXT 記錄與 DNS-SD TXT 記錄(鍵值對)格式相同:
name._tcp 10800 IN TXT "[prs|prn]=addressRanges"
IPv4 和 IPv6 都會被接受,但只可支援 IPv4。
以下範例均定義了兩個 IP 地址範圍的相同組合:一個在 17.53.22.2 開結和在 17.53.22.254 結束的範圍,以及一個包含單一 IP 地址(93.184.216.119)的範圍。兩者差別在於第一個範例使用 prs 鍵,而第二個範例則使用 prn 鍵。
_aaplcache._tcp 10800 IN TXT "\x2aprs=17.53.22.2-17.53.22.254,93.184.216.119"
_aaplcache._tcp 10800 IN TXT "\x12prn=\x24\x11\x35\x16\x02\x11\x35\x16\xfe\x14\x5d\xb8\xd8\x77"
prs 鍵和 prn 鍵就值指定的 IP 地址範圍使用不同格式:
prs:prs 鍵值的值是一連串以逗號分隔的 IP 地址範圍,以呈現格式表示(ASCII 點記號)。此語法可方便進行設定。由單一 IP 地址或兩個 IP 地址(以連字號分隔)組成的範圍。
prn:prn 鍵值的值是一連串鏈結的 IP 地址範圍,以二進位「網絡-位元組-順序」格式表示。此語法適用於以呈現格式指定時,對 DNS 記錄過長的範圍順序。序列中每個範圍之前均有一個位元組為緊接的範圍指定類型:
0x14 代表一個單一的 IPv4 地址。
0x16 代表一個單一的 IPv6 地址。
0x24 代表一個開始和結束的 IPv4 地址範圍。
0x26 代表一個開始和結束的 IPv6 地址範圍。
你可以將多個記錄串連一起。如你這樣做,請將第一個記錄命名為_aaplcache._tcp
,後續記錄由 _aaplcache1._tcp
起至 _aaplcache24._tcp
,上限為 25 個串連記錄。
請在所有 TXT 記錄(除最後一個)中置入連續標記來將記錄串連一起。
prs 和 prn 語法在串連的記錄之間可能會混用。prs 語法會在記錄值結尾附加「,more」。prn 語法會在記錄值結尾附加「+」(0x2b)。缺少此類連續標記的第一個記錄會結束串連。
串連記錄會以一次五個的批次解決,亦即 _aaplcache._tcp 和 _aaplcache1._tcp 到 _aaplcache4._tcp 會先並行解決,且如它們都以連續標記結尾,接下來則是 _aaplcache5._tcp 到 _aaplcache9._tcp 並行解決,由此類推。
以下是三筆串連記錄的範例:
_aaplcache._tcp 10800 IN TXT "\x2bprs=17.250.1.1,17.250.2.1-17.250.2.254,more"
_aaplcache1._tcp 10800 IN TXT "\x0eprn=\x24\x11\xfa\x03\x01\x11\xfa\x03\xfe+"
_aaplcache2._tcp 10800 IN TXT "\x0eprs=17.250.4.5"
指定 TXT 記錄的語法和 TXT 記錄中非 ASCII 的字元,將會因你的 DNS 伺服器而異。部份伺服器不需要前導長度位元組(在此範例中分別是 \x2a、\x12、\x2b、\x0e 和 \x0e),因為他們已自動預先考慮在內。
將 TXT 記錄加入 DNS 區域檔案
為你 DNS 伺服器上的本機網域加入一或多筆 TXT 記錄到區域檔案中。將 DNS TXT 記錄加入區域:
具有網域的授權性
符合網絡用戶端的預設搜尋網域
例如,如你的組織為你本身的網域提供 DNS 服務,且為 example.com 作為主機名稱的授權來源,你便會將快取 TXT 記錄置於 example.com 區域檔案中。
重要事項:如你並未為你的網域託管授權性 DNS 服務,你便無法自己加入 TXT 記錄。請與 DNS 提供者協調,讓他們加入所提供的 TXT 記錄。
如你使用 BIND9 DNS,請複製產生的 TXT 記錄,並將其貼入你的 DNS 區域檔案。
對於 Linux 上的 BIND9-based DNS,此檔案位於 /etc/bind/
目錄,而區域檔案名稱已在 /etc/bind/named.conf
中定義(很可能是「db.example.com」)。
如果你使用 Windows DNS,請執行下列其中一項操作:
如你使用內容快取服務產生 TXT 記錄:以你網絡的 DNS 區域名稱取代產生的命令中之 ZoneName 變數,然後在你的 Windows DNS 電腦上執行命令。
如你手動製作 DNS TXT 記錄:使用 Windows 伺服器管理工具來手動輸入 TXT 記錄資料。