网络排错常用指令

ip命令:

linux的ip命令和ifconfig类似,ifconfig是net-tools中已被废弃使用的一个命令,许多年前就已经没有维护了。linux系统提供的iproute2工具用于替代一些常用的net-tools命令。
用来显示或操纵linux主主机的路由、网络设备、策略路由和隧道

ip link

ip -s addr show eth1:

 ifconfig:

 参数说明:

mtu:最大的传输单元
inet:ipv4地址
netmask:子网的掩码
broadcast:广播地址
ether:mac地址
RX,TX行表示的是:接收和发送的数据包的个数(或者)字节数。
    packets:包数
    bytes:字节数
    errors:表示发生错误的数据包数,比如校验错误、帧同步错误等
    dropped:表示丢弃的数据包数,即数据包已经收到了 Ring Buffer,但因为内存不足等原因丢包
    overruns:表示超限数据包数,即网络 I/O 速度过快,导致 Ring Buffer 中的数据包来不及处理(队列            
    满)而导致的丢包
    carrier:表示发生 carrirer 错误的数据包数,比如双工模式不匹配、物理电缆出现问题等
    collisions:表示碰撞数据包数

 

 netstat

Netstat 的10个基本用法_Linux教程_Linux公社-Linux系统门户网站

Netstat 的10个基本用法_DViewer的专栏-CSDN博客_netstat

查看端口状态,可用于列出系统上所有的网络套接字连接情况,包括 tcp, udp 以及 unix 套接字,另外它还能列出处于监听状态(即等待接入请求)的套接字。如果你想确认系统上的 Web 服务有没有起来,你可以查看80端口有没有打开。

BusyBox v1.25.1 () multi-call binary.

Usage: netstat [-ral] [-tuwx] [-enWp]

Display networking information

        -r      Routing table
        -a      All sockets
        -l      Listening sockets
                Else: connected sockets
        -t      TCP sockets
        -u      UDP sockets
        -w      Raw sockets
        -x      Unix sockets
                Else: all socket types
        -e      Other/more information
        -n      Don't resolve names
        -W      Wide display
        -p      Show PID/program name for sockets

参数说明

Proto:各种相关的协议信息。
Recv-Q:接收队列
Send-Q:发送队列
Local Address:本地地址
Foreign Address:远端地址
State:套接字状态
PID/Program name:pid号和进程名字
说明:接收队列和发送队列在不同的套接字状态下,有不同的含义:

当套接字处于连接状态(Established)时,

Recv-Q 表示套接字缓冲还没有被应用程序取走的字节数(即接收队列长度)。
而 Send-Q 表示还没有被远端主机确认的字节数(即发送队列长度)。
当套接字处于监听状态(Listening)时,

Recv-Q 表示全连接队列的长度。
而 Send-Q 表示全连接队列的最大长度。
所谓全连接,是指服务器收到了客户端的 ACK,完成了 TCP 三次握手,
然后就会把这个连接挪到全连接队列中。
这些全连接中的套接字,还需要被 accept() 系统调用取走,
服务器才可以开始真正处理客户端的请求。
与全连接队列相对应的,还有一个半连接队列。
所谓半连接是指还没有完成 TCP 三次握手的连接,连接只进行了一半。
服务器收到了客户端的 SYN 包后,就会把这个连接放到半连接队列中,
然后再向客户端发送 SYN+ACK 包

netstat -a 

列出 tcp, udp 和 unix 协议下所有套接字的所有连接。然而这些信息还不够详细,管理员往往需要查看某个协议或端口的具体连接情况。

netstat -at :

列出tcp协议连接

 

netstat -ant

默认情况下 netstat 会通过反向域名解析技术查找每个 IP 地址对应的主机名。这会降低查找速度。如果你觉得 IP 地址已经足够,而没有必要知道主机名,就使用 -n 选项禁用域名解析功能

  netstat -antp

查看端口和连接的信息时,能查看到它们对应的进程名和进程号对系统管理员来说是非常有帮助的。举个栗子,Apache 的 httpd 服务开启80端口,如果你要查看 http 服务是否已经启动,或者 http 服务是由 apache 还是 nginx 启动的,这时候你可以看看进程名。

使用 -p 选项查看进程信息

使用 -p 选项时,netstat 必须运行在 root 权限之下,不然它就不能得到运行在 root 权限下的进程名,而很多服务包括 http 和 ftp 都运行在 root 权限之下

 netstat -antep

相比进程名和进程号而言,查看进程的拥有者会更有用。使用 -ep 选项可以同时查看进程名和用户名

假如你将 -n 和 -e 选项一起使用,User 列的属性就是用户的 ID 号,而不是用户名

 ss命令

可以用来获取socket统计信息,和netstat显示的内容类似

sar命令

sar 是目前linux上最为全面的系统性能分析工具之一,可以从多方面对系统的活动进行报告,对文件的读写情况、系统调用的使用状况、磁盘I/O、CPU的效率、内存的使用情况、进程活动及IPC有关的活动,同样也使用于网络中等。参考sar

参考资料:

常用网络性能指标和工具

参考ip

参考ifconfig

参考netstat

参考ss

参考sar

ethtool 用于查询及设置网卡参数的命令参考ethtool

参考ping

参考tcpdump

参考wireshark使用教程wireshark

  • 1
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

潘多拉的面

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值