我读到了一个关于查找网站 IP 地址的问题。其中一个答案说要发出:“GET / HTTP.1.1”,然后是:“host:website.port”来查找特定页面。我的问题是如何在 Windows 8.1 中以及在哪里输入这样的命令。命令提示符没有起作用。谢谢
答案1
要查找网站域名(例如 www.google.com)的 IP,只需打开 cmd 提示符(start....cmd)并执行ping www.google.com<ENTER>
因此 www.google.com 的 IP 是 74.125.24.104
C:\>ping www.google.com
Pinging www.google.com [74.125.24.104] with 32 bytes of data:
Reply from 74.125.24.104: bytes=32 time=28ms TTL=50
Ping statistics for 74.125.24.104:
Packets: Sent = 1, Received = 1, Lost = 0 (0% loss),
Approximate round trip times in milli-seconds:
Minimum = 28ms, Maximum = 28ms, Average = 28ms
Control-C
^C
C:\>
您描述的内容将在命令提示符处返回网页的 html。您需要与 http 服务器建立原始连接。但是,如果您认为 HTTP 请求会获取 IP,那么这个概念就远远超出了您的知识范围。而且发出 HTTP 请求与获取 IP 无关。
但是关于发出 HTTP 请求(GET 命令正在执行的操作),Windows 中有一个称为 telnet 的程序。但人们往往不怎么使用它。它可能只执行 telnet 协议,而不执行原始协议。人们倾向于使用 Putty 之类的替代方案。在 cygwin 中使用 nc 是一种替代方案
您可以下载 cygwin,然后可能必须下载 nc 包,然后使用“nc”命令。我必须说我在获取页面时并没有取得很大的成功,但这就是想法。
$ nc www.htmlgoodies.com 80
GET HTTP/1.0
HTTP/1.0 400 Bad Request
Server: AkamaiGHost
Mime-Version: 1.0
Content-Type: text/html
Content-Length: 216
Expires: Thu, 21 May 2015 17:07:01 GMT
Date: Thu, 21 May 2015 17:07:01 GMT
Connection: close
<HTML><HEAD>
<TITLE>Bad Request</TITLE>
</HEAD><BODY>
<H1>Bad Request</H1>
Your browser sent a request that this server could not understand.<P>
Reference #7.9557dd58.1432228021.0
</BODY>
</HTML>
$
或者稍微好一点
$ nc www.htmlgoodies.com 80
GET / HTTP/1.0
HTTP/1.0 400 Bad Request
Server: AkamaiGHost
Mime-Version: 1.0
Content-Type: text/html
Content-Length: 192
Expires: Thu, 21 May 2015 17:07:41 GMT
Date: Thu, 21 May 2015 17:07:41 GMT
Connection: close
<HTML><HEAD>
<TITLE>Invalid URL</TITLE>
</HEAD><BODY>
<H1>Invalid URL</H1>
The requested URL "/", is invalid.<p>
Reference #9.9557dd58.1432228061.4ae720
</BODY></HTML>
$
更好的是
$ nc htmlgoodies.com 80
GET / HTTP/1.0
HTTP/1.1 200 OK
Date: Thu, 21 May 2015 19:56:53 GMT
Server: Apache
Last-Modified: Thu, 12 Apr 2012 05:29:47 GMT
ETag: "9b-4bd74a4e268c0"
Accept-Ranges: bytes
Content-Length: 155
Vary: Accept-Encoding
Cache-Control: public
Cache-Control: public
Connection: close
Content-Type: text/html; charset=UTF-8
<html>
<center><br><img src="construction.jpg"><br><img src="note.jpg"></center>
<!-- PRODUCTION WEB is alive -->
<!-- PRODUCTION WEB is alive -->
</html>
$
您可以使用 wireshark 来弄清楚请求的外观。
它在谷歌上不起作用,这可能是因为谷歌只有 https,而执行 https 有点棘手。
无论如何,即使你正确完成 HTTP 请求,也不会显示 IP。
DNS 查找将会进行,Ping 将导致该操作并显示 IP。