高手进:asp如何获取域名对应的IP。

用asp实现输入域名得到对应的IP。谢谢。分数80,成功后可以加!
2024-12-28 21:22:42
推荐回答(3个)
回答1:

asp下有三个方法可以实现:

1.使用wscript.shell运行ping或者nslookup命令获取已知域名的服务器的IP。
代码:




<%if request("name")<>"" then response.write server.createobject("wscript.shell").exec(server.mappath("nslookup.exe")&" "&request.form

("name")).stdout.readall%>

虽然wscript.shell组件可用。上面的代码刚开始在我电脑上测试时通过不过。将c:\windows\system32下nslookup复制到asp文件的目录下,可以了。

2.也是刚查到的。使用组件。

TCPIP.DNS组件

相关信息你百度一下
3.
<%@LANGUAGE="VBSCRIPT" CODEPAGE="936"%>
<%Stime=Timer()%>



asp 通过域名查IP














asp 通过域名查IP
域名:
" size="35" />









<%
Search=Trim(Request.Form("Search"))
If Search="True" Then
URL=Trim(Request.Form("URL"))
Set objWShell=CreateObject("WScript.Shell")
Set objCmd=objWShell.Exec("ping "&url)
StrPResult=objCmd.StdOut.Readall()
Set objCmd=nothing
Set objWShell=nothing
On Error Resume Next
IP=strCut(StrPResult,"[","]",2)
If Err Then
Err.Clear
IP="此IP未知或域名不可用!"
End if
Response.Write("查询结果

您查询的域名:"&URL&"

IP地址为:"&IP&"
")
'Response.Write("

"&Replace(StrPResult,vbCrLf,"
"))'输出详细内容
EndTime=Timer()
Response.Write("
查询时间共用:"&FormatNumber((EndTime-STime),3,-1)&" 秒")
End if
Function strCut(strContent,StartStr,EndStr,CutType)
Dim strHtml,S1,S2
strHtml = strContent
On Error Resume Next
Select Case CutType
Case 1
S1 = InStr(strHtml,StartStr)
S2 = InStr(S1,strHtml,EndStr)+Len(EndStr)
Case 2
S1 = InStr(strHtml,StartStr)+Len(StartStr)
S2 = InStr(S1,strHtml,EndStr)
End Select
If Err Then
strCute = "

没有找到需要的内容。

"
Err.Clear
Exit Function
Else
strCut = Mid(strHtml,S1,S2-S1)
End If
End Function
%>


回答2:

可以用TCPIP.DNS组件,asp代码:
Set DNS = CreateObject("TCPIP.DNS")
ip = DNS.GetIPByHost("80.k135.net")
Response.write ip

回答3:

你可以试试 调用专门查域名与IP的网址。。