网络连通性测试(ping/tcp)(qnx和android能ping通但是tcp有问题)(iperf带宽测试)

这篇具有很好参考价值的文章主要介绍了网络连通性测试(ping/tcp)(qnx和android能ping通但是tcp有问题)(iperf带宽测试)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

问题引申:

qnx和android之间通过socket做一些远程调用,一开始android只有一个网络接口eth0,两者通信没有问题。 后来android系统需要做多vlan,eth0依然是0网段的ip,又在eth0基础上虚拟了多个vlan接口,两个系统起来后能正常ping通,走0网段,但是应用侧反应change合入后,双方的socket通信能连接上但是无法正常通信。

最终分析结果:

根据netstat -n命令,发现tcp的连接状态,发现建立连接的两个网段都不一样,这样铁定不能通信的。

经过分析,因为我们qnx系统除了网段0,也创建了个vlan3的3网段;android也有网段0,vlan3的网段3网段,还有其他多个vlan,这样的话,android和qnx系统会有两个网段能通。

默认情况下应该是通过0网段通信,经分析,应该是android作为tcp server,监听any接口, qnx这边网段3先建立,所以qnx的数据走的是3网段,发出了3网段的请求连接,后面再次创建规则0网段优先,所以3网段的。

等会儿再继续想一想

# netstat -n
Active Internet connections
Proto Recv-Q Send-Q Local Address Foreign Address State
tcp 0 0 172.20.0.34.30501 172.20.3.36.30491 ESTABLISHED
tcp 0 0 172.20.0.34.30501 *.* LISTEN
tcp 0 0 *.20900 *.* LISTEN
tcp 0 0 *.3490 *.* LISTEN
tcp 0 0 *.2049 *.* LISTEN
tcp 0 0 *.111 *.* LISTEN
tcp 0 0 *.5555 *.* LISTEN
tcp 0 0 *.* *.* CLOSED
tcp 0 0 *.22 *.* LISTEN
tcp 0 0 *.8000 *.* LISTEN
tcp 0 0 *.23 *.* LISTEN
tcp 0 0 *.514 *.* LISTEN
tcp 0 0 *.21 *.* LISTEN
udp 0 0 *.* *.*
udp 0 0 239.255.3.1.30490 *.*
udp 0 0 172.20.3.34.30490 *.*
udp 0 0 *.3490 *.*
udp 0 0 *.2049 *.*
udp 0 0 *.1023 *.*
udp 0 0 *.111 *.*
udp 0 0 *.514 *.*
Active Internet6 connections
Proto Recv-Q Send-Q Local Address Foreign Address (state)
tcp6 0 0 *.111 *.* LISTEN
udp6 0 0 *.* *.*
udp6 0 0 *.1023 *.*
udp6 0 0 *.111 *.*
Active UNIX domain sockets

网络连通性首先要看ping是否能够通

具体场景一: 车机双系统qnx和android的连通性测试

qnx系统里有工具iperf、telenet,android系统里有

iperf3、telnet、nc命令(有些命令需要busybox)

测试TCP连通性:

qnx侧作为iperf server,命令:
# iperf2 -s
Server listening on TCP port 5001
TCP window size: 977 KByte (default)

android使用nc连接,命令:
busybox nc -vv 172.20.0.34 5001
172.20.0.34 (172.20.0.34:5001) open

此时server端会打印,
[ 4] local 172.20.0.34 port 5001 connected with 172.20.0.36 port 35161
地方

项目遇到同事说,tcp连接能连通,但是无法传输数据,虽然很费解,但是还是得测一下

qnx只有telent和iperf2能够进行tcp连接

所以在qnx作为iperf2 server,android作为nc/telent client连接server时,在android侧用tcpdum工具抓包,android侧可以输入一些数据,也可以发送server端

130|hqcos:/ # nc -v 172.20.0.34 5001
nc: Unknown option 'v' (see "nc --help")
1|hqcos:/ # busybox nc -v 172.20.0.34 5001
172.20.0.34 (172.20.0.34:5001) open
11
22
33
44
55
99999999

android侧抓一下tcpdump数据:

