Heim > System-Tutorial > LINUX > TCP-Testtool unter Linux

TCP-Testtool unter Linux

WBOY
Freigeben: 2024-02-11 23:48:28
nach vorne
793 Leute haben es durchsucht

So installieren Sie TCP unter Linux

Eine gängige Methode zur Messung der Netzwerklatenz zu einem Remote-Host ist die Verwendung einer ping应用程序。该ping工具依赖 ICMP ECHO 请求和回复数据包来测量远程主机的往返延迟。但是,在某些情况下,ICMP 流量可能会被防火墙阻止,这使得该pingAnwendung, die für Hosts hinter eingeschränkten Firewalls nutzlos ist. In diesem Fall müssen Sie sich auf Layer-3-Messtools verlassen, die TCP/UDP-Pakete verwenden, da diese Layer-3-Pakete mit größerer Wahrscheinlichkeit gängige Firewall-Regeln umgehen.

TCP-Testtool unter Linux

Ein solches Layer-3-Messtool ist tcpping. 为了测量延迟,tcpping利用所谓的半开放连接技术,基于 TCP 三路握手。也就是说,它通过端口号(默认为 80)向远程主机发送 TCP SYN 数据包。如果远程主机正在侦听该端口,它将以 TCP ACK 数据包响应。否则,它将以 TCP RST 数据包响应。无论哪种方式,tcpping, das die Round-Trip-Time (RTT)-Latenz eines Remote-Hosts messen kann, indem es ausgehende SYN-Pakete und eingehende ACK- (oder RST-)Pakete zeitlich synchronisiert.

Installation unter Linuxtcpping

tcpping作为 shell 脚本实现,该脚本响应外部工具来执行和报告 RTT 测量。因此,为了安装tcpping, Sie müssen diese Voraussetzungen zuerst installieren.

Abhängigkeiten installieren tcptraceroute

So installieren Sie es unter Ubuntu oder Debiantcptraceroute:

$ sudo apt-get install tcptraceroute
Nach dem Login kopieren

Um tcptraceroute auf CentOS oder RHEL zu installieren, richten Sie zuerst RepoForge auf Ihrem System ein und führen Sie dann Folgendes aus:

$ sudo yum install tcptraceroute 
Nach dem Login kopieren

安装依赖 bc

使用的另一个工具tcpping是GNUbc,它预装在所有主要的 Linux 发行版上。但是,如果你tcpping在最小 Linux 运行时环境(例如Docker容器、AWS 最小映像 AMI)中运行,则bc可能不会预先安装。在这种情况下,你需要bc自己安装。

在Debian 的 Linux 上安装:

$ sudo apt-get install bc  
Nach dem Login kopieren

在 Red Hat 的 Linux 上安装:

$ sudo yum install bc
Nach dem Login kopieren

安装 tcpping

安装这些必备工具后,最后继续tcpping从官方源下载。

$ wget http://www.vdberg.org/~richard/tcpping   
$ cp tcpping /usr/bin   
$ chmod 755 tcpping
Nach dem Login kopieren

使用tcpping来衡量延迟

要使用 测量网络延迟tcpping,你可以使用以下格式。

tcpping [-d] [-c] [-r sec] [-x count] ipaddress [端口]  
Nach dem Login kopieren
  • -d: 在每个结果之前打印时间戳。
  • -c: 使用分列输出以便于解析。
  • -r:连续探测之间的间隔(以秒为单位)(默认为 1 秒)。
  • -x: 重复 n 次(默认无限制)。
  • [port]: 目标端口(默认为 80)。

请注意,你需要 root 权限才能运行,tcpping因为它需要调用特权tcptraceroute命令。

对于任何开放 80 端口的目标 Web 服务器,你可以使用以下方法测量其 RTT 延迟tcpping

tcpping www.rumenz.com  
seq 0: tcp response from 42.194.162.109 (42.194.162.109)   33.822 ms  
traceroute to rumenz.com (42.194.162.109), 255 hops max, 60 byte packets  
seq 1: tcp response from 42.194.162.109 (42.194.162.109)   33.975 ms  
traceroute to rumenz.com (42.194.162.109), 255 hops max, 60 byte packets  
seq 2: tcp response from 42.194.162.109 (42.194.162.109)   32.010 ms  
traceroute to rumenz.com (42.194.162.109), 255 hops max, 60 byte packets  
seq 3: tcp response from 42.194.162.109 (42.194.162.109)   32.209 ms  
traceroute to rumenz.com (42.194.162.109), 255 hops max, 60 byte packets  
seq 4: tcp response from 42.194.162.109 (42.194.162.109)   30.866 ms  
traceroute to rumenz.com (42.194.162.109), 255 hops max, 60 byte packets  
seq 5: tcp response from 42.194.162.109 (42.194.162.109)   34.866 ms  
traceroute to rumenz.com (42.194.162.109), 255 hops max, 60 byte packets  
seq 6: tcp response from 42.194.162.109 (42.194.162.109)   32.604 ms  
traceroute to rumenz.com (42.194.162.109), 255 hops max, 60 byte packets  
seq 7: tcp response from 42.194.162.109 (42.194.162.109)   30.495 ms  
Nach dem Login kopieren

对于任意远程主机,在运行tcpping. 要检查远程 TCP 端口是否打开,你可以使用nc如下命令。

$ nc -vn   
Nach dem Login kopieren

-t: 连续 TCPing ,直到使用 Ctrl+C 键停止

tcping -t 1.1.1.1 80 
Nach dem Login kopieren

-n 5: TCPing 5次后停止

tcping -i 5 1.1.1.1 80
Nach dem Login kopieren

-w 0.5: 设置超时时间为 0.5秒(1秒=1000毫秒),单位 秒

tcping -w 0.5 1.1.1.1 80  
Nach dem Login kopieren

-d:在每行返回信息中加入时间信息

tcping -d 1.1.1.1 80
Nach dem Login kopieren

-s: 当 TCPing 测试成功后(在超时时间以内返回 TCPing 延迟数据)自动停止 TCPing

tcping -s 1.1.1.1 80
Nach dem Login kopieren

-4: 优先 IPv4(如果一个域名有 IPv4 和 IPv6 解析,那么走 IPv4)

tcping -s 1.1.1.1 80 
Nach dem Login kopieren

-6:优先 IPv6(如果一个域名有 IPv4 和 IPv6 解析,那么走 IPv6)

tcping -6 www.rumenz.com 80
Nach dem Login kopieren

--file: TCPing 将逐行循环遍历文件内的 服务器IP/域名 信息(一行一个,支持端口,例如:1.1.1.1 443)

tcping --file rumenz.txt
Nach dem Login kopieren

Das obige ist der detaillierte Inhalt vonTCP-Testtool unter Linux. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:lxlinux.net
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage