Fork me on GitHub

  今天遇到了一个有线网络问题,定位的流程花了不少时间,本来是搞网络芯片那么多年,应该对网络这块的

问题定位了如指掌才对,可是,遇到问题才发现,很多问题的解决不仅仅是靠知识的,更重要的是靠基于你知识

得思维方式。

  具体问题是这样的,一个嵌入式单板上有两个网络,系统刚装好,不知道网口是否可以,这种情况下,该怎么办

呢?

  ping工具是基本的手段,通过这个工具,可以判断出网络的硬件是否正常,两端是否能联得通。当ping不通的时候

首先要看以下几个方面:

  ip地址配置是否正确,这个其实很简单,就是只要把网络的两端配置三个地方即可:

  client侧:ifconfig eth0 192.168.1.222

  server侧:ifconfig eth0 192.168.1.111

  client侧 + server侧:通过配置,确保网关和子网掩码两个系统一样,不一样的话,通过命令:

    netmask 255.255.255.0
    route add default gw 192.168.1.1

  配置一样。

  这里面要注意一个非常重要的东西,针对pc机,在ping包不通的情况下,一定要记得关闭防火墙(sudo ufw disable)试试。

  一般人以为ping包通了,就可以万事大吉了,这就大错特错了,一定要通过iperf来验证udp和tcp包是否通的,这两个不通,

你依旧无法上网。

  UDP的具体测试方式:

服务器端:

iperf -u -s

客户端:

iperf -u -c 192.168.1.111 -b 100M -t 60

在udp模式下,以100Mbps为数据发送速率,客户端到服务器192.168.1.1上传带宽测试,测试时间为60秒。

iperf -u -c 192.168.1.1111 -b 5M -P 30 -t 60

客户端同时向服务器端发起30个连接线程,以5Mbps为数据发送速率。

iperf -u -c 192.168.1.1111 -b 100M -d -t 60

以100M为数据发送速率,进行上下行带宽测试。

  tcp的具体测试方式:

服务器端:

iperf -s

客户端:

iperf -c 192.168.1.111 -t 60

在tcp模式下,客户端到服务器192.168.1.1上传带宽测试,测试时间为60秒。

iperf -c 192.168.1.111  -P 30 -t 60

客户端同时向服务器端发起30个连接线程。

iperf -c 192.168.1.111 -d -t 60

进行上下行带宽测试。

  如果都ok了,才说明你的网络是ok的。

posted on 2018-01-26 11:17  虚生  阅读(245)  评论(0编辑  收藏  举报