my $hostname = gethostbyaddr(inet_aton($data[$ip_address_pos]), AF_INET) or "Can't resolve $data[$ip_address_pos]: $!\n"; #### use Data::Validate::Domain qw(is_hostname); if ( $data[$ip_address_pos] eq "" && $data[$name_pos] ne "" && is_hostname($data[$name_pos])) { my $address = inet_ntoa(inet_aton($data[$name_pos])) || "Error: Can't resolve."; splice @data, ($ip_address_pos), 1, $address; }