diff --git a/lib/facter/util/resolvers/networking/networking.rb b/lib/facter/util/resolvers/networking/networking.rb index 492300eae..aca4f325b 100644 --- a/lib/facter/util/resolvers/networking/networking.rb +++ b/lib/facter/util/resolvers/networking/networking.rb @@ -62,6 +62,8 @@ def get_scope(ip) def find_valid_binding(bindings) bindings.each do |binding| + next unless binding.is_a?(Hash) + next unless binding[:address] return binding unless ignored_ip_address(binding[:address]) end bindings.empty? ? nil : bindings.first @@ -115,6 +117,8 @@ def expand_primary_interface(networking_facts, primary) def expand_binding(values, bindings, ipv4_type: true) binding = find_valid_binding(bindings) + return unless binding.is_a?(Hash) && binding[:address] + ip_protocol_type = ipv4_type ? '' : '6' values["ip#{ip_protocol_type}".to_sym] = binding[:address]