Perlを使用してコンピュータのIPアドレスを検出して表示する方法を教えてください。
前もって感謝します。助けてください。
コードは次のとおりです。
#!/usr/bin/perl
use IO::Socket;
$hostname="(my hostname)";
my($addr)=inet_ntoa((gethostbyname($hostname))[4]);
print "$addr\n";
Perlを使用してコンピュータのIPアドレスを検出して表示する方法を教えてください。
前もって感謝します。助けてください。
コードは次のとおりです。
#!/usr/bin/perl
use IO::Socket;
$hostname="(my hostname)";
my($addr)=inet_ntoa((gethostbyname($hostname))[4]);
print "$addr\n";
グーグルで簡単に検索すると、次の情報が得られました
IPアドレスを取得するには、gethostbyname組み込み関数を使用して、名前を数値に変換します。その数をほとんどの人が期待する点線のオクテット形式(abcd)に変換するには、Perlに付属しているSocketモジュールのinet_ntoa関数を使用します。
use Socket;
my $address = inet_ntoa(
scalar gethostbyname( $host || 'localhost' )
);
あなたはおそらく探していますか
use CGI qw( );
my $cgi = CGI->new();
print $cgi->header('text/plain');
print $cgi->remote_addr(), "\n";