Linux 命令—— ping、telnet、curl、wget(网络连接相关命令)

发布于:2024-10-18 ⋅ 阅读:(12) ⋅ 点赞:(0)

网络连接相关命令

ping

ping 命令是用于测试网络连接和诊断网络问题的工具。它通过向目标主机发送 ICMP(Internet Control Message Protocol)回显请求,并等待回复,以确定目标主机是否可达以及网络延迟的情况。

ping [选项] destination (destination: 目标主机的 IP 地址或域名)

常用选项

  • -c <count>:指定发送的回显请求数量。例如,ping -c 4 www.example.com 发送 4 个请求。
  • -i <interval>:指定发送请求的间隔时间(秒)。
  • -t <ttl>:设置 IP 数据包的生存时间(TTL,Time To Live)。
  • -s <size>:指定发送数据包的字节大小。
  • -W <timeout>:指定等待回复的超时时间(秒)。

ping www.baidu.com 结果分析

PING www.a.shifen.com (183.2.172.42) 56(84) bytes of data.
64 bytes from 183.2.172.42 (183.2.172.42): icmp_seq=1 ttl=38 time=6.24 ms
64 bytes from 183.2.172.42 (183.2.172.42): icmp_seq=2 ttl=38 time=6.20 ms
64 bytes from 183.2.172.42 (183.2.172.42): icmp_seq=3 ttl=38 time=6.15 ms
64 bytes from 183.2.172.42 (183.2.172.42): icmp_seq=4 ttl=38 time=6.16 ms
64 bytes from 183.2.172.42 (183.2.172.42): icmp_seq=5 ttl=38 time=6.16 ms

--- www.a.shifen.com ping statistics ---
5 packets transmitted, 5 received, 0% packet loss, time 4003ms
rtt min/avg/max/mdev = 6.154/6.185/6.242/0.059 ms

PING 行:

  • PING www.a.shifen.com (183.2.172.42):表示正在向 www.a.shifen.com 发送 ICMP 请求,目标的 IP 地址是 183.2.172.42。
  • 56(84) bytes of data:发送的数据包大小,56 字节是 ICMP 数据部分,84 字节是 ICMP 包的总大小。

每个回复行:

  • 64 bytes from 183.2.172.42:收到的回复的字节数。
  • icmp_seq=1:ICMP 请求的序列号(请求的顺序)。
  • ttl=38:TTL 值,表示数据包在网络中可以经过的最大跳数,通常用于防止数据包在网络中无限循环。
  • time=6.16 ms:从发送请求到收到回复的往返时间(RTT,Round Trip Time),单位为毫秒。

统计信息:

  • 5 packets transmitted, 5 received:发送和接收的数据包数量。
  • 0% packet loss:丢包率,表示在这次测试期间没有丢失数据包。
  • time 4003ms: 测试的总时间。
  • rtt min/avg/max/mdev = 6.154/6.185/6.242/0.059 ms:最小、平均、最大和平均偏差的 RTT 时间。

telnet

telnet 命令行用于通过 TCP/IP 协议与远程主机进行通信,常用于测试和管理网络服务。telnet 传输明文报文,不安全,一般不开放 telnet 服务,而改用 ssh 方式。通常使用 telnet 命令来确定服务器的某个端口是否能访问。

telnet [hostname] [port]

  • hostname:要连接的远程主机的 IP 地址或域名。
  • port:可选,指定要连接的端口号(默认为 23)。

如:telnet 192.168.7.145 22。确认 192.168.7.145 主机的 22 端口是否可用。

  • 连接成功,返回如下信息并等待下一步操作:

    Trying 192.168.7.145...
    Connected to 192.168.7.145.
    Escape character is '^]'.
    

    结果解析:

    • Trying 192.168.7.145…:命令正在尝试与指定的 IP 地址建立连接。
    • Connected to 192.168.7.145.:表示成功连接到目标主机。
    • Escape character is ‘^]’.:可以按 Ctrl + ] 进入命令模式,打开 telnet 的命令提示符,通常显示为 telnet>。
  • 终端按下键盘的 Ctrl + ] 组合键即可进入 socket 交互模式:

    在这里插入图片描述

curl

curl 是一个用于与服务器进行数据传输的命令行工具,支持多种协议,包括 HTTP、HTTPS、FTP、SFTP 等。常用于测试 API、下载文件、上传数据等。

curl [选项] [URL]

  • -O: 将下载的文件保存为与远程文件同名。
  • -o : 指定输出文件名。例如,curl -o myfile.txt http://example.com/file.txt。
  • -I: 只请求 HTTP 头部信息。
  • -X : 指定请求方法,如 GET、POST、PUT、DELETE 等。
  • -d : 发送 POST 请求的数据。例如,curl -d “param1=value1&param2=value2” http://example.com。
  • -H <header>: 添加自定义 HTTP 头部信息,例如 curl -H “Content-Type: application/json”.
  • -u <user:password>: 用于提供基本身份验证。
  • -L: 跟随 HTTP 重定向。
  • -s: 静默模式,不显示进度条和错误信息。
  • -v: 显示详细的请求和响应信息。

下载文件

  • curl -O http://example.com/file.txt // 下载 file.txt 并将其保存在当前目录。

指定输出文件名

  • curl -o myfile.txt http://example.com/file.txt // 下载的文件保存为 myfile.txt。

发送 POST 请求

  • curl -X POST -d “param1=value1&param2=value2” http://example.com/api // POST 请求发送数据到指定的 URL。

发送 GET 请求并查看响应

  • curl -I http://example.com // 只请求 HTTP 头部信息。
    在这里插入图片描述

wget

wget 是一个用于从网络上下载文件的命令行工具,支持 HTTP、HTTPS 和 FTP 协议。它非常强大,适用于下载单个文件、整个网站或进行批量下载。

wget [选项] [URL]

  • -O :指定输出文件名。例如,wget -O myfile.html http://example.com。
  • -c:断点续传。如果下载被中断,可以使用此选项继续下载未完成的部分。
  • -r:递归下载,适用于下载整个网站。
  • -P <dir>:指定下载文件保存的目录。例如,wget -P /path/to/dir http://example.com/file。
  • -q:静默模式,不显示下载进度。
  • -t :设置重试次数。例如,wget -t 5 http://example.com。
  • –limit-rate=:限制下载速度,例如 --limit-rate=200k 限制为每秒 200 KB。

下载单个文件

  • wget http://example.com/file.txt // 从指定的 URL 下载 file.txt 文件
    指定输出文件名
  • wget -O myfile.txt http://example.com/file.txt // 将下载的文件保存为 myfile.txt。

设置下载目录

  • wget -P /path/to/dir http://example.com/file.txt // 将文件下载到指定的目录 /path/to/dir。