From 6141919fba30487e3c4eb19b0c87a10384fd9d20 Mon Sep 17 00:00:00 2001 From: Martin Kosek Date: Fri, 20 Jan 2012 08:30:40 +0100 Subject: Fix ipa-server-install for dual NICs A server may have 2 or more NICs and its hostname may thus resolve to 2 and more forward addresses. IP address checks in install scripts does not expect this setup and may fail or crash. This script adds a support for multiple forward addresses for a hostname. The install scripts do not crash now. When one IP address is needed, user is asked to choose from all detected server IP addresses. https://fedorahosted.org/freeipa/ticket/2154 --- ipaserver/install/bindinstance.py | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) (limited to 'ipaserver/install/bindinstance.py') diff --git a/ipaserver/install/bindinstance.py b/ipaserver/install/bindinstance.py index c7e38282..6e6c9411 100644 --- a/ipaserver/install/bindinstance.py +++ b/ipaserver/install/bindinstance.py @@ -197,7 +197,13 @@ def add_zone(name, zonemgr=None, dns_backup=None, ns_hostname=None, ns_ip_addres raise errors.NotFound("No IPA server with DNS support found!") ns_main = dns_masters.pop(0) ns_replicas = dns_masters - ns_ip_address = resolve_host(ns_main) + addresses = resolve_host(ns_main) + + if len(addresses) > 0: + # use the first address + ns_ip_address = addresses[0] + else: + ns_ip_address = None else: ns_main = ns_hostname ns_replicas = [] @@ -230,7 +236,13 @@ def add_reverse_zone(zone, ns_hostname=None, ns_ip_address=None, raise errors.NotFound("No IPA server with DNS support found!") ns_main = dns_masters.pop(0) ns_replicas = dns_masters - ns_ip_address = resolve_host(ns_main) + addresses = resolve_host(ns_main) + + if len(addresses) > 0: + # use the first address + ns_ip_address = addresses[0] + else: + ns_ip_address = None else: ns_main = ns_hostname ns_replicas = [] -- cgit