in reply to Re: perl network / internet access problems
in thread perl network / internet access problems

Your self-compiled Perl does not use the passive FTP transfer. You need to configure your CPAN/Config.pm the same as the working Perls CPAN/Config.pm, and especially mind the Use passive FTP transfers question. CPAN.pm should be patched so that passive transfers are the default option, but this is not yet the case.

  • Comment on Re^2: perl network / internet access problems

Replies are listed 'Best First'.
Re^3: perl network / internet access problems
by fireartist (Chaplain) on Feb 03, 2005 at 11:36 UTC

    A search of the Config.pm output from both perl versions turns up no instances of 'ftp' or 'passive'. I'll re-run sh Configure and pay more attention.

    Unfortunately it doesn't explain the mysql connection issue. Although I can connect with IP address, it's less than ideal, as I can't guarantee the IP won't change.

      I was referring to CPAN/Config.pm, which is a quite different file from Config.pm. The file Config.pm contains the Perl configuration, while CPAN/Config.pm contains the configuration for CPAN.pm. Rereading your error message, you don't use CPAN though, you download your stuff yourself. You can either edit your .netrc file, or simply modify your ftp script to use passive mode:

      use strict; use warnings; use Net::FTP; my $ftp = Net::FTP->new("ftp.mirror.ac.uk", Debug => 1) or die "Cannot connect to ftp.mirror.ac.uk: $@"; $ftp->login("anonymous",'-anonymous@') or die "Cannot login ", $ftp->message; $ftp->cwd("/sites/ftp.funet.fi/pub/languages/perl/CPAN/authors/id/C/CF +/CFRANKS/") or die "Cannot change working directory ", $ftp->message; $ftp->pasv(1); $ftp->get("HTML-Menu-DateTime-0.94.tar.gz") or die "get failed ", $ftp->message; $ftp->quit;

      My guess is, that your .netrc file is not set up properly for your local Perl, or you don't have Net::Config installed. But you should set the passive mode for ftp connections by default anyway.

      I'll re-run sh Configure and
      You can run a CPAN session like this: FTP_PASSIVE=1 perl -MCPAN -e shell from the command line on a per-session basis without having to hack Config.pm permanently

      it doesn't explain the mysql connection issue
      Sounds like you have name resolution issues at the system level if you can connect using the IP but not using the fqdn.
        i'm thinking that you're behind some firewall or proxy or such, and that some of your programs pick up these internet connection settings off the system, and some of the programs may not pick up any system settings or may even default to particular values
        This might even include the setting for DNS lookups, but i'd place my bet on it being a proxy/firewall issue.
        the hardest line to type correctly is: stty erase ^H