hqcos:/ # tcpdump -i eth0 -nn -v host 172.20.0.34 -w /data/88.pcap

使用wireshark打开:

截部分图, 发现数据里面带着我们输入的33、44、9999999发送到了server端,说明tcp数据发送也正常

网络连通性测试,网络,网络,tcp/ip,服务器
网络连通性测试,网络,网络,tcp/ip,服务器
网络连通性测试,网络,网络,tcp/ip,服务器

测试UDP连通性:


qnx侧作为udp server
# iperf2 -u  -s
Server listening on UDP port 5001
Receiving 1470 byte datagrams
UDP buffer size:  163 KByte (default)

android使用nc连接,命令:
130|hqcos:/ # busybox nc -v -u  172.20.0.34 5001                                                                                                                                                          172.20.0.34 (172.20.0.34:5001) open

测试TCP连通性的其他方式:

方式一、iperf3/iperf2可以测试tcp的连接

一方作为server,一方作为client来连接,但是iperf3和iperf2不兼容
server:iperf3/iperf2 -s 172.20.0.36
client: iperf3/iperf2 -c 172.20.0.36 -p 端口

https://www.cnblogs.com/linxiu-0925/p/11531446.html

方式二:iperf和telnet

如果一方有iperf3或者iperf2(测试TCP、UDP都可以),另一方有telnet(telnet基于TCP协议)命令

可以一方设置为iperf 的server,比如

iperf3/iperf2 -s 172.20.0.36

另一方(android)用telnet

127|hqcos:/ # busybox telnet 172.20.0.34 5001
Connected to 172.20.0.34

另一方为(qnx)用telnet

# telnet 172.20.0.36 5201
Trying 172.20.0.36...
Connected to 172.20.0.36.
Escape character is '^]'.

有Connected to IP,说明已经TCP连通

方式三、iperf和ssh

一方通过iperf设置为server

另一方通过ssh(TCP协议)来测试连通性

命令:ssh -v ip -p 端口号
在回显中有connection establised表示端口是通的。
网络连通性测试,网络,网络,tcp/ip,服务器

方式四:nc工具(既可以测试TCP,可以测试UDP)

nc可以用来聊天,传文件,测试网络连通性

我这儿是两边有一个设备没有nc,所以nc作为client,另一侧server用iperf模拟

1|hqcos:/ # busybox nc -v -w 1 172.20.0.34 -z 5001 172.20.0.34 (172.20.0.34:5001) open
#nc -v 110.242.68.66 80
Connection to 110.242.68.66 80 port [tcp/http] succeeded!

nc之二:nc命令详解 – 个人运维笔记文章来源地址https://www.toymoban.com/news/detail-688201.html

聊天
nc还可以作为简单的字符下聊天工具使用,同样的,server2上需要启动监听:
[root@hatest2 tmp]# nc -lp 1234
server1上传输:
[root@hatest1 ~]# nc 192.168.228.222 1234
这样,双方就可以相互交流了。使用Ctrl+D正常退出。
利用nc传文件:
注意这里要记住的是接收文件的是服务器端,发送文件的是客户端:
服务器端命令:
nc -l ip地址 端口号 > 接收的文件名
客户端命令:
nc ip地址 端口号 < 发送的文件名

