当前位置:首页 > 时尚

cmd访问ip地址的命令

```html

ping 192.168.1.1 敲下去,命令回车。命令屏幕上蹦出四行“来自 192.168.1.1 的命令回复”。这就是命令最基础的“用 cmd 访问 IP”的场景。很多人以为访问 IP 必须打开浏览器或者专门的命令客户端,其实命令行里能干的命令事远比想象中多。前提是命令你得知道对面那台机器开着什么服务、走什么端口。命令

先分清“访问”到底指什么。命令如果是命令测试连通性,ping 就够了。命令ping 走的命令是 ICMP 协议,对方不一定回应——有些服务器防火墙直接丢弃 ICMP 包,命令这时候 ping 不通不代表对方不在线。命令我遇到过一台内网打印机,命令ping 它永远超时,但 telnet 它的 9100 端口秒连。所以别把 ping 当唯一标准。

要探测特定端口,用 telnet。比如 telnet 10.0.0.5 80,如果屏幕闪一下变成空白或者出现“正在连接”后消失,说明 80 端口开着。连不上会直接提示“无法打开到主机的连接”。Windows 默认没启用 telnet 客户端,得去“启用或关闭 Windows 功能”里勾一下。嫌麻烦就用 PowerShell 的 Test-NetConnection,命令是 Test-NetConnection 10.0.0.5 -Port 80,返回结果里 TcpTestSucceeded 为 True 就是通了。这个比 telnet 干净,不会卡在空白界面。

真正要“访问”一个 IP 上的 Web 服务,curl 是最顺手的。Windows 10 之后系统自带 curl。curl http://192.168.1.100 直接把首页 HTML 打到屏幕上。想保存下来就加 -o index.html。想看响应头加 -I。有一次我调试一个嵌入式设备,它的 Web 界面在浏览器里打不开,用 curl -v 一看,服务器返回了 302 跳转到 https,而设备自签证书过期了。浏览器直接拦死,curl 加 -k 跳过证书验证就能看到内容。这种细节,图形界面反而碍事。

文件传输方面,ftp 命令还在。ftp 192.168.1.50 然后输入用户名密码,用 get 和 put 传文件。不过现在更多用 scp 或者 sftp,Windows 的 OpenSSH 客户端也自带了。sftp user@192.168.1.50 连上之后 ls、cd、get 一套操作和本地差不多。有个坑:如果对方 SSH 端口不是 22,得用 -P 指定,比如 sftp -P 2222 user@10.0.0.8。

远程管理 Windows 机器,最直接的是 winrm 或者 psexec。但 cmd 原生不带这些。net use \\192.168.1.20\share 可以映射共享文件夹,前提是对方开了 SMB 并且你有凭据。net use 后面跟 /user:域名\用户名 密码。映射成功后会多一个盘符,比如 Z:。这时候 dir Z: 就能列文件了。我见过有人用这个办法在只有 cmd 权限的跳板机上拷数据,比开远程桌面快得多。

还有一类“访问”是发 UDP 包。比如 nslookup 指定 DNS 服务器:nslookup example.com 8.8.8.8。这算不算访问 IP?算。它向 8.8.8.8 的 53 端口发了查询。再比如 tftp 命令,虽然默认没装,但装上之后 tftp -i 192.168.1.30 GET config.bin 能从设备拉配置文件。很多网络设备只开 tftp 不开 ftp。

最后提一个容易忽略的:route print 和 arp -a。它们不直接“访问”远端 IP,但能告诉你本机怎么到达那个 IP。arp -a 列出局域网内已知的 IP 和 MAC 对应关系。如果 arp 表里没有目标 IP,ping 会先发 ARP 请求。有一次我死活 ping 不通 172.16.0.1,arp -a 一看,网关的 MAC 地址是 00-00-00-00-00-00,说明 ARP 没解析成功——交换机端口安全把包丢了。这种问题,图形界面根本查不出来。

所以 cmd 访问 IP 不是一条命令的事。ping 测通、telnet 探端口、curl 抓内容、net use 挂共享、sftp 传文件,各管一摊。用哪个取决于你要干什么。别指望一个命令通吃,也别被“无法访问目标主机”吓住——先看 arp,再看路由,最后试端口。顺序对了,问题就少一半。

```

分享到: