    # File lib/chef/provider/route.rb, line 63
        def hex2ip(hex_data)
          # Cleanup hex data
          hex_ip = hex_data.to_s.downcase.gsub(/[^0-9a-f]/, '')

          # Check hex data format (IP is a 32bit integer, so should be 8 chars long)
          return nil if hex_ip.length != hex_data.length || hex_ip.length != 8

          # Extract octets from hex data
          octets = hex_ip.scan(/../).reverse.collect { |octet| [octet].pack('H2').unpack("C").first }

          # Validate IP
          ip = octets.join('.')
          begin
            IPAddr.new(ip, Socket::AF_INET).to_s
          rescue ArgumentError
            Chef::Log.debug("Invalid IP address data: hex=#{hex_ip}, ip=#{ip}")
            return nil
          end
        end