;-) TNT是不是在用 LINUX呀? cnhack TNT wrote: > > > 2009/8/11 Yuan Jiang <[email protected] <mailto:[email protected]>> > > 一个系统调用引发的血案! > > > 哈哈,我刚看到 Lin 那个回复,猛地一愣!第一个反应是,难道我哪儿写错 > 了?手误?赶紧检查一下,发现没错,并且工作良好 > 那么转而以为有什么更深层次的使用 ping 来获取 IP 的弊端,发现似乎不是这 > 个问题。所以提出来自清一下,咱是负责任的,咱不好误人子弟那一口:-) > > > > On 8/11/09, cnhack TNT <[email protected] > <mailto:[email protected]>> wrote: > > "不知道有没有比较方面的用perl把域名转换为ip的简单代码?" > > ----- > > 楼主问的是 "比较方面(便)的用 perl 把域名转换成 ip 的简单代码 > ", 所以用 ping, nslookup, dig, Socket > > 模块,其他模块,其他方法不都能满足需求么 > > 我在意的是你说 ”不要再误人子弟“, 我想来想去,还以为是用 ping 有 > 什么不妥,但无论是用 ping 这种外部工具也好,还是你提及的 > > gethostbyname 方法, > > 都能满足楼主的要求,所以这个绝对不是误人子弟。 > > Lin 没看清楚楼主问题而已:-) > > > > 2009/8/11 Lin <[email protected] <mailto:[email protected]>> > > > >> 人家没有问 ping 了,而且用 ping 外部程序,还不如 nslookup 呢?:) > >> > >> 2009/8/11 cnhack TNT <[email protected] > <mailto:[email protected]>> > >> > >> 用 ping 这种简单的办法有什么不妥么? > >>> > >>> > >>> 2009/8/11 Beckheng Lam <[email protected] > <mailto:[email protected]>> > >>> > >>> 同意,我以前的是这样的: > >>>> > >>>> 如何对IP地址进行域名反向查询一样. > >>>> use Socket; > >>>> @addresses = gethostbyname($name) or die "Can't resolve > $name: $!n"; > >>>> @addresses = map { inet_ntoa($_) } @addresses[4 .. $#addresses]; > >>>> > >>>> 反向查询 > >>>> use Socket; > >>>> $name = gethostbyaddr(inet_aton($address), AF_INET) or die "Can't > >>>> resolve > >>>> $address: $!n"; > >>>> > >>>> Lin(林兴陆) wrote: > >>>> > >>>> perl -e "print > >>>> join('.',unpack('C4',(gethostbyname('www.google.com > <http://www.google.com>'))[4]));" > >>>> ; > >>>> > >>>> 用unpack C4兼容性更好一点,W4似乎只在Windows下可解。 > >>>> > >>>> 2009/8/11 Lin <[email protected] <mailto:[email protected]>> > >>>> > >>>>> 这都什么跟什么啊... 大家不要误人子弟了啦 > >>>>> > >>>>> C:\Users\Lin\Desktop>perl -e "print > >>>>> join('.',unpack('W4',(gethostbyname('www.goo > >>>>> gle.com <http://gle.com>'))[4]));"; > >>>>> 66.249.89.147 > >>>>> > >>>>> %perl -e 'use Socket;my $packed_ip = gethostbyname(" > >>>>> www.google.com <http://www.google.com>");print > >>>>> <http://www.google.com%22%29;print/>inet_ntoa($packed_ip);' ; > >>>>> 64.233.189.147% > >>>>> > >>>>> 2009/8/10 Yuan Jiang <[email protected] > <mailto:[email protected]>> > >>>>> > >>>>>> http://blog.vetcafe.net/2009/07/perl_ping_dns.html > >>>>>> > >>>>>> 2009/8/10 cnhack TNT <[email protected] > <mailto:[email protected]>> > >>>>>> > >>>>>>> print $1 if qx/ping -c1 google.com/ <http://google.com/> > =~ /\(([\d\.]+)\)/; > >>>>>>> > >>>>>>> 2009/8/10 imxae <[email protected] > <mailto:[email protected]>> > >>>>>>> > >>>>>>>> 在cpan 上搜来搜去,发现有的dns模块都太复杂了,不知道有没有 > 比较方面的用perl把域名转换为ip的简单代码? > >>>>>>> > >>>> -- > > > > > > > > > -- > Sent from my mobile device > > 姜源 > Yuan Jiang > http://blog.vetcafe.net > http://twitter.com/sleetdrop > > > >
-- Perl乐事 -- http://www.perlersh.org 我的博客 -- http://www.perlersh.org/blog.html --~--~---------~--~----~------------~-------~--~----~ 您收到此信息是由于您订阅了 Google 论坛“PerlChina Mongers 讨论组”论坛。 要在此论坛发帖,请发电子邮件到 [email protected] 要退订此论坛,请发邮件至 [email protected] 更多选项,请通过 http://groups.google.com/group/perlchina?hl=zh-CN 访问该论坛 -~----------~----~----~----~------~----~------~--~---
