ITPub博客

首页 > IT基础架构 > 网络安全 > 通过hostname获取IP的perl脚本

通过hostname获取IP的perl脚本

原创 网络安全 作者:shiri512003 时间:2010-04-21 15:17:43 0 删除 编辑

作者: 弦乐之花 | 可以转载, 但必须以超链接形式标明文章原始出处和作者信息及版权声明

链接http://shiri512003.itpub.net/post/37713/499431

[@more@]

有时候我们会需要获取主机IP信息,下面收录一个通过主机名获取IP的perl脚本

http://www.metalshell.com/source_code/36/Hostname_Lookup.html

#!/usr/bin/perl
# resolv.pl written by detour@metalshell.com
#
# Resolves an ip into a host or a host into an ip.
#
# http://www.metalshell.com/
#
 
use Socket;
use strict;
 
my $host_name = hostname($ARGV[0]);
print "$ARGV[0] resolves to $host_namen";
 
sub hostname {
 
  my (@bytes, @octets,
    $packedaddr,
    $raw_addr,
    $host_name,
    $ip
  );
 
  if($_[0] =~ /[a-zA-Z]/g) {
    $raw_addr = (gethostbyname($_[0]))[4];
    @octets = unpack("C4", $raw_addr);
    $host_name = join(".", @octets);
  } else {
    @bytes = split(/./, $_[0]);
    $packedaddr = pack("C4",@bytes);
    $host_name = (gethostbyaddr($packedaddr, 2))[0];
  }
 
  return($host_name);
}

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/7591490/viewspace-1033056/ ,如需转载,请注明出处,否则将追究法律责任。

下一篇: ocfs2之琐记
请登录后发表评论 登录
全部评论

注册时间:2009-02-20

  • 博文量
    86
  • 访问量
    320274