关于inet_aton和inet_ntoa(perl)

关于inet_aton和inet_ntoa(perl)

 

得到DNS地址的两个主要函数是Socket模块中的inet_aton()函数,用来保存DNS地址,然后使用inet_ntoa()函数把保存的地址转换成IP地址。

 

l  inet_aton HOSTNAME

Takes a string giving the name of a host, and translates that to an opaque string (if programming in C, struct in_addr). Takes arguments of both the 'rtfm.mit.edu' type and '18.181.0.24'. If the host name cannot be resolved, returns undef. For multi-homed hosts (hosts with more than one address), the first address found is returned.

For portability do not assume that the result of inet_aton() is 32 bits wide, in other words, that it would contain only the IPv4 address in network order.

 

l  inet_ntoa IP_ADDRESS

 

Takes a string (an opaque string as returned by inet_aton(), or a v-string representing the four octets of the IPv4 address in network order) and translates it into a string of the form 'd.d.d.d' where the 'd's are numbers less than 256 (the normal human-readable four dotted number notation for Internet addresses).

 

e.g.

 

use Socket;

my $SiteName;

my $Address;

 

$SiteName = 'ebs12.hand-china.com';#$SiteName = '192.168.11.13';

$Address = inet_ntoa(inet_aton$SiteName);

print inet_aton($SiteName),"/n";

print "The DNS address of ebs12.hand-china.com is $Address/n";

 

结果:

括_

 

The DNS address of ebs12.hand-china.com is 192.168.11.13

 

我们可以看到print inet_aton($SiteName),"/n";打印出来的是“括_”。所以,我们可以得到inet_aton()函数返回的是“an opaque string”,一个模糊的字符串。

 

再看print "The DNS address of ebs12.hand-china.com is $Address/n";

打印出来的结果是“The DNS address of ebs12.hand-china.com is 192.168.11.13”。所以,我们可以得出inet_ntoa()函数返回的是IP地址。

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值