Linux

FreeIPA:安裝程序無法從主機文件中解析域名

  • April 17, 2018

我在安裝時遇到了問題FreeIPA。問題是每次我執行安裝程序時,FreeIPA應用程序都不會從主機文件中讀取,而是嘗試使用 DNS 查詢來解析域名(我的機器的主機名)。我正在與CentOS Linux release 7.3.1611 (Core)

以下是我/etc/hosts文件中的條目:

[root@ipa ~]# cat /etc/hosts
127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6
192.168.28.5 ipa.example.com ipa

條目/etc/resolve.conf

[root@ipa ~]# cat /etc/resolv.conf 
# Generated by NetworkManager
search example.com

如果我在上面添加一個 DNS 條目,example.com則從該 DNS 解析域,並且如果查詢外部 DNS,則會觀察到以下錯誤。

Please provide a realm name [EXAMPLE.COM]: 
Checking DNS domain example.com., please wait ...
ipa.ipapython.install.cli.install_tool(Server): ERROR    DNS zone example.com. already exists in DNS and is handled by server(s): a.iana-servers.net., b.iana-servers.net.

resolve.conf所以我選擇不添加 DNS 並使用如上所示的空文件。我也嘗試將其設置nameserver為我的機器 IP,但沒有成功。

為了讓它強制從我的hosts文件中讀取,我將nsswitch配置更改為僅從hosts文件中讀取,但這仍然是徒勞的。請看下面我的/etc/nsswitch配置。

[root@ipa ~]# grep hosts /etc/nsswitch.conf
hosts:      files

執行安裝程序

[root@ipa ~]# ipa-server-install --setup-dns -a <passwd> -p <passwd>

現在使用目前配置返回以下內容:

Please provide a realm name [EXAMPLE.COM]: 
Checking DNS domain example.com., please wait ...
Please provide the IP address to be used for this host name:

因此,hosts 文件再次被忽略,安裝程序要求針對域的 IP。

以下是一些顯示hostname解決IP方案成功的測試

[root@ipa ~]# ping ipa.example.com
PING ipa.example.com (192.168.28.5) 56(84) bytes of data.
64 bytes from ipa.example.com (192.168.28.5): icmp_seq=1 ttl=64 time=0.126 ms
^C
--- ipa.example.com ping statistics ---
1 packets transmitted, 1 received, 0% packet loss, time 0ms
rtt min/avg/max/mdev = 0.126/0.126/0.126/0.000 ms

[root@ipa ~]# getent hosts ipa.example.com
192.168.28.5    ipa.example.com ipa

[root@ipa ~]# telnet ipa.example.com
Trying 192.168.28.5...

為這篇長文道歉,我對此非常堅持,我無法弄清楚我錯過了什麼。對此問題的任何幫助將不勝感激。謝謝你。

PS:該設置不適用於實時環境,僅用於測試目的。

實際上,設置 IPA 伺服器以最終替換現有的、正在執行的域 DNS 伺服器是一個合法的案例。“去購買一個新域名”的答案未能解決潛在的技術問題。

這種情況可以通過指定ipa-server-install --allow-zone-overlap選項來處理,記錄在這裡

您不能使用其他人控制的域名。如果您嘗試這樣做,則會收到此處顯示的錯誤。

相反,請使用您自己的域名的子域。如果您沒有域名,可以從眾多域名註冊商處以非常便宜的價格獲得一個。

引用自:https://serverfault.com/questions/831667