玩转「Wi-Fi」系列之常用命令(四)

涉及到网络相关的命令很多,一些常用命令如下:

Ping

Ping是Linux系统常用的网络命令,它通常用来测试与目标主机的连通性,我们经常会说“ping一下某机器,看是不是开着。它是通过发送ICMP ECHO_REQUEST数据包到网络主机,并显示响应情况,这样我们就可以根据它输出的信息来确定目标主机是否可访问(但这不是绝对的)。

有些服务器为了防止通过ping探测到,通过防火墙设置了禁止ping或者在内核参数中禁止ping,这样就不能通过ping确定该主机是否还处于开启状态。

ping 通的情况下:

  • **icmp_seq:**ping序列,从1开始;
  • ttl:剩余的生存时间,意思是ping的数据包能在网络上存在多少时间。
  • time: 响应时间,数值越小,连通速度越快;
  • 虚线下第一行 : 发出去的包数,返回的包数/丢包率/耗费时间;
  • 虚线下第二行 : 最小/最大/平均响应时间和本机硬件耗费时间;

ifconfig

ifconfig命令被用于配置和显示Linux内核中网络接口的网络参数。用ifconfig命令配置的网卡信息,在网卡重启后机器重启后,配置就不存在。要想将上述的配置信息永远的存的电脑里,那就要修改网卡的配置文件了。

显示网络设备信息(激活状态的):

  • virbr0 : 表示第一块虚拟网卡,其中HWaddr表示网卡的物理地址,可以看到这个网卡的物理地址是 52:54:00:ee:d9:43。
  • inet addr : 表示网卡的IP地址,网卡的IP地址是192.168.122.1,广播地址:192.168.122.255, 掩码地址:255.255.255.0
  • lo : 表示主机的回环地址,一般是用来测试一个网络程序,但又不想让局域网或外网的用户能够查看,只能在此台主机上运行和查看所用的网络接口
  • 第一行 : 连接类型:Ethernet 以太网, HWaddr 硬件mac地址。
  • 第二行 : 网卡的IP地址、子网、掩码。
  • 第三行 : UP 代表网卡开启状态,RUNNING 代表网卡的网线被接上,MULTICAST 支持组播,MTU:1500 最大传输单元。
  • 第四、五行:接收、发送数据包情况统计。
  • 第七行:接收、发送数据字节数统计信息。

iwconfig

iwconfig是Linux Wireless Extensions(LWE)的用户层配置工具之一。LWE是Linux下对无线网络配置的工具,包括内核的支持、用户层配置工具和驱动接口的支持三部分。目前很多无线网卡都支持LWE,而且主流的Linux发布版本,比如Redhat Linux、Ubuntu Linux都已经自带这个配置工具。

  • ESSID:设置无线网卡的Extension Service Set ID。
  • Mode:设置无线网卡的工作模式,可以是Master Managed Monitor Auto等模式
  • Frequency:设置无线网卡的工作频率或者频道,频率单位为Hz,可以在数字后面附带k, M, G来改变数量级,比如 2.4G。
  • Access Point :连接到指定的AP或者无线网络,后面的参数可以是AP的MAC地址,也可以是iwlist scan出来的标识符。
  • Bit:如果无线网卡支持多速率,则可以通过该命令设置工作的速率。
  • Tx-power:如果无线网卡支持多发射功率设定,则使用该参数设定发射,单位为dBm
  • Signal level : 信号强度

iperf

iperf是一款基于TCP/IP和UDP/IP的网络性能测试工具,它可以用来测量网络带宽和网络质量,还可以提供网络延迟抖动、数据包丢失率、最大传输单元等统计信息。网络管理员可以根据这些信息了解并判断网络性能问题,从而定位网络瓶颈,解决网络故障。

要使用iperf,首先要启用一个服务端,这里假定服务端的IP地址为192.168.12.168,在此服务器上运行“iperf3 -s”即可开启iperf的服务器模式。在默认情况下,iperf3将在服务端打开一个5201监听端口,此时就可以将另一台服务器作为客户端执行iperf功能测试了。

方法1 : 测试TCP吞吐量

为了确定网卡的最大吞吐量,可以在任意客户端运行iperf命令,它将尝试从客户端尽可能快地向服务端发送数据请求,并且会输出发送的数据量和网卡平均带宽值。下图是一个最简单的带宽测试命令。

可以看出,iperf默认的运行时间是10s,每隔一秒输出一次传输状态,同时可以看到每秒钟传输的数据量在112MB左右,刚好与“Bandwidth”列的值对应起来,网卡的带宽速率维持在941Mbits/sec左右,而测试的服务器是千兆网卡,这个测试值也基本合理。

在输出的最后,iperf还给出了总的数据发送、接收量,并给出了带宽速率平均值,通过这些值,基本可以判断网络带宽是否正常,网络传输状态是否稳定。

方法2: 测试UDP丢包和延迟

iperf也可以用于UDP数据包吞吐量、丢包率和延迟指标,但是由于UDP协议是一个非面向连接的轻量级传输协议,并且不提供可靠的数据传输服务,因此对UDP应用的关注点不是传输数据有多快,而是它的丢包率和延时指标。

通过iperf的“-u”参数即可测试UDP应用的传输性能,下图测试的是在客户端传输100MB的UDP数据包的输出结果.

重点关注虚线下的一段内容,在这段输出中,“Jitter”列表示抖动时间,或者称为传输延迟,“Lost/Total”列表示丢失的数据报和总的数据报数量,后面的0.33%是平均丢包的比率,“Datagrams”列显示的是总共传输数据报的数量

iw

iw 是一种新的基于 nl80211 的用于无线设备的CLI配置实用程序。它支持最近已添加到内核所有新的驱动程序。采用无线扩展接口的旧工具iwconfig已被废弃,强烈建议切换到 iw 和 nl80211。

常用操作:

  • iw list 获得所有设备的功能
  • iw dev wlan0 scan 扫描
  • iw event 监听事件
  • iw dev wlan0 link 获取链路状态
  • iw dev wlan1 station dump 获取station 的统计信息
  • iw dev wlan1 station get 获得station对应的peer统计信息

参考





本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

扫码关注云+社区

领取腾讯云代金券