X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=source%2Fsteps%2FReadNodeConfiguration.py;h=55684bada1d40f10a5bf6fc965dd917f6ec50242;hb=1a55aa095e9e5ca2033626ef66b5925f408773f3;hp=5214612c412f609ad8204a167e0dfb8091893670;hpb=4f606af034d26931e8546f0d0baed7bb85e32068;p=bootmanager.git diff --git a/source/steps/ReadNodeConfiguration.py b/source/steps/ReadNodeConfiguration.py index 5214612..55684ba 100644 --- a/source/steps/ReadNodeConfiguration.py +++ b/source/steps/ReadNodeConfiguration.py @@ -558,25 +558,25 @@ def __parse_configuration_file( vars, log, file_contents ): # try a regular dns lookup first try: - resolved_node_ip= socket.gethostbyname(hostname) + resolved_node_ip_list = socket.gethostbyname_ex(hostname)[2] except socket.gaierror, e: - hostname_resolve_ok= 0 + hostname_resolve_ok = 0 if INTERFACE_SETTINGS['method'] == "dhcp": if hostname_resolve_ok: - INTERFACE_SETTINGS['ip']= resolved_node_ip - node_ip= resolved_node_ip + INTERFACE_SETTINGS['ip']= resolved_node_ip_list[0] + node_ip = resolved_node_ip_list[0] else: can_make_api_call= 0 else: - node_ip= INTERFACE_SETTINGS['ip'] + node_ip = INTERFACE_SETTINGS['ip'] # make sure the dns lookup matches what the configuration file says if hostname_resolve_ok: - if node_ip != resolved_node_ip: + if node_ip not in resolved_node_ip_list: log.write( "Hostname %s does not resolve to %s, but %s:\n" % \ - (hostname,node_ip,resolved_node_ip) ) + (hostname,node_ip,resolved_node_ip_list) ) hostname_resolve_ok= 0 else: log.write( "Hostname %s correctly resolves to %s:\n" %