到了这里,关于网络连通性测试(ping/tcp)(qnx和android能ping通但是tcp有问题)(iperf带宽测试)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • IPV6地址配置,ping6以及iperf3简单测试

    1. 确认目标网卡正常识别,端口正常link 本文中采用的是Intel 82599的网卡,系统下使用lspci命令看到如下结果: 2. 配置临时的IPV6地址(以enp7s0网口为例) 3. 为网卡ethX添加IPV6网关

    2024年02月08日
    浏览(50)
  • 【计算机网络】11、网络连通性:ping、traceroute、nslookup

    注意,测试网络连通性时,有的机器无法 ping 通,但可能 telnet 能通。不要因为无法 ping 通就放弃尝试。 禁 ping 是通过忽略 ICPM 包实现的 方法1:设置内核参数 方法2:设置 iptables 参考 cisco 官网:ping 与 traceroute 实战区别 显示数据包到主机间的路径,它默认发送的数据包大小

    2024年02月14日
    浏览(39)
  • 在Linux系统中,可以使用ping和telnet命令来测试IP地址和端口是否连通

    在Linux系统中,可以使用ping和telnet命令来测试IP地址和端口是否连通。 使用ping命令测试IP是否连通: 例如: 如果ping通了,会出现类似如下的输出: 如果无法ping通,则会出现类似如下的输出: 使用telnet命令测试端口是否开放: 例如: 如果端口开放,则会出现连接成功的信

    2024年02月11日
    浏览(39)
  • iperf3测试服务器tcp带宽udp丢包率

    要使用 iperf 测试网络的性能,您需要两台计算机,一台作为服务器,一台作为客户端,这将帮助您测试两台主机之间的网段。特别注意的是两台计算机的网口一定是同样的网口,测试的数据才是准确的,我之前测试的时候服务器端网口是万兆的,客户端用的是千兆的,所以测

    2024年02月12日
    浏览(44)
  • Linux系统网络正常可以ping通但是ssh连接不上

    1、多人共用Linux虚拟机忽然断开连接后忽然ssh连接不上,但是能够ping通,虚拟机网络也正常,能够ping通百度。     2、检查防火墙和ssh服务 :防火墙是关闭状态,ssh服务有报错。 3、使用sshd -t查看详细报错原因。发现是/etc/ssh/文件夹下的文件权限过大导致。进入该文件夹下

    2024年02月11日
    浏览(40)
  • nc测试tcp/udp连通性

    nc是netcat工具的命令,是一个很好用的网络工具。比如,可以用来端口扫描,文件传输等网络功能。实际命令是ncat。 参数说明 : -g网关 设置路由器跃程通信网关,最多可设置8个。 -G指向器数目 设置来源路由指向器,其数值为4的倍数。 -h 在线帮助。 -i延迟秒数 设置时间间

    2024年02月17日
    浏览(35)
  • Linuxc centos下的网络性能测试命令iperf、iperf2、iperf3(常用于网络测速)

    目                录 一、网络性能测试命令介绍 (一)Iperf (二)iperf2 (三)iperf3 (四)几个命令的比较 二、使用场景 三、iperf命令详解 (一)安装 (二)命令 (三)启动和停止 1、启动服务端 2、启动客户端 3、停止命令 (四)应用 1、测试网络连接的带宽和吞吐量

    2024年01月21日
    浏览(43)
  • 虚拟机Linux:ping不通外网,但是宿主机可以ping的通;ip、网关配置都没什么问题

    查看vi  /etc/sysconfig/network-scripts/ifcfg-ens33的配置也没有什么问题,但是还是ping不通外网   所以我将拷贝自己没有问题的虚拟机 /etc/sysconfig/network-scripts/ifcfg-ens33的配置文件内容,对比一下没什么要改的,将UUID、IPADDR、NETMASK、GETWASK修改一些保存退出。  之后找问题:IPADDR、N

    2023年04月14日
    浏览(48)
  • Iperf网络测试工具

    Iperf是一款基于TCP/IP和UDP/IP的网络性能测试工具,可以用来测量网络带宽和网络质量,提供网络延迟抖动、数据包丢失率、最大传输单元等统计信息。 安装 iperf源码仓库 measurement tool (github.com) iperf官网 iPerf - The TCP, UDP and SCTP network bandwidth measurement tool 帮助手册 简单测试 serv

    2024年02月06日
    浏览(51)
  • 虚拟机中ping www.baidu.com提示【未知的名称或服务】,但是ping 百度的IP 可以ping通的问题解决方案

    1.遇到的问题描述:          在虚拟机中ping www.baidu.com,提示【未知的名称或者服务】           在本机中ping www.baidu.com,可以ping通           在虚拟机中尝试ping 百度的IP发现也可以ping通 这种情况,是由于虚拟机的DNS没有配置好造成的 2.解决方案一:         2.1 现

    2024年04月14日
    浏览(52)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包